setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $userManager = new pvv\admin\UserManager($pdo); require_once __DIR__ . '/../../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php'; $as = new SimpleSAML\Auth\Simple('default-sp'); $as->requireAuth(); $attrs = $as->getAttributes(); $uname = $attrs['uid'][0]; if (!$userManager->isAdmin($uname)) { echo 'Her har du ikke lov\'t\'å\'værra!!!'; exit; } if (isset($_POST['newuser'])) { $newUser = $_POST['newuser']; unset($_POST['newuser']); } // $updatingUsers = explode('_', $_POST['users']); $updatingUsers = []; foreach ($_POST as $key => $value) { if ($key === 'user_to_update') { $updatingUsers[] = $value; } } unset($_POST['user_to_update']); // 2d array of usernames and their corresponding group flags $userFlags = []; if ($newUser) { $userFlags[$newUser] = 0; } foreach ($_POST as $namegroup => $info) { $data = explode('_', $namegroup); $group = array_pop($data); $uname = implode('_', $data); if ($uname == 'newuser') { if (!$newUser) { continue; } $uname = $newUser; } if (!isset($userFlags[$uname])) { $userFlags[$uname] = 0; } $userFlags[$uname] = ($userFlags[$uname] | $userManager->usergroups[$group]); } foreach ($updatingUsers as $uname) { if (!array_key_exists($uname, $userFlags)) { $userFlags[$uname] = 0; } } foreach ($userFlags as $uname => $flag) { $userManager->setGroups($uname, $flag); } header('Location: .'); ?> Om du ikke ble automatisk omdirigert tilbake klikk her