From e6c1c42237dae4a1fab10a783911ebf7c798e51f Mon Sep 17 00:00:00 2001
From: pedro_morgan <pedro_morgan@ispconfig3>
Date: Sun, 19 Aug 2007 02:27:40 +0000
Subject: [PATCH] Made mysql class php5 with comments

---
 interface/lib/classes/db_mysql.inc.php | 721 +++++++++++--------------
 1 file changed, 324 insertions(+), 397 deletions(-)

diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php
index 25ef1312f..09297c7c9 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -1,4 +1,12 @@
 <?php
+/**
+ * mySQL Database class
+ * 
+ * @author Till Brehm
+ * @copyright  2005, Till Brehm, projektfarm Gmbh
+ * @version 0.1
+ * @package ISPConfig
+ */
 /*
 Copyright (c) 2005, Till Brehm, projektfarm Gmbh
 All rights reserved.
@@ -27,295 +35,276 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
-	class db
-	{
-		var $dbHost = "";		// hostname of the MySQL server
-		var $dbName = "";		// logical database name on that server
-		var $dbUser = "";		// database authorized user
-		var $dbPass = "";		// user's password
-		var $linkId = 0;		// last result of mysql_connect()
-		var $queryId = 0;		// last result of mysql_query()
-		var $record	= array();	// last record fetched
-        var $autoCommit = 1;    // Autocommit Transactions
-		var $currentRow;		// current row number
-		var $errorNumber = 0;	// last error number
-		var $errorMessage = "";	// last error message
-		var $errorLocation = "";// last error location
-		var $show_error_messages = false;
+class db
+{
+	private $dbHost = '';		// hostname of the MySQL server
+	private $dbName = '';		// logical database name on that server
+	private $dbUser = '';		// database authorized user
+	private $dbPass = '';		// user's password
+	private $linkId = 0;		// last result of mysql_connect()
+	private $queryId = 0;		// last result of mysql_query()
+	private $record	= array();	// last record fetched
+    private $autoCommit = 1;    // Autocommit Transactions
+	private $currentRow;		// current row number
+	private $errorNumber = 0;	// last error number
+	private $errorMessage = '';	// last error message
+	private $errorLocation = '';// last error location
+	private $show_error_messages = false;
 
-		// constructor
-		function db()
-		{
-			
-			global $conf;
-			$this->dbHost = $conf["db_host"];
-			$this->dbName = $conf["db_database"];
-			$this->dbUser = $conf["db_user"];
-			$this->dbPass = $conf["db_password"];
-			//$this->connect();
-		}
-
-		// error handler
-		function updateError($location)
-		{
-			$this->errorNumber = mysql_errno();
-			$this->errorMessage = mysql_error();
-			$this->errorLocation = $location;
-			if($this->errorNumber && $this->show_error_messages)
-			{
-				echo('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage);
-				flush();
-			}
-		}
+	public function __construct()
+    {
+		global $conf;
+		$this->dbHost = $conf['db_host'];
+		$this->dbName = $conf['db_database'];
+		$this->dbUser = $conf['db_user'];
+		$this->dbPass = $conf['db_password'];
+		//$this->connect();
+	}
 
-		function connect()
-		{
-			if($this->linkId == 0)
-			{
-				$this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
-				if(!$this->linkId)
-				{
-					$this->updateError('DB::connect()<br />mysql_connect');
-					return false;
-				}
-			}
-			return true;
+	/**  Error handler */
+	public function updateError($location)
+    {
+		$this->errorNumber = mysql_errno();
+		$this->errorMessage = mysql_error();
+		$this->errorLocation = $location;
+		if($this->errorNumber && $this->show_error_messages){
+			echo('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage);
+			flush();
 		}
+	}
 
-		function query($queryString)
-		{
-			if(!$this->connect())
-			{
+	public function connect()
+    {
+		if($this->linkId == 0){
+			$this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
+			if(!$this->linkId){
+				$this->updateError('DB::connect()<br />mysql_connect');
 				return false;
 			}
-			if(!mysql_select_db($this->dbName, $this->linkId))
-			{
-				$this->updateError('DB::connect()<br />mysql_select_db');
-				return false;
-			}
-			$this->queryId = @mysql_query($queryString, $this->linkId);
-			$this->updateError('DB::query('.$queryString.')<br />mysql_query');
-			if(!$this->queryId)
-			{
-				return false;
-			}
-			$this->currentRow = 0;
-			return $this->queryId;
 		}
+		return true;
+	}
 
-		// returns all records in an array
-		function queryAllRecords($queryString)
-		{
-			if(!$this->query($queryString))
-			{
-				return false;
-			}
-			$ret = array();
-			while($line = $this->nextRecord())
-			{
-				$ret[] = $line;
-			}
-			return $ret;
+	public function query($queryString)
+    {
+		if(!$this->connect()){
+			return false;
 		}
-
-		// returns one record in an array
-		function queryOneRecord($queryString)
-		{
-			if(!$this->query($queryString) || $this->numRows() == 0)
-			{
-				return false;
-			}
-			return $this->nextRecord();
+		if(!mysql_select_db($this->dbName, $this->linkId)){
+			$this->updateError('DB::connect()<br />mysql_select_db');
+			return false;
+		}
+		$this->queryId = @mysql_query($queryString, $this->linkId);
+		$this->updateError('DB::query('.$queryString.')<br />mysql_query');
+		if(!$this->queryId){
+			return false;
 		}
+		$this->currentRow = 0;
+		return $this->queryId;
+	}
 
-		// returns the next record in an array
-		function nextRecord()
-		{
-            $this->record = mysql_fetch_assoc($this->queryId);
-			$this->updateError('DB::nextRecord()<br />mysql_fetch_array');
-			if(!$this->record || !is_array($this->record))
-			{
-				return false;
-			}
-			$this->currentRow++;
-			return $this->record;
+	/** Returns all records as an array */
+	public function queryAllRecords($queryString)
+    {
+		if(!$this->query($queryString)){
+			return false;
+		}
+		$ret = array();
+		while($line = $this->nextRecord()){
+			$ret[] = $line;
 		}
+		return $ret;
+	}
 
-		// returns number of rows returned by the last select query
-		function numRows()
-		{
-			return mysql_num_rows($this->queryId);
+	/** Returns one row as an array */
+	public function queryOneRecord($queryString)
+    {
+		if(!$this->query($queryString) || $this->numRows() == 0){
+			return false;
 		}
-		
-		function affectedRows()
-		{
-			return mysql_affected_rows($this->linkId);
+		return $this->nextRecord();
+	}
+
+	/** Returns the next record as an array */
+	public function nextRecord()
+    {
+        $this->record = mysql_fetch_assoc($this->queryId);
+		$this->updateError('DB::nextRecord()<br />mysql_fetch_array');
+		if(!$this->record || !is_array($this->record)){
+			return false;
 		}
+		$this->currentRow++;
+		return $this->record;
+	}
+
+	/** Returns the number of rows returned by the last select query */
+	public function numRows()
+    {
+		return mysql_num_rows($this->queryId);
+	}
+
+	public function affectedRows()
+    {
+		return mysql_affected_rows($this->linkId);
+	}
 		
-		// returns mySQL insert id
-		function insertID()
-		{
-			return mysql_insert_id($this->linkId);
-		}
+	/** Returns the last mySQL insert_id() */
+	public function insertID()
+    {
+		return mysql_insert_id($this->linkId);
+	}
         
-        // Check der variablen
-		// deprecated, now use quote
-        function check($formfield)
-        {
-            return $this->quote($formfield);
-        }
+    /** Checks a variable - Depreciated, use quote() */
+    public function check($formfield)
+    {
+        return $this->quote($formfield);
+    }
 		
-		// Check der variablen
-        function quote($formfield)
-        {
-            return addslashes($formfield);
-        }
+	/** Escapes quotes in variable. addslashes() */
+    public function quote($formfield)
+    {
+        return addslashes($formfield);
+    }
 		
-		// Check der variablen
-        function unquote($formfield)
-        {
-            return stripslashes($formfield);
-        }
+	/** Unquotes a variable, strip_slashes() */
+    public function unquote($formfield)
+    {
+        return stripslashes($formfield);
+    }
 		
-		function toLower($record) {
-			if(is_array($record)) {
-				foreach($record as $key => $val) {
-					$key = strtolower($key);
-					$out[$key] = $val;
-				}
+	public function toLower($record)
+    {
+		if(is_array($record)){
+			foreach($record as $key => $val) {
+				$key = strtolower($key);
+				$out[$key] = $val;
 			}
-		return $out;
 		}
+	    return $out;
+	}
        
        
-       function insert($tablename,$form,$debug = 0)
-       {
-         if(is_array($form)){
-	       foreach($form as $key => $value) 
-   		    {
-   		    $sql_key .= "$key, ";
-            $sql_value .= "'".$this->check($value)."', ";
-      		 }
-       	$sql_key = substr($sql_key,0,strlen($sql_key) - 2);
-        $sql_value = substr($sql_value,0,strlen($sql_value) - 2);
-        
-       	$sql = "INSERT INTO $tablename (" . $sql_key . ") VALUES (" . $sql_value .")";
-       
-      		 if($debug == 1) echo "SQL-Statement: ".$sql."<br><br>";
-      		 $this->query($sql);
-      		 if($debug == 1) echo "mySQL Error Message: ".$this->errorMessage;
-          }
-       }
-       
-       function update($tablename,$form,$bedingung,$debug = 0)
-       {
-       
-	     if(is_array($form)){
-           foreach($form as $key => $value) 
-   		    {
-   		    $insql .= "$key = '".$this->check($value)."', ";
-      		 }
-       	        $insql = substr($insql,0,strlen($insql) - 2);
-       	        $sql = "UPDATE $tablename SET " . $insql . " WHERE $bedingung";
-      		 if($debug == 1) echo "SQL-Statement: ".$sql."<br><br>";
-      		 $this->query($sql);
-      		 if($debug == 1) echo "mySQL Error Message: ".$this->errorMessage;
-           }
-       }
-       
-       function closeConn() {
-       
-       }
-       
-       function freeResult() {
-       
-       
-       }
-       
-       function delete() {
-       
-       }
-       
-       function Transaction($action) {
-       //action = begin, commit oder rollback
-       
-       }
-       
-       /*
-       $columns = array(action =>   add | alter | drop
-                        name =>     Spaltenname
-                        name_new => neuer Spaltenname, nur bei 'alter' belegt
-                        type =>     42go-Meta-Type: int16, int32, int64, double, char, varchar, text, blob
-                        typeValue => Wert z.B. bei Varchar
-                        defaultValue =>  Default Wert
-                        notNull =>   true | false
-                        autoInc =>   true | false
-                        option =>   unique | primary | index)
-       
-       
-       */
-       
-       function createTable($table_name,$columns) {
-       $index = "";
-       $sql = "CREATE TABLE $table_name (";
-       foreach($columns as $col){
-            $sql .= $col["name"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
+    public function insert($tablename, $form, $debug = 0)
+    {
+        if(is_array($form)){
+	        foreach($form as $key => $value){
+                $sql_key .= "$key, ";
+                $sql_value .= "'".$this->check($value)."', ";
+            }
+            $sql_key = substr($sql_key,0,strlen($sql_key) - 2);
+            $sql_value = substr($sql_value,0,strlen($sql_value) - 2);
+            $sql = "INSERT INTO $tablename (".$sql_key.') VALUES ('.$sql_value.')';
+            //TODO: where has $debug come from !???
+            if($debug == 1){ echo "SQL-Statement: $sql<br><br>"; }
+            $this->query($sql);
+            if($debug == 1){ echo 'mySQL Error Message: '.$this->errorMessage; }
+        }
+    }
        
-            if($col["defaultValue"] != "") {
-				if($col["defaultValue"] == "NULL" or $col["defaultValue"] == "NOT NULL") {
-					$sql .= "DEFAULT ".$col["defaultValue"]." ";
-				} else {
-					$sql .= "DEFAULT '".$col["defaultValue"]."' ";
-				}
-				
-			} elseif($col["defaultValue"] != false) {
-				$sql .= "DEFAULT '' ";
-			}
-			if($col["defaultValue"] != "NULL" && $col["defaultValue"] != "NOT NULL") {
-            	if($col["notNull"] == true) {
-                	$sql .= "NOT NULL ";
-            	} else {
-                	$sql .= "NULL ";
-            	}
-			}
-            if($col["autoInc"] == true) $sql .= "auto_increment ";
-            $sql.= ",";
-            // key Definitionen
-            if($col["option"] == "primary") $index .= "PRIMARY KEY (".$col["name"]."),";
-            if($col["option"] == "index") $index .= "INDEX (".$col["name"]."),";
-            if($col["option"] == "unique") $index .= "UNIQUE (".$col["name"]."),";
-       }
+    public function update($tablename, $form, $bedingung, $debug = 0)
+    {
+	    if(is_array($form)){
+            foreach($form as $key => $value){
+                $insql .= "$key = '".$this->check($value)."', ";
+            }
+            $insql = substr($insql, 0, strlen($insql) - 2);
+            $sql = "UPDATE $tablename SET " . $insql . " WHERE $bedingung";
+            if($debug == 1){ echo "SQL-Statement: $sql<br><br>"; }
+            $this->query($sql);
+            if($debug == 1){ echo 'mySQL Error Message: '.$this->errorMessage; }
+        }
+    }
+       
+    public function closeConn()
+    {
+    }
+       
+    public function freeResult() 
+    {
+    }
+       
+    public function delete()
+    {
+    }
+       
+    public function Transaction($action)
+    {
+        //action = begin, commit oder rollback
+    }
+    
+    /** Creates a database table with the following format for the $columns array   
+    * <code>
+    * $columns = array(action =>   add | alter | drop
+    *                  name =>     Spaltenname
+    *                  name_new => neuer Spaltenname, nur bei 'alter' belegt
+    *                  type =>     42go-Meta-Type: int16, int32, int64, double, char, varchar, text, blob
+    *                  typeValue => Wert z.B. bei Varchar
+    *                  defaultValue =>  Default Wert
+    *                  notNull =>   true | false
+    *                  autoInc =>   true | false
+    *                  option =>   unique | primary | index)
+    * </code>   
+    */
+    public function createTable($table_name, $columns)
+    {
+        $index = '';
+        $sql = "CREATE TABLE $table_name (";
+        foreach($columns as $col){
+            $sql .= $col['name'].' '.$this->mapType($col['type'], $col['typeValue']).' ';
+            //* Set default value
+            if($col['defaultValue'] != '') {
+			    if($col['defaultValue'] == 'NULL' or $col['defaultValue'] == 'NOT NULL') {
+				    $sql .= 'DEFAULT '.$col['defaultValue'].' ';
+			    } else {
+				    $sql .= "DEFAULT '".$col['defaultValue']."' ";
+			    }
+		    } elseif($col['defaultValue'] != false) {
+			    $sql .= "DEFAULT '' ";
+		    }
+		    if($col['defaultValue'] != 'NULL' && $col['defaultValue'] != 'NOT NULL') {
+                if($col['notNull'] == true) {
+                    $sql .= 'NOT NULL ';
+                } else {
+                    $sql .= 'NULL ';
+                }
+		    }
+            if($col['autoInc'] == true){ $sql .= 'auto_increment '; }
+            $sql.= ',';
+            //* Index Definitions
+            if($col['option'] == 'primary'){ $index .= 'PRIMARY KEY ('.$col['name'].'),'; }
+            if($col['option'] == 'index'){   $index .= 'INDEX ('.$col['name'].'),'; }
+            if($col['option'] == 'unique'){  $index .= 'UNIQUE ('.$col['name'].'),'; }
+        }
        $sql .= $index;
        $sql = substr($sql,0,-1);
-       $sql .= ")";
-       
+       $sql .= ')';  
        $this->query($sql);
        return true;
-       }
-       
-       /*
-       $columns = array(action =>   add | alter | drop
-                        name =>     Spaltenname
-                        name_new => neuer Spaltenname, nur bei 'alter' belegt
-                        type =>     42go-Meta-Type: int16, int32, int64, double, char, varchar, text, blob
-                        typeValue => Wert z.B. bei Varchar
-                        defaultValue =>  Default Wert
-                        notNull =>   true | false
-                        autoInc =>   true | false
-                        option =>   unique | primary | index)
-       
-       
-       */
-       function alterTable($table_name,$columns) {
-       $index = "";
-       $sql = "ALTER TABLE $table_name ";
-       foreach($columns as $col){
-            if($col["action"] == 'add') {
-                $sql .= "ADD ".$col["name"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
-            } elseif ($col["action"] == 'alter') {
-                $sql .= "CHANGE ".$col["name"]." ".$col["name_new"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
-            } elseif ($col["action"] == 'drop') {
-                $sql .= "DROP ".$col["name"]." ";
+    }
+       
+    /** Changes a table definition. The format for the $columns array is 
+    * <code>
+    * $columns = array(action =>   add | alter | drop
+    *                  name =>     Spaltenname
+    *                 name_new => neuer Spaltenname, nur bei 'alter' belegt
+    *                 type =>     42go-Meta-Type: int16, int32, int64, double, char, varchar, text, blob
+    *                 typeValue => Wert z.B. bei Varchar
+    *                 defaultValue =>  Default Wert
+    *                 notNull =>   true | false
+    *                 autoInc =>   true | false
+    *                 option =>   unique | primary | index)
+    */
+    public function alterTable($table_name,$columns)
+    {
+        $index = '';
+        $sql = "ALTER TABLE $table_name ";
+        foreach($columns as $col){
+            if($col['action'] == 'add'){
+                $sql .= 'ADD '.$col['name'].' '.$this->mapType($col['type'], $col['typeValue']).' ';
+            }elseif($col['action'] == 'alter') {
+                $sql .= 'CHANGE '.$col['name'].' '.$col['name_new'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
+            }elseif($col['action'] == 'drop') {
+                $sql .= 'DROP '.$col['name'].' ';
             }
             if($col["action"] != 'drop') {  
             if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
@@ -326,171 +315,109 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
             }
             if($col["autoInc"] == true) $sql .= "auto_increment ";
             $sql.= ",";
-            // key Definitionen
-            if($col["option"] == "primary") $index .= "PRIMARY KEY (".$col["name"]."),";
-            if($col["option"] == "index") $index .= "INDEX (".$col["name"]."),";
-            if($col["option"] == "unique") $index .= "UNIQUE (".$col["name"]."),";
+            //* Index definitions
+            if($col['option'] == 'primary') $index .= 'PRIMARY KEY ('.$col['name'].'),';
+            if($col['option'] == 'index') $index .= 'INDEX ('.$col['name'].'),';
+            if($col['option'] == 'unique') $index .= 'UNIQUE ('.$col['name'].'),';
             }
-       }
-       $sql .= $index;
-       $sql = substr($sql,0,-1);
-       
-       //die($sql);
-       $this->query($sql);
-       return true;
-       }
-       
-       function dropTable($table_name) {
-       $this->check($table_name);
-       $sql = "DROP TABLE '". $table_name."'";
-       return $this->query($sql);
-       }
-       
-       // gibt Array mit Tabellennamen zurück
-       function getTables($database_name = '') {
-	   	
-			if($database_name == '') $database_name = $this->dbName;
-            $result = mysql_list_tables($database_name);
-            for ($i = 0; $i < mysql_num_rows($result); $i++) {
-                $tb_names[$i] = mysql_tablename($result, $i);
-            }
-            return $tb_names;       
-       }
-       
-       // gibt Feldinformationen zur Tabelle zurück
-       /*
-       $columns = array(action =>   add | alter | drop
-                        name =>     Spaltenname
-                        name_new => neuer Spaltenname, nur bei 'alter' belegt
-                        type =>     42go-Meta-Type: int16, int32, int64, double, char, varchar, text, blob
-                        typeValue => Wert z.B. bei Varchar
-                        defaultValue =>  Default Wert
-                        notNull =>   true | false
-                        autoInc =>   true | false
-                        option =>   unique | primary | index)
-       
-       
-       */
+        }
+        $sql .= $index;
+        $sql = substr($sql,0,-1);
+        //die($sql);
+        $this->query($sql);
+        return true;
+    }
+       
+    public function dropTable($table_name) 
+    {
+        $this->check($table_name);
+        $sql = "DROP TABLE '". $table_name."'";
+        return $this->query($sql);
+    }
+       
+    /** Return an array of table names */
+    public function getTables($database_name = '')
+    {
+		if($database_name == ''){
+            $database_name = $this->dbName;
+        }
+        $result = mysql_list_tables($database_name);
+        $tb_names = array();
+        for ($i = 0; $i < mysql_num_rows($result); $i++) {
+            $tb_names[$i] = mysql_tablename($result, $i);
+        }
+        return $tb_names;       
+    }
        
-       function tableInfo($table_name) {
        
-       global $go_api,$go_info;
-       // Tabellenfelder einlesen
-        
-        if($rows = $go_api->db->queryAllRecords("SHOW FIELDS FROM ".$table_name)){
+    public function tableInfo($table_name) {
+        global $go_api,$go_info;
+        //* Tabellenfelder einlesen ?
+        if($rows = $go_api->db->queryAllRecords("SHOW FIELDS FROM $table_name")){
         foreach($rows as $row) {
-            $name = $row[0];
+            $name    = $row[0];
             $default = $row[4];
-            $key = $row[3];
-            $extra = $row[5];
-            $isnull = $row[2];
-            $type = $row[1];
-        
-            
-            $column = array();
+            $key     = $row[3];
+            $extra   = $row[5];
+            $isnull  = $row[2];
+            $type    = $row[1];
         
-            $column["name"] = $name;
+            $column = array('name' => $name, 'defaultValue' => $default);
             //$column["type"] = $type;
-            $column["defaultValue"] = $default;
-            if(stristr($key,"PRI")) $column["option"] = "primary";
-            if(stristr($isnull,"YES")) {
-                $column["notNull"] = false;
-            } else {
-               $column["notNull"] = true; 
-            }
-            if($extra == 'auto_increment') $column["autoInc"] = true;
-            
+            if(stristr($key, 'PRI')){ $column['option'] = 'primary'; }
+            $column['notNull'] = stristr($isnull,'YES') ? false : true;
+            if($extra == 'auto_increment'){ $column['autoInc'] = true; }         
             
-            // Type in Metatype umsetzen
-            
-            if(stristr($type,"int(")) $metaType = 'int32';
-            if(stristr($type,"bigint")) $metaType = 'int64';
-            if(stristr($type,"char")) {
+            //* Get the Data and Metatype
+            if( stristr($type, 'int(') ){    $metaType = 'int32'; }
+            if( stristr($type, 'bigint') ){  $metaType = 'int64'; }
+            if( stristr($type, 'char') ) {
                 $metaType = 'char';
                 $tmp_typeValue = explode('(',$type);
-                $column["typeValue"] = substr($tmp_typeValue[1],0,-1);  
+                $column['typeValue'] = substr($tmp_typeValue[1], 0, -1);  
             }
-            if(stristr($type,"varchar")) {
+            if( stristr($type, 'varchar') ){
                 $metaType = 'varchar';
                 $tmp_typeValue = explode('(',$type);
-                $column["typeValue"] = substr($tmp_typeValue[1],0,-1);  
+                $column['typeValue'] = substr($tmp_typeValue[1], 0, -1);  
             }
-            if(stristr($type,"text")) $metaType = 'text';
-            if(stristr($type,"double")) $metaType = 'double';
-            if(stristr($type,"blob")) $metaType = 'blob';
-            
-            
-            $column["type"] = $metaType;
+            if(stristr($type, 'text'))   $metaType = 'text';
+            if(stristr($type, 'double')) $metaType = 'double';
+            if(stristr($type, 'blob'))   $metaType = 'blob';
             
-        $columns[] = $column;
+            $column['type'] = $metaType;
+            $columns[] = $column;
         }
             return $columns;
         } else {
             return false;
         }
-        
-        
-        //$this->createTable('tester',$columns);
-        
-        /*
-        $result = mysql_list_fields($go_info["server"]["db_name"],$table_name);
-        $fields = mysql_num_fields ($result);
-        $i = 0;
-        $table = mysql_field_table ($result, $i);
-        while ($i < $fields) {
-            $name  = mysql_field_name  ($result, $i);
-            $type  = mysql_field_type  ($result, $i);
-            $len   = mysql_field_len   ($result, $i);
-            $flags = mysql_field_flags ($result, $i);
-            print_r($flags);
-            
-            $columns = array(name => $name,
-                        type =>     "",
-                        defaultValue =>  "",
-                        isnull =>   1,
-                        option =>   "");
-            $returnvar[] = $columns;
-            
-            $i++;
-        }
-        */
-        
-        
-       
-       }
+    }
        
-       function mapType($metaType,$typeValue) {
-       global $go_api;
-       $metaType = strtolower($metaType);
-       switch ($metaType) {
-       case 'int16':
+    public function mapType($metaType, $typeValue) {
+        //TODO: ? this is not required ?? global $go_api;
+        $metaType = strtolower($metaType);
+        switch ($metaType) {
+        case 'int16':
             return 'smallint';
-       break;
-       case 'int32':
+        case 'int32':
             return 'int';
-       break;
-       case 'int64':
+        case 'int64':
             return 'bigint';
-       break;
-       case 'double':
+        case 'double':
             return 'double';
-       break;
-       case 'char':
+        case 'char':
             return 'char';
-       break;
-       case 'varchar':
-            if($typeValue < 1) die("Datenbank Fehler: Für diesen Datentyp ist eine Längenangabe notwendig.");
+        case 'varchar':
+            if($typeValue < 1) die('Datenbank Fehler: F�r diesen Datentyp ist eine L�ngenangabe notwendig.');
             return 'varchar('.$typeValue.')';
-       break;
-       case 'text':
+        case 'text':
             return 'text';
-       break;
-       case 'blob':
+        case 'blob':
             return 'blob';
-       break;
-       }
-       }
-		
-	}
+        }
+    }
+	
+}
 
 ?>
\ No newline at end of file
-- 
GitLab