public function testLogout()
 {
     $fakeLoginTool = $this->getMock('uLogin');
     $fakeLoginTool->expects($this->once())->method('Logout');
     $loginModule = new LoginModule();
     $loginModule->ulogin = $fakeLoginTool;
     $_SESSION['uid'] = 'fake';
     $_SESSION['username'] = '******';
     $_SESSION['loggedIn'] = 'fake';
     $loginModule->Logout();
     $this->assertFalse(isset($_SESSION['uid']));
     $this->assertFalse(isset($_SESSION['username']));
     $this->assertFalse(isset($_SESSION['loggedIn']));
 }
예제 #2
0
require_once "Modules/ViewEventModule.php";
require_once "Modules/MonthlyOverviewModule.php";
require_once "Modules/AddEditEventModule.php";
require_once "Modules/ReportsModule.php";
$page = $_GET['page'];
$action = "";
if (isset($_GET['action'])) {
    $action = $_GET['action'];
}
global $model;
if (!sses_running()) {
    sses_start();
}
$loginModule = new LoginModule();
if (strtoupper($action) == "LOGOUT") {
    $loginModule->Logout();
}
// Handle special login behavior.
if (strtoupper($page) == "LOGIN") {
    if (LoginModule::LoggedIn()) {
        LoginModule::ForwardFromLogin();
        die;
    }
    if (isset($_POST['username'])) {
        $loginSuccess = $loginModule->Login($_POST['username'], $_POST['password']);
        if ($loginSuccess) {
            $loginModule->ForwardFromLogin();
            die;
        } else {
            $model = $loginModule->BuildModel(true);
        }