]> git.datanom.net - qtadmin.git/blobdiff - lib/utils.inc.php
Add check for valid session
[qtadmin.git] / lib / utils.inc.php
index 640d828edfffedf540804b91d052ace2d6284489..c06729f7e023dbe7dd73bc2dbd174121337e0107 100644 (file)
@@ -6,6 +6,8 @@ class Utils {
 
     private $timeout = false;
     private $settings;
+    private $log_level;
+    private $log_method;
     private $header = '<!DOCTYPE html>
 <html>
 <head>
@@ -27,6 +29,20 @@ class Utils {
     public function __construct() {
         global $CFG;
 
+        if (isset($CFG->log_level)) {
+            $this->log_level = $CFG->log_level;
+        } else {
+            $this->log_level = 1;
+        }
+
+        if (isset($CFG->log_method)) {
+            $this->log_method = $CFG->log_method;
+        } else {
+            $this->log_level = 'syslog';
+        }
+
+        $this->log("Init Utils", 4);
+
         $this->startSession();
 
         if (! isset($_SESSION['settings'])) {
@@ -44,7 +60,34 @@ class Utils {
         }
     }
 
+    private function log($message, $level = 1) {
+        global $CFG;
+
+        if ($level > $this->log_level)
+            return;
+
+        $time = date('c');
+
+        $priority = LOG_INFO;
+        switch ($level) {
+            case 1: $priority = LOG_ERR; break;
+            case 2: $priority = LOG_WARNING; break;
+            case 3: $priority = LOG_INFO; break;
+            case 4: $priority = LOG_DEBUG; break;
+        }
+
+        switch ($this->log_method) {
+            case 'file':
+            case 'stderr':
+            case 'syslog':
+                syslog($priority, $message);
+                break;
+        }
+    }
+
     private function initSettings() {
+        $this->log("InitSettings", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -69,6 +112,8 @@ class Utils {
     private function startSession() {
         global $CFG;
 
+        $this->log("startSession", 4);
+
         if (isset($CFG->session_timeout)) {
             $this->timeout = $CFG->session_timeout * 60;
         } else {
@@ -86,6 +131,8 @@ class Utils {
     private function checkSession() {
         global $CFG;
 
+        $this->log("checkSession", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -101,6 +148,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,
@@ -119,6 +168,8 @@ class Utils {
     public function isAdmin() {
         $admin = false;
 
+        $this->log("isAdmin", 4);
+
         if (isset($this->settings['admin'])) {
             $admin = $this->settings['admin'];
         }
@@ -130,6 +181,8 @@ class Utils {
         global $CFG;
         $result = false;
 
+        $this->log("login", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -181,6 +234,8 @@ class Utils {
     public function getLoginStatus() {
         $status = 'Not logged in';
 
+        $this->log("getLoginStatus", 4);
+
         if (isset($this->settings['loginStatus'])) {
             $status = $this->settings['loginStatus'];
         }
@@ -192,6 +247,8 @@ class Utils {
         global $CFG;
         $loggedIn = false;
 
+        $this->log("isLoggedIn", 4);
+
         if ('' == session_id()) {
             $this->startSession();
         }
@@ -225,6 +282,8 @@ class Utils {
     public function getUser() {
         $user = null;
 
+        $this->log("getUser", 4);
+
         if ($this->isLoggedIn()) {
             $user = $this->settings['user'];
         }
@@ -233,20 +292,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);
@@ -255,6 +322,8 @@ class Utils {
     }
 
     public function convertContent($code) {
+        $this->log("convertContent", 4);
+
         $table = array(
             'V' => 'Virus',
             'B' => 'Banned',
This page took 0.139275 seconds and 5 git commands to generate.