/**
     @return $user User || null
     Verifies the current session.
     A User is returned iff the session is valid.
 */
 public function verify()
 {
     if (session_status() === PHP_SESSION_NONE) {
         session_start();
     }
     if (!array_key_exists('userId', $_SESSION) || !array_key_exists('secret', $_SESSION)) {
         return null;
     }
     $userId = $_SESSION['userId'];
     $secret = $_SESSION['secret'];
     $user = User::fromUserId($userId);
     if ($user === null) {
         return null;
     }
     if ($secret === $this->sessionSecret($user)) {
         return $user;
     }
     return null;
 }
 /**
     @return $user User
     Returns the User that is associated with an AreaOfInterest.
 */
 public function getUser()
 {
     if ($this->user === null) {
         $this->user = User::fromUserId($this->getUserId());
     }
     return $this->user;
 }
Example #3
0
<?php

require_once 'config.php';
if (array_key_exists('userId', $_GET)) {
    $user = User::fromUserId($_GET['userId']);
} else {
    $user = Config::getUserManager()->verify();
}
if (empty($user)) {
    header('LOCATION: index.php');
} else {
    $name = $user->getDisplayName();
    $avatar = $user->getAvatarUrl();
    $last = $user->getLastLogin();
    $tasks = $user->getTasksCompleted();
    ?>
<html lang="en">
    <head>
        <?php 
    require_once 'head.php';
    ?>
        <script src="js/require.js"></script>
        <script src="js/profile.js"></script>
        <title>Profile of <?php 
    echo $name;
    ?>
</title>
    </head>
    <body><?php 
    require_once 'navbar.php';
    ?>