public function forgotPasswordContent()
 {
     if (currentUser::getUserSession()->isLoggedIn()) {
         $this->response = Response::fourOhFour();
         return;
     }
     if ($this->request->isPostRequest()) {
         $this->doForgotPassword();
         return;
     }
     $this->response = new Response(200, "@users/forgotPassword.twig", "Forgot Password", "users");
 }
示例#2
0
        exit;
    }
    // Show the admin interface
    array_shift($args);
    if (count($args)) {
        $action = array_shift($args);
    } else {
        $action = 'login';
    }
    if ($action != 'settings' && $config->get('multiLanguageSupport') && count($args)) {
        $language = array_shift($args);
    } else {
        $language = _DEFAULT_LANGUAGE_;
    }
    $lang = new language($language, _DEFAULT_SITE_, true);
    $user = new currentUser();
    $manager = new pluginManager();
    $tree = new pageTree($user, $manager, $language, _DEFAULT_SITE_);
    if ($action == 'login' && $user->loggedin()) {
        $id = $tree->getHome();
        header('Location: ' . url::item($id));
        exit;
    }
    $manager->handleAction($action, $args);
    exit;
}
if (!$config->get('installed')) {
    $lang = new language(_DEFAULT_LANGUAGE_, _DEFAULT_SITE_, true);
    $theme =& new theme();
    $theme->showError(_OFFLINE_MESSAGE_, 3);
}
 private static function logIn($userName)
 {
     $user = currentUser::getUserSession();
     $database = database::getInstance();
     $database->connect();
     $userData = $database->getData('u.firstName, u.lastName, u.userID, u.roleID', 'users u, activeDirectory ad', 'WHERE u.userID = ad.userID AND ad.adUsername = \'' . $userName . '\'');
     if ($userData === null) {
         return;
     }
     if (count($userData) > 1) {
         return;
     }
     $user->setLoggedIn(true);
     $user->setFirstName($userData[0]['firstName']);
     $user->setLastName($userData[0]['lastName']);
     $user->setUserID($userData[0]['userID']);
     $user->setRoleID($userData[0]['roleID']);
     currentUser::setUserSession($user);
     $database->updateTable('users', 'lastAccess = CURRENT_TIMESTAMP', 'userID = ' . $user->getUserID());
     $log = new logEntry(1, logEntryType::neutral, $user->getUserID(), $user->getFullName() . ' logged in using Active Directory from an IP of ' . $_SERVER['REMOTE_ADDR'] . '.', $user->getUserID);
     logger::getInstance()->logIt($log);
 }
示例#4
-1
 public function __construct(Request $request)
 {
     if (count($request->getParameters(true)) > 2) {
         $this->response = Response::fourOhFour();
         return;
     }
     if (currentUser::getUserSession()->isLoggedIn()) {
         $this->response = Response::fourOhFour();
         return;
     }
     $lockoutEngine = LockoutEngine::getInstance();
     if ($lockoutEngine->isLockedOut($_SERVER['REMOTE_ADDR'])) {
         $minutesLeft = $this->minutesLeftInLockout();
         $this->response = new Response(403, "@users/lockedOut.twig", "Locked Out", "lockedOut", $minutesLeft);
         return;
     }
     if ($request->isPostRequest()) {
         $this->response = $this->doLogIn();
         return;
     }
     $this->response = new Response(200, "@users/login.twig", "Login", "login");
 }