Example #1
0
 function showEditUserRes()
 {
     /* update last page */
     $_SESSION['LASTPAGE'] = 'sysadmin.users.edituser';
     $displayUsers = new DisplayUsers();
     $urid = getFromSessionParams('urid');
     $content = "";
     if ($urid != '') {
         //edit
         $content = $displayUsers->displaySuccess(Language::messageUserChanged(loadvar('name')));
         $_SESSION['LASTURID'] = $urid;
     } else {
         //add user!
         if (loadvar('username') != "" && loadvar('name') != '') {
             //ADD NEW!!!
             $user = new User('', true);
             $urid = $user->getUrid();
             $_SESSION['LASTURID'] = $urid;
             $content = $displayUsers->displaySuccess(Language::messageUserAdded(loadvar('name')));
         }
     }
     //ADD ALL SORTS OF CHECKS!!
     if ($urid != '' && loadvar('name') != "" && loadvar('username') != '') {
         $user = new User($urid);
         $user->setName(loadvar('name'));
         $user->setUsername(loadvar('username'));
         if (loadvar('pwd1') != '') {
             if (loadvar('pwd1') == loadvar('pwd2')) {
                 $user->setPassword(loadvar('pwd1'));
             } else {
                 $content = $displayUsers->displayWarning(Language::messageUserNoMatch());
             }
         }
         $user->setSupervisor(loadvar('uridsel'));
         $user->setStatus(loadvar('status'));
         $user->setUserType(loadvar('usertype'));
         $user->setUserSubType(loadvar('usersubtype'));
         $current = $user->getSurveysAccess();
         $allowedsurveys = loadvar(SETTING_USER_SURVEYS);
         // add access to all modes and languages if not specified in current access
         foreach ($allowedsurveys as $a) {
             if (!inArray($a, $current)) {
                 $surv = new Survey($a);
                 $mods = explode("~", $surv->getAllowedModes());
                 foreach ($mods as $m) {
                     $user->setLanguages($a, $m, $surv->getAllowedLanguages($m));
                 }
             }
         }
         foreach ($current as $c) {
             if (!inArray($c, $allowedsurveys)) {
                 $user->removeSurvey($c);
             }
         }
         $user->saveChanges();
         // current survey not in allowed, then update to first survey for user
         if (!inArray($_SESSION['SUID'], $allowedsurveys)) {
             $surveys = new Surveys();
             $_SESSION['SUID'] = $surveys->getFirstSurvey();
         }
     } else {
         $content = $displayUsers->displayWarning(Language::messageUserCorrectErrors());
     }
     return $displayUsers->showEditUser($_SESSION['LASTURID'], $content);
 }
        exit(0);
    }
    $this_user->setUsername($parms->getParm('username'));
    $this_user->setFullname($parms->getParm('fullname'));
    // check password matches
    if ($parms->getParm('newpassword') != $parms->getParm('repeatpassword')) {
        // in future should instead recreate form with rest of details readded
        header("Location: adduser.php?message=passwordmatch");
        exit(0);
    }
    $this_user->setPassword(md5($parms->getParm('newpassword')));
    $this_user->setAccess($parms->getParm('access'));
    $this_user->setEnabled($parms->getParm('status'));
    // expiry is a value in secs - no need to convert
    $this_user->setLoginexpiry($parms->getParm('loginexpiry'));
    $this_user->setSupervisor($parms->getParm('supervisor'));
    $this_user->setAdmin($parms->getParm('admin'));
    // save entry
    $kdb->insertUser($this_user);
    include "inc/dashboardheaders.php";
    print <<<EOT
{$header}
{$login_banner}
{$main_banner}
{$menu_banner}
{$main_menu}

<h1>New user added</h1>
<p>Click below to see all users.</p>
<p><a href="listusers.php">Dashboard - List Users</a></p>.
{$footer}