]> git.datanom.net - qtadmin.git/blobdiff - lib/utils.inc.php
Add check for valid session
[qtadmin.git] / lib / utils.inc.php
index ec109f82c6f63ef82434e451bdfdbb3b7b007329..dcdd8518eb4d7b458876edf51d49eb23f80fb6ea 100644 (file)
@@ -29,8 +29,6 @@ class Utils {
     public function __construct() {
         global $CFG;
 
-        $this->log("Init Utils", 4);
-
         if (isset($CFG->log_level)) {
             $this->log_level = $CFG->log_level;
         } else {
@@ -43,16 +41,22 @@ class Utils {
             $this->log_level = 'syslog';
         }
 
+        $this->log("Init Utils", 4);
+
+        $this->log("__construct[1]: user ".var_export($this->settings['user'], true), 3);
         $this->startSession();
+        $this->log("__construct[2]: user ".var_export($this->settings['user'], true), 3);
 
         if (! isset($_SESSION['settings'])) {
             $this->initSettings();
         }
+        $this->log("__construct[3]: user ".var_export($this->settings['user'], true), 3);
         $this->settings = $_SESSION['settings'];
+        $this->log("__construct[4]: user ".var_export($this->settings['user'], true), 3);
 
         if ($CFG->auth_method == 'HTTP_AUTH') {
-            if (isset($this->server['PHP_AUTH_USER'])) {
-                $this->settings['user'] = $this->server['PHP_AUTH_USER'];
+            if (isset($_SERVER['PHP_AUTH_USER'])) {
+                $this->settings['user'] = $_SERVER['PHP_AUTH_USER'];
                 $this->settings['loginStatus'] = 'OK';
                 if ($CFG->admin_user == $this->settings['user'])
                     $this->settings['admin'] = true;
@@ -67,7 +71,6 @@ class Utils {
             return;
 
         $time = date('c');
-        $msg = "[$time] $message";
 
         $priority = LOG_INFO;
         switch ($level) {
@@ -81,11 +84,14 @@ class Utils {
             case 'file':
             case 'stderr':
             case 'syslog':
-                syslog($priority,$msg);
+                syslog($priority, $message);
                 break;
+        }
     }
 
     private function initSettings() {
+        $this->log("InitSettings", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -97,7 +103,6 @@ class Utils {
         }
 
         $this->settings = array(
-            'server' => $_SERVER,
             'user' => null,
             'admin' => false,
             'loginStatus' => 'Not logged in',
@@ -110,6 +115,8 @@ class Utils {
     private function startSession() {
         global $CFG;
 
+        $this->log("startSession", 4);
+
         if (isset($CFG->session_timeout)) {
             $this->timeout = $CFG->session_timeout * 60;
         } else {
@@ -127,6 +134,8 @@ class Utils {
     private function checkSession() {
         global $CFG;
 
+        $this->log("checkSession", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -134,7 +143,8 @@ class Utils {
         $time = $_SERVER['REQUEST_TIME'];
         if (isset($_SESSION['LAST_ACTIVITY']) &&
                 ($time - $_SESSION['LAST_ACTIVITY']) >= $this->settings['timeout']) {
-            echo 'R_TIME: '.date('c', $time).' L_ACT: '.date('c', $_SESSION['LAST_ACTIVITY']);
+            $this->log('R_TIME: '.date('c', $time).' L_ACT: '.date('c', $_SESSION['LAST_ACTIVITY'].
+            'Test: '.($time - $_SESSION['LAST_ACTIVITY'])).' >= '.$this->settings['timeout'], 3);
             $this->logout();
         } else {
             $_SESSION['LAST_ACTIVITY'] = $time;
@@ -142,6 +152,8 @@ class Utils {
     }
 
     public function logout() {
+        $this->log("logout", 4);
+
         if (ini_get('session.use_cookies')) {
             $params = session_get_cookie_params();
             setcookie(session_name(), '', time() - 42000,
@@ -160,6 +172,8 @@ class Utils {
     public function isAdmin() {
         $admin = false;
 
+        $this->log("isAdmin", 4);
+
         if (isset($this->settings['admin'])) {
             $admin = $this->settings['admin'];
         }
@@ -171,6 +185,8 @@ class Utils {
         global $CFG;
         $result = false;
 
+        $this->log("login", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -222,6 +238,8 @@ class Utils {
     public function getLoginStatus() {
         $status = 'Not logged in';
 
+        $this->log("getLoginStatus", 4);
+
         if (isset($this->settings['loginStatus'])) {
             $status = $this->settings['loginStatus'];
         }
@@ -233,19 +251,23 @@ class Utils {
         global $CFG;
         $loggedIn = false;
 
+        $this->log("isLoggedIn[1]: user ".var_export($this->settings['user'], true), 3);
+
         if ('' == session_id()) {
             $this->startSession();
         }
 
+        $this->log("isLoggedIn[2]: user ".var_export($this->settings['user'], true), 3);
         $this->checkSession();
+        $this->log("isLoggedIn[3]: user ".var_export($this->settings['user'], true), 3);
 
         if (isset($this->settings['user'])) {
             if ($this->settings['user'] != null) {
                 $loggedIn = true;
             } else {
                 if ($CFG->auth_method == 'HTTP_AUTH') {
-                    if (isset($this->server['PHP_AUTH_USER'])) {
-                        $this->settings['user'] = $this->server['PHP_AUTH_USER'];
+                    if (isset($_SERVER['PHP_AUTH_USER'])) {
+                        $this->settings['user'] = $_SERVER['PHP_AUTH_USER'];
                         $loggedIn = true;
                     }
                 }
@@ -266,6 +288,8 @@ class Utils {
     public function getUser() {
         $user = null;
 
+        $this->log("getUser", 4);
+
         if ($this->isLoggedIn()) {
             $user = $this->settings['user'];
         }
@@ -274,20 +298,28 @@ class Utils {
     }
 
     public function getHeader() {
+        $this->log("getHeader", 4);
+
         return $this->header;
     }
 
     public function getFooter() {
+        $this->log("getFooter", 4);
+
         return $this->footer;
     }
 
     public function getHeading() {
+        $this->log("getHeading", 4);
+
         return $this->heading;
     }
 
     public function setHeading($heading) {
         global $CFG;
 
+        $this->log("setHeading", 4);
+
         $timeout = $CFG->session_timeout * 60 * 1000;
         $this->heading = str_replace('__TITLE__', $heading, $this->heading);
         $this->header = str_replace('__TITLE__', $heading, $this->header);
@@ -296,6 +328,8 @@ class Utils {
     }
 
     public function convertContent($code) {
+        $this->log("convertContent", 4);
+
         $table = array(
             'V' => 'Virus',
             'B' => 'Banned',
This page took 0.120413 seconds and 5 git commands to generate.