Example #1
0
include_once "{$lib}/share/stdio.php";
include_once "{$lib}/share/string.php";
include_once "{$lib}/share/log.php";
pieRequireSuperuser();
pieHead("edit");
if (@$_REQUEST['username'] && @$_REQUEST['password']) {
    // A user has been specified.
    $user = new User();
    if (!$user->isValidName($_REQUEST['username'])) {
        pieError("InvalidUsername");
    }
    if ($user->exists($_REQUEST['username'])) {
        pieError("UserExists");
    }
    if ($_REQUEST['password'] != $_REQUEST['retype']) {
        pieError("PasswordMismatch");
    }
    // Userdata acceptable. Create new user.
    if (!$user->write($_REQUEST['username'], $user->encrypt($_REQUEST['password']))) {
        pieError("FailureForm");
    }
    $pref = new UserPref();
    $pref->write($_REQUEST['username'], "registered", time());
    $GLOBALS['pie']['user'] = $_REQUEST['username'];
    pieLog("user");
    pieNotice("SuccessForm");
} else {
    // Print the form.
    pieNotice('RegisterForm');
}
pieTail();
Example #2
0
    $user = new User();
    // Check all new users for existence.
    if (!($f = fopen($_REQUEST['userfile'], "r"))) {
        pieError("ImportError");
    }
    while ($line = fgets($f, 4096)) {
        list($name) = explode(":", $line);
        if ($user->exists($name)) {
            pieError("UserExists", array('user' => $name));
        }
    }
    // Now import users for real.
    if (!rewind($f)) {
        pieError("ImportError");
    }
    $n = 0;
    while ($line = fgets($f, 4096)) {
        list($name, $pass) = explode(":", $line, 2);
        $pass = trim($pass);
        if (!$user->write($name, $pass)) {
            pieError("ImportError");
        }
        $n++;
    }
    fclose($f);
    pieNotice("ImportComplete", array('count' => $n));
} else {
    // Print the form.
    pieNotice("UserImportForm");
}
pieTail();
Example #3
0
<?php

/*
 *	Create superuser account for user "admin", password "secret".
 */
$GLOBALS['pie']['log'] = 'Superuser Account';
if (!file_exists("{$lib}/class/user.php")) {
    bye("The user class library could not be found.");
}
include_once "{$lib}/class/user.php";
$user = new User();
if (!$user->exists("admin")) {
    if (!$user->write('admin', $user->encrypt('secret'))) {
        bye("The superuser account could not be created.");
    }
}
Example #4
0
include_once "{$lib}/share/log.php";
include_once "{$lib}/share/stdio.php";
pieRequireUser();
pieHead("edit");
if (@$_REQUEST['old'] && @$_REQUEST['new'] && @$_REQUEST['retype']) {
    if ($_REQUEST['new'] != $_REQUEST['retype']) {
        pieError("PasswordMismatch");
    }
    $user = new User();
    $pw = $user->read($GLOBALS['pie']['user']);
    if ($pw != $user->encrypt($_REQUEST['old'])) {
        // The entered password differs from the registered password.
        // Try the crypt() command to handle old style passwords.
        $salt = substr($pw, 0, 2);
        if ($pw != crypt($_REQUEST['old'], $salt)) {
            // The entered password is just wrong.
            pieLog("failure");
            pieError("PasswordFailure");
        }
    }
    // The input is acceptable. Change the password.
    if (!$user->write($GLOBALS['pie']['user'], $user->encrypt($_REQUEST['new']))) {
        pieError("PasswordFailure");
    }
    pieLog("user");
    pieNotice("PasswordSuccess");
} else {
    // Print the form.
    pieNotice("PasswordForm", array('user' => $GLOBALS['pie']['user']));
}
pieTail();
Example #5
0
 public function write($return_to_string = false)
 {
     $str = parent::write(true);
     if (!empty($this->phones)) {
         $str .= 'phones: <br/>';
     }
     foreach ($this->phones as $phone) {
         $str .= '&nbsp-' . $phone["phone"] . ': ' . $phone["type"] . '<br/>';
     }
     if ($return_to_string) {
         return $str;
     }
     echo $str;
 }
Example #6
0
include_once "{$lib}/share/link.php";
include_once "{$lib}/share/stdio.php";
include_once "{$lib}/share/string.php";
include_once "{$lib}/class/locale.php";
pieLoadLocale();
pieHead("edit");
pieRequireSuperuser();
if (@$_REQUEST['user'] && @$_REQUEST['approve']) {
    // A user has been specified.
    $user = new User();
    $pref = new UserPref();
    $map = new MapFile();
    if (!$user->exists($_REQUEST['user'])) {
        pieError('UserNotFound');
    }
    if (!$user->write($_REQUEST['user'], '')) {
        pieError('UserNotDeletable');
    }
    if (!$pref->write($_REQUEST['user'], '', '')) {
        pieError('UserNotDeletable');
    }
    pieNotice('UserDeleted');
} elseif (@$_REQUEST['user']) {
    // Ask for approval to delete user.
    pieNotice('AskApproval');
} else {
    // Display a list of users to choose from.
    $ip = pieMakeString('[[$^icon_link]]');
    $hint_delete = $GLOBALS['pie']['locale']->key("Delete");
    $user = new User();
    $map = new MapFile();