Beispiel #1
0
        $condition_2 = $am_i_proadmin && Session::userAllowed($login) == 2;
        if (!($condition_1 || $condition_2)) {
            $validation_errors['login'] = _("You don't have permission to modify this user");
        }
    }
}
//Checking password field requirements
if (empty($validation_errors['pass'])) {
    //Checking current password
    $admin_login_method = $myself->get_login_method();
    if ($admin_login_method != 'ldap') {
        if ($myself->get_pass() != md5($c_pass) && $myself->get_pass() != hash('sha256', $c_pass)) {
            $validation_errors['pass'] = _('Authentication failure') . '. ' . _('Admin password is not correct');
        }
    } else {
        if (!Session::login_ldap($myself->get_login(), $c_pass)) {
            $validation_errors['pass'] = _('Authentication failure') . '. ' . _('Admin password is not correct');
        }
    }
    if (empty($validation_errors['pass'])) {
        if ($login_method != 'ldap' && !empty($pass1) && !empty($pass2)) {
            //Getting password length
            $conf = $GLOBALS['CONF'];
            $pass_length_min = $conf->get_conf('pass_length_min') ? $conf->get_conf('pass_length_min') : 7;
            $pass_length_max = $conf->get_conf('pass_length_max') ? $conf->get_conf('pass_length_max') : 255;
            $pass_length_max = $pass_length_max < $pass_length_min || $pass_length_max < 1 ? 255 : $pass_length_max;
            $pass_expire_min = $conf->get_conf('pass_expire_min') ? $conf->get_conf('pass_expire_min') : 0;
            if (0 != strcmp($pass1, $pass2)) {
                $validation_errors['pass'] = _('Authentication failure') . '. ' . _('Passwords mismatch');
            } elseif (strlen($pass1) < $pass_length_min) {
                $validation_errors['pass'] = _('Password is not long enough') . ' [' . _('Minimum password size is') . ' ' . $pass_length_min . ']';