Beispiel #1
0
require_once 'runtime.php';
require_once ROOT_DIR . '/lib/core/login.class.php';
require_once ROOT_DIR . '/lib/core/user_old.class.php';
require_once ROOT_DIR . '/lib/core/UserRememberMe.class.php';
if ($_SESSION['last_page'] != $_SESSION['current_page'] and empty($_SESSION['redirect_after_login_url'])) {
    $_SESSION['redirect_after_login_url'] = $_SESSION['last_page'];
}
if ($_GET['section'] == "login") {
    $smarty->assign('message', Message::getMessage());
    $smarty->display("header.tpl.html");
    $smarty->display("login.tpl.html");
    $smarty->display("footer.tpl.html");
} elseif ($_GET['section'] == "login_send") {
    //check if login is successfull and if not, go back to loginpage with errormessage
    if (isset($_POST['nickname']) and isset($_POST['password'])) {
        $user_data = User_old::getUserByNickname($_POST['nickname']);
        $phpass = new PasswordHash(8, false);
        if (empty($user_data) or !$phpass->CheckPassword($_POST['password'], $user_data['password'])) {
            $messages[] = array("Passwort oder Benutzername stimmen nicht.", 2);
            Message::setMessage($messages);
            header('Location: login.php');
            die;
        }
    } elseif (isset($_POST['openid_identifier']) or isset($_GET['openid_mode'])) {
        $status = "";
        if (!empty($_POST['openid_identifier'])) {
            //login initiation
            $consumer = new Zend_OpenId_Consumer();
            if (!$consumer->login($_POST['openid_identifier'], "login.php?section=login_send&remember=" . $_POST['remember'])) {
                $status = "OpenID Login fehlgeschlagen.";
            }