From d1d9bc512b14083dbe38e791cf8ee0e02b358336 Mon Sep 17 00:00:00 2001
From: vogelor <vogelor@ispconfig3>
Date: Mon, 10 May 2010 14:17:02 -0400
Subject: [PATCH] Some small improvements of the output of the ISPConfig - Version

---
 interface/lib/classes/db_mysql.inc.php |   67 ++++++++++++++++++---------------
 1 files changed, 36 insertions(+), 31 deletions(-)

diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php
index 6caf0c9..3146a0f 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -1,14 +1,7 @@
 <?php
-/**
- * mySQL Database class
- * 
- * @author Till Brehm
- * @copyright  2005, Till Brehm, projektfarm Gmbh
- * @version 0.2
- * @package ISPConfig
- */
+
 /*
-Copyright (c) 2005, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
@@ -35,8 +28,7 @@
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
-class db
-{
+class db {
 	private $dbHost = '';		   // hostname of the MySQL server
 	private $dbName = '';		   // logical database name on that server
 	private $dbUser = '';		   // database authorized user
@@ -84,6 +76,7 @@
 				return false;
 			}
     		$this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId);
+			$this->queryId = @mysql_query("SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'", $this->linkId);
 		}
 		return true;
 	}
@@ -225,23 +218,14 @@
     }
 	*/
 	
-	//** Function to fill the datalog with a full differential record.
-	public function datalogSave($db_table, $action, $primary_field, $primary_id, $record_old, $record_new) {
-		global $app,$conf;
-
-		// Insert backticks only for incomplete table names.
-		if(stristr($db_table,'.')) {
-			$escape = '';
-		} else {
-			$escape = '`';
-		}
-
+	public function diffrec($record_old, $record_new) {
 		$diffrec_full = array();
 		$diff_num = 0;
 
 		if(is_array($record_old) && count($record_old) > 0) {
 			foreach($record_old as $key => $val) {
-				if(!isset($record_new[$key]) || $record_new[$key] != $val) {
+				// if(!isset($record_new[$key]) || $record_new[$key] != $val) {
+				if($record_new[$key] != $val) {
 					// Record has changed
 					$diffrec_full['old'][$key] = $val;
 					$diffrec_full['new'][$key] = $record_new[$key];
@@ -265,12 +249,34 @@
 			}
 		}
 		
+		return array('diff_num' => $diff_num, 'diff_rec' => $diffrec_full);
+		
+	}
+	
+	//** Function to fill the datalog with a full differential record.
+	public function datalogSave($db_table, $action, $primary_field, $primary_id, $record_old, $record_new) {
+		global $app,$conf;
+
+		// Insert backticks only for incomplete table names.
+		if(stristr($db_table,'.')) {
+			$escape = '';
+		} else {
+			$escape = '`';
+		}
+
+		$tmp = $this->diffrec($record_old, $record_new);
+		$diffrec_full = $tmp['diff_rec'];
+		$diff_num = $tmp['diff_num'];
+		unset($tmp);
+		
 		// Insert the server_id, if the record has a server_id
 		$server_id = (isset($record_old["server_id"]) && $record_old["server_id"] > 0)?$record_old["server_id"]:0;
 		if(isset($record_new["server_id"])) $server_id = $record_new["server_id"];
 		
 
 		if($diff_num > 0) {
+			//print_r($diff_num);
+			//print_r($diffrec_full);
 			$diffstr = $app->db->quote(serialize($diffrec_full));
 			$username = $app->db->quote($_SESSION["s"]["user"]["username"]);
 			$dbidx = $primary_field.":".$primary_id;
@@ -477,16 +483,15 @@
        
        
     public function tableInfo($table_name) {
-        global $go_api,$go_info;
         //* Tabellenfelder einlesen ?
-        if($rows = $go_api->db->queryAllRecords("SHOW FIELDS FROM $table_name")){
+        if($rows = $this->queryAllRecords("SHOW FIELDS FROM $table_name")){
         foreach($rows as $row) {
-            $name    = $row[0];
-            $default = $row[4];
-            $key     = $row[3];
-            $extra   = $row[5];
-            $isnull  = $row[2];
-            $type    = $row[1];
+            $name    = $row['Field'];
+            $default = $row['Default'];
+            $key     = $row['Key'];
+            $extra   = $row['Extra'];
+            $isnull  = $row['Null'];
+            $type    = $row['Type'];
         
             $column = array('name' => $name, 'defaultValue' => $default);
             //$column["type"] = $type;

--
Gitblit v1.9.1