} if (!empty($_GET['remove_setting'])) { UserSetting::delete($user->id, $_GET['remove_setting']); echo '<div class="good">Setting removed!</div>'; } // save changes in edited settings if (!empty($_POST)) { $settings = UserSetting::getAll($user->id); foreach ($settings as $set) { if (!empty($_POST['setting_name_' . $set['id']])) { UserSetting::set($user->id, $_POST['setting_name_' . $set['id']], $_POST['setting_val_' . $set['id']]); } } } if (!empty($_POST['grp_id'])) { UserGroupHandler::addToGroup($user->id, $_POST['grp_id']); } if (!empty($_GET['rm_grp'])) { UserGroupHandler::removeFromGroup($user->id, $_GET['rm_grp']); } echo '<h2>Group membership</h2>'; echo 'This user is member of the following groups:<br/>'; foreach (UserGroupHandler::getGroups($user->id) as $g) { echo '<a href="' . relurl_add(array('rm_grp' => $g->getId())) . '">' . coreButton('Delete') . '</a> '; echo ahref('a/usergroup/' . $g->getId(), $g->getName()) . '<br/>'; } echo '<br/>'; echo xhtmlForm('grp'); $x = new XhtmlComponentDropdown(); $x->name = 'grp_id'; $x->setOptions(UserGroup::getIndexedList());
if ($user_id) { if ($superadmin_reg) { if (!UserGroup::getAll()) { // If no UserGroup:s exist, create them UserGroup::create('Webmasters', 1); UserGroup::create('Admins', 2); $sadmin_id = UserGroup::create('Super Admins', 3); } else { $grp = UserGroup::getByName('Super Admins'); $sadmin_id = $grp['groupId']; } if (!$sadmin_id) { throw new \Exception('super admin group not found'); } // Add this user to Super Admin group UserGroupHandler::addToGroup($user_id, $sadmin_id); } if ($session->login($_POST['register_usr'], $_POST['register_pwd'])) { $session->showStartPage(); } } // after form submit failed, put focus back to the register form <div> to show error $header->embedJsOnload('show_reg_form();'); } $header->embedCss('.register_box{' . 'font-size:14px;' . 'border:1px solid #aaa;' . 'min-width:280px;' . 'color:#000;' . 'background-color:#ddd;' . 'padding:10px;' . 'border-radius:15px 15px 15px 15px;' . '-moz-border-radius:15px 15px 15px 15px;' . '}'); echo '<div id="login_register_layer" class="register_box">'; echo '<b>Register new account</b><br/><br/>'; if ($superadmin_reg) { echo '<div class="critical">The account you create now will be the super administrator account.</div><br/>'; } echo xhtmlForm('reg_frm', '', '', '', 'return validate_reg_form(this);');
// process updates if (!empty($_POST)) { if (!empty($_POST['u_name']) && !empty($_POST['u_pwd'])) { $username = trim($_POST['u_name']); $pwd = trim($_POST['u_pwd']); $user_id = UserHandler::create($username, $pwd); if (!$user_id) { $error->add('Failed to create user'); } if ($error->getErrorCount()) { echo $error->render(true); return; } UserSetting::setEmail($user_id, $_POST['u_email']); if (!empty($_POST['u_grp'])) { UserGroupHandler::addToGroup($user_id, $_POST['u_grp']); } echo '<div class="good">New user created. ' . ahref('a/user/' . $user_id, $username) . '</div>'; } } echo xhtmlForm('add_user'); echo '<h1>Create new user</h1>'; echo 'Username: '******'u_name') . '<br/>'; echo 'Password: '******'u_pwd') . '<br/>'; echo 'E-mail: ' . xhtmlInput('u_email') . '<br/>'; echo '<br/>'; echo 'User group: '; $x = new XhtmlComponentDropdown(); $x->name = 'u_grp'; $x->setOptions(UserGroup::getIndexedList()); echo $x->render();