From cab7ea5faaa2f3510c8488e7d19d083fc05ac6ca Mon Sep 17 00:00:00 2001
From: mcramer <m.cramer@pixcept.de>
Date: Wed, 18 Sep 2013 04:17:27 -0400
Subject: [PATCH] - Fixed missing global $app in new _decode function

---
 server/lib/app.inc.php |   68 ++++++++++++++++++++--------------
 1 files changed, 40 insertions(+), 28 deletions(-)

diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php
old mode 100644
new mode 100755
index fc2397c..321e5c6
--- a/server/lib/app.inc.php
+++ b/server/lib/app.inc.php
@@ -28,36 +28,29 @@
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
+//* Set timezone
+if(isset($conf['timezone']) && $conf['timezone'] != '') date_default_timezone_set($conf['timezone']);
+
 class app {
 		
 	var $loaded_modules = array();
 	var $loaded_plugins = array();
         
-	function app() {
+	function __construct() {
 
                 global $conf;
 
                 if($conf['start_db'] == true) {
                 	$this->load('db_'.$conf['db_type']);
                 	$this->db = new db;
-					if($this->db->linkId) $this->db->closeConn();
-					$this->db->dbHost = $conf['db_host'];
-					$this->db->dbName = $conf['db_database'];
-					$this->db->dbUser = $conf['db_user'];
-					$this->db->dbPass = $conf['db_password'];
 					
 					/*
 					Initialize the connection to the master DB, 
 					if we are in a multiserver setup
 					*/
 					
-					if($conf['dbmaster_host'] != '' && $conf['dbmaster_host'] != $conf['db_host']) {
-						$this->dbmaster = new db;
-						if($this->dbmaster->linkId) $this->dbmaster->closeConn();
-						$this->dbmaster->dbHost = $conf['dbmaster_host'];
-						$this->dbmaster->dbName = $conf['dbmaster_database'];
-						$this->dbmaster->dbUser = $conf['dbmaster_user'];
-						$this->dbmaster->dbPass = $conf['dbmaster_password'];
+					if($conf['dbmaster_host'] != '' && ($conf['dbmaster_host'] != $conf['db_host'] || ($conf['dbmaster_host'] == $conf['db_host'] && $conf['dbmaster_database'] != $conf['db_database']))) {
+						$this->dbmaster = new db($conf['dbmaster_host'], $conf['dbmaster_user'], $conf['dbmaster_password'], $conf['dbmaster_database']);
 					} else {
 						$this->dbmaster = $this->db;
 					}
@@ -75,7 +68,7 @@
 		if(is_array($cl)) {
 			foreach($cl as $classname) {
 				if(!@is_object($this->$classname)) {
-					if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && !is_link($conf['classpath'].'/'.$classname.'.inc.php')) {
+					if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && (DEVSYSTEM ||  !is_link($conf['classpath'].'/'.$classname.'.inc.php'))) {
 						include_once($conf['classpath'].'/'.$classname.'.inc.php');
 						$this->$classname = new $classname;
 					}
@@ -91,7 +84,7 @@
 		$cl = explode(',',$classes);
 		if(is_array($cl)) {
 			foreach($cl as $classname) {
-				if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && !is_link($conf['classpath'].'/'.$classname.'.inc.php')) {
+				if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && (DEVSYSTEM || !is_link($conf['classpath'].'/'.$classname.'.inc.php'))) {
 					include_once($conf['classpath'].'/'.$classname.'.inc.php');
 				} else {
 					die('Unable to load: '.$conf['classpath'].'/'.$classname.'.inc.php');
@@ -109,28 +102,31 @@
         function log($msg, $priority = 0) {
 				
 		global $conf;
+		
+		switch ($priority) {
+			case 0:
+				$priority_txt = 'DEBUG';
+				break;
+			case 1:
+				$priority_txt = 'WARNING';
+				break;
+			case 2:
+				$priority_txt = 'ERROR';
+				break;
+		}
+		$log_msg = @date('d.m.Y-H:i').' - '.$priority_txt.' - '. $msg;
 
 		if($priority >= $conf['log_priority']) {
                         //if (is_writable($conf["log_file"])) {
                             if (!$fp = fopen ($conf['log_file'], 'a')) {
                                 die('Unable to open logfile.');
                             }
-						switch ($priority) {
-							case 0:
-								$priority_txt = 'DEBUG';
-								break;
-							case 1:
-								$priority_txt = 'WARNING';
-								break;
-							case 2:
-								$priority_txt = 'ERROR';
-								break;
-						}
 							
-                            if (!fwrite($fp, @date('d.m.Y-H:i').' - '.$priority_txt.' - '. $msg."\r\n")) {
+                            if (!fwrite($fp, $log_msg."\r\n")) {
                                 die('Unable to write to logfile.');
                             }
-				echo @date('d.m.Y-H:i').' - '.$priority_txt.' - '. $msg."\n";
+				
+				echo $log_msg."\n";
 				fclose($fp);
 
 					// Log to database
@@ -156,8 +152,24 @@
                         //} else {
                         //    die("Unable to write to logfile.");
                         //}
+					
+    
                 } // if
+				
+				if(isset($conf['admin_notify_priority']) && $priority >= $conf['admin_notify_priority'] && $conf['admin_mail'] != '') {
+					// send notification to admin
+					$mailBody = $log_msg;
+					$mailSubject = substr($log_msg,0,50).'...';
+					$mailHeaders      = "MIME-Version: 1.0" . "\n";
+					$mailHeaders     .= "Content-type: text/plain; charset=utf-8" . "\n";
+					$mailHeaders     .= "Content-Transfer-Encoding: 8bit" . "\n";
+					$mailHeaders     .= "From: ". $conf['admin_mail'] . "\n";
+					$mailHeaders     .= "Reply-To: ". $conf['admin_mail'] . "\n";
+
+					mail($conf['admin_mail'], $mailSubject, $mailBody, $mailHeaders);
+				}
         } // func
+		
 
         /*
          0 = DEBUG

--
Gitblit v1.9.1