示例#1
0
文件: usuario.php 项目: 4bs4/marifa
 /**
  * Obtenemos si hay un usuario logueado o no.
  * @return bool
  */
 public static function is_login()
 {
     // Verifico si ya tengo un valor.
     if (!isset(self::$is_login)) {
         // Verifico cookie + session.
         if (!isset($_SESSION['usuario_id'])) {
             if (Cookie::cookie_exists('usuario_id')) {
                 $_SESSION['usuario_id'] = Cookie::get_cookie_value($cookiename);
             }
         }
         // Verifico si existe el valor en la session.
         if (isset($_SESSION['usuario_id'])) {
             // Verifico si está en la base de datos.
             $model_session = new Model_Session(session_id());
             // Verifico el tiempo.
             if ($model_session->expira !== NULL) {
                 if ($model_session->expira->getTimestamp() < time()) {
                     // Termino la sessión.
                     $model_session->borrar();
                     self::$is_login = FALSE;
                 } else {
                     // Actualizo la session.
                     $model_session->actualizar_expira(session_cache_expire() * 60);
                     self::$is_login = TRUE;
                 }
             } else {
                 self::$is_login = FALSE;
             }
             unset($model_session);
         } else {
             self::$is_login = FALSE;
         }
     }
     return self::$is_login;
 }