| 
<?phpinclude "inc/init.php";
 
 if(!$user->islg()){
 header("Location: ".$set->url);
 exit;
 }
 
 
 if(isset($_GET['id']) && $user->group->canedit && $user->exists($_GET['id'])) {
 $uid = (int)$_GET['id'];
 $can_edit = 1;
 }else{
 $uid = $user->data->userid;
 $can_edit = 0;
 }
 $u = $db->getRow("SELECT * FROM `".MLS_PREFIX."users` WHERE `userid` = ?i", $uid);
 
 $presets->setActive("user");
 $page->title = "Edit info of ". $options->html($u->username);
 $page->description = "edit info of user";
 $page->keyword = "";
 
 if($_POST) {
 if(isset($_GET['password']) && ($user->data->userid == $u->userid)) {
 $opass = $_POST['oldpass'];
 $npass = $_POST['newpass'];
 $npass2 = $_POST['newpass2'];
 if($db->getRow("SELECT `userid` FROM `".MLS_PREFIX."users` WHERE `userid` = ?i AND `password` = ?s", $u->userid, sha1($opass))) {
 
 if(!isset($npass[3]) || isset($npass[30]))
 $page->error = "Password too short or too long !";
 else if($npass != $npass2)
 $page->error = "New passwords don't match !";
 else
 if($db->query("UPDATE `".MLS_PREFIX."users` SET `password` = ?s WHERE `userid` = ?i", sha1($npass), $u->userid))
 $page->success = "Password updated successfully !";
 
 } else
 $page->error = 'Invalid password !';
 
 } else {
 
 $email = $_POST['email'];
 $display_name = $_POST['display_name'];
 
 
 $extra = '';
 if($can_edit) {
 $username = $_POST['username'];
 $password = $_POST['password'];
 if(isset($_POST['groupid']))
 $groupid = $_POST['groupid'];
 
 $extra = $db->parse(", `username` = ?s", $username);
 
 if($user->isAdmin())
 $extra .= $db->parse(", `groupid` = ?i", $groupid);
 
 if(!empty($password))
 $extra .= $db->parse(", `password` = ?s", sha1($password));
 
 if(!isset($username[3]) || isset($username[30]))
 $page->error = "<div class='bg-danger' style='padding:15px'>Username too short or too long !</div>";
 
 if(!$options->validUsername($username))
 $page->error = "<div class='bg-danger' style='padding:15px'>Invalid username !</div>";
 
 if($user->isAdmin() && !$db->getRow("SELECT `groupid` FROM `".MLS_PREFIX."groups` WHERE `groupid` = ?i", $groupid))
 $page->error = "<div class='bg-danger' style='padding:15px'>The group is invalid !</div>";
 }
 
 
 if(!$options->isValidMail($email))
 $page->error = "Email address is not valid.";
 
 if(!isset($display_name[3]) || isset($display_name[50]))
 $page->error = "Display name too short or too long !";
 
 if(!isset($page->error) && $db->query("UPDATE `".MLS_PREFIX."users` SET `email` = ?s, `display_name` = ?s ?p WHERE `userid` = ?i", $email, $display_name, $extra, $u->userid)) {
 $page->success = "Info was saved !";
 // we make sure we show updated data
 $u = $db->getRow("SELECT * FROM `".MLS_PREFIX."users` WHERE `userid` = ?i", $u->userid);
 }
 }
 }
 
 include 'admin/header.php';
 include "admin/menu-side.php";
 
 if(isset($page->error))
 $options->error($page->error);
 else if(isset($page->success))
 $options->success($page->success);
 
 
 if(isset($_GET['password']) && ($user->data->userid == $u->userid)) {
 // we use this option only for personal profile
 // because you need to know the old password
 echo "<form class='form-horizontal' action='#' method='post'>
 <fieldset>
 <legend>Change Password</legend>
 
 <div class='form-group'>
 <label class='col-sm-2 control-label'>Old Password</label>
 <div class='col-sm-10'>
 <input type='password' name='oldpass' class='form-control'>
 </div>
 </div>
 <div class='form-group'>
 <label class='col-sm-2 control-label'>New Password</label>
 <div class='col-sm-10'>
 <input type='password' name='newpass' class='form-control'>
 </div>
 </div>
 <div class='form-group'>
 <label class='col-sm-2 control-label'>New Password Again</label>
 <div class='col-sm-10'>
 <input type='password' name='newpass2' class='form-control'>
 </div>
 </div>
 <div class='form-group'>
 <div class='col-sm-offset-2 col-sm-10'>
 <button type='submit' id='submit' class='btn btn-primary'>Save</button>
 <a href='?' class='btn btn-default'>Edit Info</a>
 </div>
 </div>
 
 </fieldset>
 </form>";
 
 } else {
 
 echo "<form class='form-horizontal' action='#' method='post'>
 <fieldset>
 <legend>Edit info of ".$options->html($u->username)."</legend>";
 
 if($can_edit) {
 
 $groups = $db->getAll("SELECT * FROM `".MLS_PREFIX."groups` ORDER BY `type`,`priority`");
 
 
 // get the groups available
 $show_groups = '';
 foreach($groups as $group)
 if($group->groupid != 1)
 if($group->groupid == $u->groupid)
 $show_groups .= "<option value='$group->groupid' selected='1'>".$group->name."</option>";
 else
 $show_groups .= "<option value='$group->groupid'>".$group->name."</option>";
 
 echo "
 <div class='form-group'>
 <label class='col-sm-2 control-label'>Username</label>
 <div class='col-sm-10'>
 <input type='text' name='username' class='form-control' value='".$options->html($u->username)."'>
 </div>
 </div>
 <div class='form-group'>
 <label class='col-sm-2 control-label'>Password</label>
 <div class='col-sm-10'>
 <input type='text' name='password' class='form-control'><br/>
 <small>Leave blank if you don't want to change</small>
 </div>
 </div>
 
 <div class='form-group'>
 <label class='col-sm-2 control-label' for='selectbasic'>Group: </label>
 <div class='col-sm-10'>
 <select id='selectbasic' name='groupid' class='form-control' ".($user->isAdmin() ? "" : "disabled='disabled'").">
 $show_groups
 </select>
 </div>
 </div>
 ";
 
 
 }
 echo "
 
 <div class='form-group'>
 <label class='col-sm-2 control-label'>Display name</label>
 <div class='col-sm-10'>
 <input type='text' name='display_name' class='form-control' value='".$options->html($u->display_name)."'>
 </div>
 </div>
 <div class='form-group'>
 <label class='col-sm-2 control-label'>Email</label>
 <div class='col-sm-10'>
 <input type='text' name='email' class='form-control' value='".$options->html($u->email)."'>
 </div>
 </div>
 <div class='form-group'>
 <div class='col-sm-offset-2 col-sm-10'>
 <button type='submit' id='submit' class='btn btn-primary'>Save</button>";
 if(!$can_edit)
 echo " <a href='?password=1' class='btn btn-default'>Change Password</a>";
 echo"
 </div>
 </div>
 
 
 </fieldset>
 </form>";
 
 }
 include 'admin/admin-footer.php';
 ?>
 |