diff --git a/install/dist/conf/centos52.conf.php b/install/dist/conf/centos52.conf.php
index 89f8f4f6be4f95f62fdf84a41ae52430606b74ed..711271de4658b4069dc705d9d3b944fcf30067e3 100644
--- a/install/dist/conf/centos52.conf.php
+++ b/install/dist/conf/centos52.conf.php
@@ -1,5 +1,33 @@
dbHost = $conf["mysql"]["host"];
+ //$this->dbName = $conf["mysql"]["database"];
+ $this->dbUser = $conf["mysql"]["admin_user"];
+ $this->dbPass = $conf["mysql"]["admin_password"];
+ $this->dbCharset = $conf["mysql"]["charset"];
+ //$this->connect();
+ }
- // constructor
- function db()
+ // error handler
+ function updateError($location)
+ {
+ $this->errorNumber = mysql_errno();
+ $this->errorMessage = mysql_error();
+ $this->errorLocation = $location;
+ if($this->errorNumber && $this->show_error_messages)
{
-
- global $conf;
- $this->dbHost = $conf["mysql"]["host"];
- //$this->dbName = $conf["mysql"]["database"];
- $this->dbUser = $conf["mysql"]["admin_user"];
- $this->dbPass = $conf["mysql"]["admin_password"];
- $this->dbCharset = $conf["mysql"]["charset"];
- //$this->connect();
+ echo('
'.$this->errorLocation.'
'.$this->errorMessage);
+ flush();
}
+ }
- // error handler
- function updateError($location)
+ function connect()
+ {
+ if($this->linkId == 0)
{
- $this->errorNumber = mysql_errno();
- $this->errorMessage = mysql_error();
- $this->errorLocation = $location;
- if($this->errorNumber && $this->show_error_messages)
- {
- echo('
'.$this->errorLocation.'
'.$this->errorMessage);
- flush();
- }
- }
+ $this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
- function connect()
- {
- if($this->linkId == 0)
+ if(!$this->linkId)
{
- $this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
-
- if(!$this->linkId)
- {
- $this->updateError('DB::connect()
mysql_connect');
- return false;
- }
- $this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId);
+ $this->updateError('DB::connect()
mysql_connect');
+ return false;
}
- return true;
+ $this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId);
}
+ return true;
+ }
- function query($queryString)
+ function query($queryString)
+ {
+ if(!$this->connect())
{
- if(!$this->connect())
- {
- return false;
- }
- if($this->dbName != '') {
- if(!mysql_select_db($this->dbName, $this->linkId))
- {
- $this->updateError('DB::connect()
mysql_select_db');
- return false;
- }
- }
- $this->queryId = @mysql_query($queryString, $this->linkId);
- $this->updateError('DB::query('.$queryString.')
mysql_query');
- if(!$this->queryId)
+ return false;
+ }
+ if($this->dbName != '') {
+ if(!mysql_select_db($this->dbName, $this->linkId))
{
+ $this->updateError('DB::connect()
mysql_select_db');
return false;
}
- $this->currentRow = 0;
- return $this->queryId;
}
-
- // returns all records in an array
- function queryAllRecords($queryString)
+ $this->queryId = @mysql_query($queryString, $this->linkId);
+ $this->updateError('DB::query('.$queryString.')
mysql_query');
+ if(!$this->queryId)
{
- if(!$this->query($queryString))
- {
- return false;
- }
- $ret = array();
- while($line = $this->nextRecord())
- {
- $ret[] = $line;
- }
- return $ret;
+ return false;
}
+ $this->currentRow = 0;
+ return $this->queryId;
+ }
- // returns one record in an array
- function queryOneRecord($queryString)
+ // returns all records in an array
+ function queryAllRecords($queryString)
+ {
+ if(!$this->query($queryString))
{
- if(!$this->query($queryString) || $this->numRows() == 0)
- {
- return false;
- }
- return $this->nextRecord();
+ return false;
}
-
- // returns the next record in an array
- function nextRecord()
+ $ret = array();
+ while($line = $this->nextRecord())
{
- $this->record = mysql_fetch_assoc($this->queryId);
- $this->updateError('DB::nextRecord()
mysql_fetch_array');
- if(!$this->record || !is_array($this->record))
- {
- return false;
- }
- $this->currentRow++;
- return $this->record;
+ $ret[] = $line;
}
+ return $ret;
+ }
- // returns number of rows returned by the last select query
- function numRows()
+ // returns one record in an array
+ function queryOneRecord($queryString)
+ {
+ if(!$this->query($queryString) || $this->numRows() == 0)
{
- return mysql_num_rows($this->queryId);
+ return false;
}
-
- function affectedRows()
+ return $this->nextRecord();
+ }
+
+ // returns the next record in an array
+ function nextRecord()
+ {
+ $this->record = mysql_fetch_assoc($this->queryId);
+ $this->updateError('DB::nextRecord()
mysql_fetch_array');
+ if(!$this->record || !is_array($this->record))
{
- return mysql_affected_rows($this->linkId);
+ return false;
}
-
- // returns mySQL insert id
- function insertID()
- {
- return mysql_insert_id($this->linkId);
+ $this->currentRow++;
+ return $this->record;
+ }
+
+ // returns number of rows returned by the last select query
+ function numRows()
+ {
+ return mysql_num_rows($this->queryId);
+ }
+
+ function affectedRows()
+ {
+ return mysql_affected_rows($this->linkId);
+ }
+
+ // returns mySQL insert id
+ function insertID()
+ {
+ return mysql_insert_id($this->linkId);
+ }
+
+ // Check der variablen
+ // deprecated, now use quote
+ function check($formfield)
+ {
+ return $this->quote($formfield);
+ }
+
+ // Check der variablen
+ function quote($formfield)
+ {
+ return mysql_real_escape_string($formfield);
+ }
+
+ // Check der variablen
+ function unquote($formfield)
+ {
+ return stripslashes($formfield);
+ }
+
+ function toLower($record) {
+ if(is_array($record)) {
+ foreach($record as $key => $val) {
+ $key = strtolower($key);
+ $out[$key] = $val;
+ }
}
-
- // Check der variablen
- // deprecated, now use quote
- function check($formfield)
- {
- return $this->quote($formfield);
+ 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."
";
+ $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."
";
+ $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"])." ";
+
+ 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"]."),";
+ }
+ $sql .= $index;
+ $sql = substr($sql,0,-1);
+ $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"]." ";
}
-
- // Check der variablen
- function quote($formfield)
- {
- return mysql_real_escape_string($formfield);
+ if($col["action"] != 'drop') {
+ if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
+ if($col["notNull"] == true) {
+ $sql .= "NOT NULL ";
+ } else {
+ $sql .= "NULL ";
}
-
- // Check der variablen
- function unquote($formfield)
- {
- return stripslashes($formfield);
+ 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"]."),";
}
-
- function toLower($record) {
- if(is_array($record)) {
- foreach($record as $key => $val) {
- $key = strtolower($key);
- $out[$key] = $val;
- }
- }
- 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 .= $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_query("SHOW TABLES FROM `$database_name`");
+ $tb_names = array();
+ 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)
+
+
+ */
+
+ 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];
+ $default = $row[4];
+ $key = $row[3];
+ $extra = $row[5];
+ $isnull = $row[2];
+ $type = $row[1];
+
- $sql = "INSERT INTO $tablename (" . $sql_key . ") VALUES (" . $sql_value .")";
-
- if($debug == 1) echo "SQL-Statement: ".$sql."
";
- $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."
";
- $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"])." ";
-
- 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"]."),";
- }
- $sql .= $index;
- $sql = substr($sql,0,-1);
- $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"]." ";
- }
- if($col["action"] != 'drop') {
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- 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"]."),";
- }
- }
- $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_query("SHOW TABLES FROM `$database_name`");
- $tb_names = array();
- 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)
-
-
- */
-
- function tableInfo($table_name) {
-
- global $go_api,$go_info;
- // Tabellenfelder einlesen
+ $column = array();
+
+ $column["name"] = $name;
+ //$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($rows = $go_api->db->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];
-
- $column = array();
+ // Type in Metatype umsetzen
- $column["name"] = $name;
- //$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;
-
-
- // Type in Metatype umsetzen
-
- 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);
- }
- if(stristr($type,"varchar")) {
- $metaType = 'varchar';
- $tmp_typeValue = explode('(',$type);
- $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;
-
- $columns[] = $column;
+ 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);
}
- return $columns;
- } else {
- return false;
+ if(stristr($type,"varchar")) {
+ $metaType = 'varchar';
+ $tmp_typeValue = explode('(',$type);
+ $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';
- //$this->createTable('tester',$columns);
+ $column["type"] = $metaType;
- /*
- $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++;
- }
- */
+ $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;
-
- }
-
- function mapType($metaType,$typeValue) {
- global $go_api;
- $metaType = strtolower($metaType);
- switch ($metaType) {
- case 'int16':
- return 'smallint';
- break;
- case 'int32':
- return 'int';
- break;
- case 'int64':
- return 'bigint';
- break;
- case 'double':
- return 'double';
- break;
- case 'char':
- return 'char';
- break;
- case 'varchar':
- if($typeValue < 1) die("Datenbank Fehler: F�r diesen Datentyp ist eine L�ngenangabe notwendig.");
- return 'varchar('.$typeValue.')';
- break;
- case 'text':
- return 'text';
- break;
- case 'blob':
- return 'blob';
- break;
- }
- }
-
- }
+ $i++;
+ }
+ */
+
+
+
+ }
+
+ function mapType($metaType,$typeValue) {
+ global $go_api;
+ $metaType = strtolower($metaType);
+ switch ($metaType) {
+ case 'int16':
+ return 'smallint';
+ break;
+ case 'int32':
+ return 'int';
+ break;
+ case 'int64':
+ return 'bigint';
+ break;
+ case 'double':
+ return 'double';
+ break;
+ case 'char':
+ return 'char';
+ break;
+ case 'varchar':
+ if($typeValue < 1) die("Datenbank Fehler: F�r diesen Datentyp ist eine L�ngenangabe notwendig.");
+ return 'varchar('.$typeValue.')';
+ break;
+ case 'text':
+ return 'text';
+ break;
+ case 'blob':
+ return 'blob';
+ break;
+ }
+ }
+
+}
?>
diff --git a/install/options.conf.php b/install/options.conf.php
index bfff3ec00e49436907a30586b8bcd2f5d2453c18..6c5cd19b5047abfd3935580a51e3e33ca1e35aa1 100644
--- a/install/options.conf.php
+++ b/install/options.conf.php
@@ -1,5 +1,33 @@
dbHost = $conf["db_host"];
+ $this->dbName = $conf["db_database"];
+ $this->dbUser = $conf["db_user"];
+ $this->dbPass = $conf["db_password"];
+ $this->connect();
+ }
- // constructor
- function db()
+ // error handler
+ function updateError($location)
+ {
+ //$this->errorNumber = mysql_errno();
+ $this->errorMessage = ibase_errmsg();
+ $this->errorLocation = $location;
+ if($this->errorNumber && $this->show_error_messages)
{
-
- global $conf;
- $this->dbHost = $conf["db_host"];
- $this->dbName = $conf["db_database"];
- $this->dbUser = $conf["db_user"];
- $this->dbPass = $conf["db_password"];
- $this->connect();
+ echo('
'.$this->errorLocation.'
'.$this->errorMessage);
+ flush();
}
+ }
- // error handler
- function updateError($location)
+ function connect()
+ {
+ if($this->linkId == 0)
{
- //$this->errorNumber = mysql_errno();
- $this->errorMessage = ibase_errmsg();
- $this->errorLocation = $location;
- if($this->errorNumber && $this->show_error_messages)
+ $this->linkId = ibase_connect( $this->dbHost.":".$this->dbName , $this->dbUser, $this->dbPass,'ISO8859_1',0,3 );
+ if(!$this->linkId)
{
- echo('
'.$this->errorLocation.'
'.$this->errorMessage);
- flush();
+ $this->updateError('DB::connect()
ibase_pconnect');
+ return false;
}
}
+ return true;
+ }
- function connect()
- {
- if($this->linkId == 0)
- {
- $this->linkId = ibase_connect( $this->dbHost.":".$this->dbName , $this->dbUser, $this->dbPass,'ISO8859_1',0,3 );
- if(!$this->linkId)
- {
- $this->updateError('DB::connect()
ibase_pconnect');
- return false;
- }
- }
- return true;
+ function query($queryString)
+ {
+ if(!$this->connect()) {
+ return false;
}
-
- function query($queryString)
- {
- if(!$this->connect()) {
- return false;
- }
-
- if($this->autoCommit == 1) {
- //$transID = ibase_trans();
- $this->queryId = @ibase_query($this->linkId,$queryString);
- //ibase_commit();
- } else {
- $this->queryId = @ibase_query($this->linkId,$queryString);
- }
-
-
- $this->updateError('DB::query('.$queryString.')
ibase_query');
- if(!$this->queryId) {
- return false;
- }
- $this->currentRow = 0;
- return $this->queryId;
+
+ if($this->autoCommit == 1) {
+ //$transID = ibase_trans();
+ $this->queryId = @ibase_query($this->linkId,$queryString);
+ //ibase_commit();
+ } else {
+ $this->queryId = @ibase_query($this->linkId,$queryString);
}
-
- // returns all records in an array
- function queryAllRecords($queryString)
- {
- if(!$this->query($queryString))
- {
- return false;
- }
- $ret = array();
- while($line = $this->nextRecord())
- {
- $ret[] = $line;
- }
- //$this->freeResult();
- ibase_free_result($this->queryId);
- return $ret;
+
+
+ $this->updateError('DB::query('.$queryString.')
ibase_query');
+ if(!$this->queryId) {
+ return false;
}
+ $this->currentRow = 0;
+ return $this->queryId;
+ }
- // returns one record in an array
- function queryOneRecord($queryString)
+ // returns all records in an array
+ function queryAllRecords($queryString)
+ {
+ if(!$this->query($queryString))
{
- if(!$this->query($queryString))
- {
- return false;
- }
- $result = $this->nextRecord();
- ibase_free_result($this->queryId);
- return $result;
+ return false;
}
-
- // returns the next record in an array
- function nextRecord()
+ $ret = array();
+ while($line = $this->nextRecord())
{
- $this->record = ibase_fetch_assoc($this->queryId);
- $this->updateError('DB::nextRecord()
ibase_fetch_assoc');
- if(!$this->record || !is_array($this->record))
- {
- return false;
- }
- $this->currentRow++;
- return $this->record;
+ $ret[] = $line;
}
+ //$this->freeResult();
+ ibase_free_result($this->queryId);
+ return $ret;
+ }
- // returns number of rows returned by the last select query
- function numRows()
+ // returns one record in an array
+ function queryOneRecord($queryString)
+ {
+ if(!$this->query($queryString))
{
return false;
}
-
- // returns mySQL insert id
- function insertID()
+ $result = $this->nextRecord();
+ ibase_free_result($this->queryId);
+ return $result;
+ }
+
+ // returns the next record in an array
+ function nextRecord()
+ {
+ $this->record = ibase_fetch_assoc($this->queryId);
+ $this->updateError('DB::nextRecord()
ibase_fetch_assoc');
+ if(!$this->record || !is_array($this->record))
{
return false;
}
-
- // Check der variablen
- // deprecated, now use quote
- function check($formfield)
- {
- return $this->quote($formfield);
- }
-
- // Check der variablen
- function quote($formfield)
- {
- return str_replace("'","''",$formfield);
- }
-
- // Check der variablen
- function unquote($formfield)
- {
- return str_replace("''","'",$formfield);
- }
-
- function toLower($record) {
- if(is_array($record)) {
- foreach($record as $key => $val) {
- $key = strtolower($key);
- $out[$key] = $val;
- }
+ $this->currentRow++;
+ return $this->record;
+ }
+
+ // returns number of rows returned by the last select query
+ function numRows()
+ {
+ return false;
+ }
+
+ // returns mySQL insert id
+ function insertID()
+ {
+ return false;
+ }
+
+ // Check der variablen
+ // deprecated, now use quote
+ function check($formfield)
+ {
+ return $this->quote($formfield);
+ }
+
+ // Check der variablen
+ function quote($formfield)
+ {
+ return str_replace("'","''",$formfield);
+ }
+
+ // Check der variablen
+ function unquote($formfield)
+ {
+ return str_replace("''","'",$formfield);
+ }
+
+ function toLower($record) {
+ if(is_array($record)) {
+ foreach($record as $key => $val) {
+ $key = strtolower($key);
+ $out[$key] = $val;
}
- return $out;
}
-
-
- function insert($tablename,$form,$debug = 0)
- {
- if(is_array($form)){
- foreach($form as $key => $value)
- {
- $sql_key .= "$key, ";
- $sql_value .= "'".$this->quote($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."
";
- $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->quote($value)."', ";
- }
- $insql = substr($insql,0,strlen($insql) - 2);
- $sql = "UPDATE $tablename SET " . $insql . " WHERE $bedingung";
- if($debug == 1) echo "SQL-Statement: ".$sql."
";
- $this->query($sql);
- if($debug == 1) echo "mySQL Error Message: ".$this->errorMessage;
- }
- }
-
- function closeConn() {
- ibase_close($this->linkId);
- }
-
- function freeResult() {
- //ibase_free_result();
- }
-
- function delete() {
-
+ return $out;
+ }
+
+
+ function insert($tablename,$form,$debug = 0)
+ {
+ if(is_array($form)){
+ foreach($form as $key => $value)
+ {
+ $sql_key .= "$key, ";
+ $sql_value .= "'".$this->quote($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."
";
+ $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->quote($value)."', ";
+ }
+ $insql = substr($insql,0,strlen($insql) - 2);
+ $sql = "UPDATE $tablename SET " . $insql . " WHERE $bedingung";
+ if($debug == 1) echo "SQL-Statement: ".$sql."
";
+ $this->query($sql);
+ if($debug == 1) echo "mySQL Error Message: ".$this->errorMessage;
}
-
- function trans($action,$transID = null) {
- //action = begin, commit oder rollback
-
- if($action == 'begin') {
- $this->transID = ibase_trans($this->linkId);
- return $this->transID;
- }
-
- if($action == 'commit' and !empty($this->transID)) {
- ibase_commit($this->linkId,$this->transID);
- }
+ }
+
+ function closeConn() {
+ ibase_close($this->linkId);
+ }
+
+ function freeResult() {
+ //ibase_free_result();
+ }
+
+ function delete() {
+
+ }
+
+ function trans($action,$transID = null) {
+ //action = begin, commit oder rollback
+
+ if($action == 'begin') {
+ $this->transID = ibase_trans($this->linkId);
+ return $this->transID;
+ }
- if($action == 'rollback') {
- ibase_rollback($this->linkId,$this->transID);
- }
-
- }
-
- /*
- $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"])." ";
-
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- 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"]."),";
- }
- $sql .= $index;
- $sql = substr($sql,0,-1);
- $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) {
- return false;
- }
-
- 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) {
- return false;
- }
-
- // 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)
-
-
- */
-
- function tableInfo($table_name) {
- return false;
- }
-
- function mapType($metaType,$typeValue) {
- global $go_api;
- $metaType = strtolower($metaType);
- switch ($metaType) {
- case 'int16':
- return 'smallint';
- break;
- case 'int32':
- return 'int';
- break;
- case 'int64':
- return 'bigint';
- break;
- case 'double':
- return 'double';
- break;
- case 'char':
- return 'char';
- break;
- case 'varchar':
- if($typeValue < 1) $go_api->errorMessage("Datenbank Fehler: Für diesen Datentyp ist eine Längenangabe notwendig.");
- return 'varchar('.$typeValue.')';
- break;
- case 'text':
- return 'text';
- break;
- case 'blob':
- return 'blob';
- break;
- }
- }
+ if($action == 'commit' and !empty($this->transID)) {
+ ibase_commit($this->linkId,$this->transID);
+ }
+
+ if($action == 'rollback') {
+ ibase_rollback($this->linkId,$this->transID);
+ }
- }
+ }
+
+ /*
+ $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"])." ";
+
+ if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
+ 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"]."),";
+ }
+ $sql .= $index;
+ $sql = substr($sql,0,-1);
+ $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) {
+ return false;
+ }
+
+ 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) {
+ return false;
+ }
+
+ // 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)
+
+
+ */
+
+ function tableInfo($table_name) {
+ return false;
+ }
+
+ function mapType($metaType,$typeValue) {
+ global $go_api;
+ $metaType = strtolower($metaType);
+ switch ($metaType) {
+ case 'int16':
+ return 'smallint';
+ break;
+ case 'int32':
+ return 'int';
+ break;
+ case 'int64':
+ return 'bigint';
+ break;
+ case 'double':
+ return 'double';
+ break;
+ case 'char':
+ return 'char';
+ break;
+ case 'varchar':
+ if($typeValue < 1) $go_api->errorMessage("Datenbank Fehler: Für diesen Datentyp ist eine Längenangabe notwendig.");
+ return 'varchar('.$typeValue.')';
+ break;
+ case 'text':
+ return 'text';
+ break;
+ case 'blob':
+ return 'blob';
+ break;
+ }
+ }
+
+}
?>
\ No newline at end of file
diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php
index 6caf0c9374a7ee0a98dd2a316eee6d4b0af59a80..ed35b419b9a9032e47ad5613e35f582bc05aa454 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -1,14 +1,7 @@
-* @copyright Copyright © 2005, Till Brehm
-*/
-
class listform_actions {
private $id;
diff --git a/interface/lib/classes/listform_tpl_generator.inc.php b/interface/lib/classes/listform_tpl_generator.inc.php
index 36d026ed6200c0be3b7f0be7969dfcd92aa6e8d4..f1ccddc9ee714d4e410728ce7c6296785fb4148a 100644
--- a/interface/lib/classes/listform_tpl_generator.inc.php
+++ b/interface/lib/classes/listform_tpl_generator.inc.php
@@ -1,7 +1,7 @@
-* @copyright Copyright © 2005, Till Brehm
-*/
-
class searchform_actions {
var $id;
diff --git a/interface/lib/classes/searchform_tpl_generator.inc.php b/interface/lib/classes/searchform_tpl_generator.inc.php
index d72a077583b7d859d494eb56b15ac1f9693f7e50..77e1aa8e2eea583f77731707bf49fc6031d98a24 100644
--- a/interface/lib/classes/searchform_tpl_generator.inc.php
+++ b/interface/lib/classes/searchform_tpl_generator.inc.php
@@ -1,7 +1,7 @@
-* @copyright Copyright © 2005, Till Brehm
-*/
-
class tform_actions {
var $id;
diff --git a/interface/lib/classes/tform_tpl_generator.inc.php b/interface/lib/classes/tform_tpl_generator.inc.php
index 1f10e8efec24e9048977d3d2ba4d2b28e3559245..5a9af704d539e051c7f49efc65d0478b897c1acf 100644
--- a/interface/lib/classes/tform_tpl_generator.inc.php
+++ b/interface/lib/classes/tform_tpl_generator.inc.php
@@ -1,7 +1,7 @@
-* @copyright Copyright © 2005, Falko Timme
+/*
+ DNS validation
*/
class validate_dns {
diff --git a/interface/web/capp.php b/interface/web/capp.php
index 041e79d2612d2bcd8a6ad38cc2853e68b6f6677c..63608812240241c962dc73c9ccd4b8f25fde6933 100644
--- a/interface/web/capp.php
+++ b/interface/web/capp.php
@@ -1,7 +1,7 @@
+Welcome to
diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php
index d045486b67c638c7d1717e3dc0017435924939ef..e0e9e7443f4f18ecdb0e2b36eea8b125f12d1bd8 100644
--- a/server/lib/app.inc.php
+++ b/server/lib/app.inc.php
@@ -1,6 +1,7 @@
dbHost = $conf["db_host"];
+ $this->dbName = $conf["db_database"];
+ $this->dbUser = $conf["db_user"];
+ $this->dbPass = $conf["db_password"];
+ $this->dbCharset = $conf["db_charset"];
+ //$this->connect();
+ }
- // constructor
- function db()
+ // error handler
+ function updateError($location)
+ {
+ $this->errorNumber = mysql_errno();
+ $this->errorMessage = mysql_error();
+ $this->errorLocation = $location;
+ if($this->errorNumber && $this->show_error_messages)
{
-
- global $conf;
- $this->dbHost = $conf["db_host"];
- $this->dbName = $conf["db_database"];
- $this->dbUser = $conf["db_user"];
- $this->dbPass = $conf["db_password"];
- $this->dbCharset = $conf["db_charset"];
- //$this->connect();
+ echo('
'.$this->errorLocation.'
'.$this->errorMessage);
+ flush();
}
+ }
- // error handler
- function updateError($location)
+ function connect()
+ {
+ if($this->linkId == 0)
{
- $this->errorNumber = mysql_errno();
- $this->errorMessage = mysql_error();
- $this->errorLocation = $location;
- if($this->errorNumber && $this->show_error_messages)
+ $this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
+ if(!$this->linkId)
{
- echo('
'.$this->errorLocation.'
'.$this->errorMessage);
- flush();
+ $this->updateError('DB::connect()
mysql_connect');
+ return false;
}
+ $this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId);
}
+ return true;
+ }
- function connect()
+ function query($queryString)
+ {
+ if(!$this->connect())
{
- if($this->linkId == 0)
- {
- $this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
- if(!$this->linkId)
- {
- $this->updateError('DB::connect()
mysql_connect');
- return false;
- }
- $this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId);
- }
- return true;
+ return false;
}
-
- function query($queryString)
+ if(!mysql_select_db($this->dbName, $this->linkId))
{
- if(!$this->connect())
- {
- return false;
- }
- if(!mysql_select_db($this->dbName, $this->linkId))
- {
- $this->updateError('DB::connect()
mysql_select_db');
- return false;
- }
- $this->queryId = @mysql_query($queryString, $this->linkId);
- $this->updateError('DB::query('.$queryString.')
mysql_query');
- if(!$this->queryId)
- {
- return false;
- }
- $this->currentRow = 0;
- return $this->queryId;
+ $this->updateError('DB::connect()
mysql_select_db');
+ return false;
}
-
- // returns all records in an array
- function queryAllRecords($queryString)
+ $this->queryId = @mysql_query($queryString, $this->linkId);
+ $this->updateError('DB::query('.$queryString.')
mysql_query');
+ if(!$this->queryId)
{
- if(!$this->query($queryString))
- {
- return false;
- }
- $ret = array();
- while($line = $this->nextRecord())
- {
- $ret[] = $line;
- }
- return $ret;
+ return false;
}
+ $this->currentRow = 0;
+ return $this->queryId;
+ }
- // returns one record in an array
- function queryOneRecord($queryString)
+ // returns all records in an array
+ function queryAllRecords($queryString)
+ {
+ if(!$this->query($queryString))
{
- if(!$this->query($queryString) || $this->numRows() == 0)
- {
- return false;
- }
- return $this->nextRecord();
+ return false;
}
-
- // returns the next record in an array
- function nextRecord()
+ $ret = array();
+ while($line = $this->nextRecord())
{
- $this->record = mysql_fetch_assoc($this->queryId);
- $this->updateError('DB::nextRecord()
mysql_fetch_array');
- if(!$this->record || !is_array($this->record))
- {
- return false;
- }
- $this->currentRow++;
- return $this->record;
+ $ret[] = $line;
}
+ return $ret;
+ }
- // returns number of rows returned by the last select query
- function numRows()
+ // returns one record in an array
+ function queryOneRecord($queryString)
+ {
+ if(!$this->query($queryString) || $this->numRows() == 0)
{
- return mysql_num_rows($this->queryId);
+ return false;
}
-
- // returns mySQL insert id
- function insertID()
+ return $this->nextRecord();
+ }
+
+ // returns the next record in an array
+ function nextRecord()
+ {
+ $this->record = mysql_fetch_assoc($this->queryId);
+ $this->updateError('DB::nextRecord()
mysql_fetch_array');
+ if(!$this->record || !is_array($this->record))
{
- return mysql_insert_id($this->linkId);
+ return false;
+ }
+ $this->currentRow++;
+ return $this->record;
+ }
+
+ // returns number of rows returned by the last select query
+ function numRows()
+ {
+ return mysql_num_rows($this->queryId);
+ }
+
+ // returns mySQL insert id
+ function insertID()
+ {
+ return mysql_insert_id($this->linkId);
+ }
+
+ // Check der variablen
+ // deprecated, now use quote
+ function check($formfield)
+ {
+ return $this->quote($formfield);
+ }
+
+ // Check der variablen
+ function quote($formfield)
+ {
+ if(!$this->connect()){
+ $this->updateError('WARNING: mysql_connect: Used addslashes instead of mysql_real_escape_string');
+ return addslashes($formfield);
}
-
- // Check der variablen
- // deprecated, now use quote
- function check($formfield)
- {
- return $this->quote($formfield);
- }
- // Check der variablen
- function quote($formfield)
- {
- if(!$this->connect()){
- $this->updateError('WARNING: mysql_connect: Used addslashes instead of mysql_real_escape_string');
- return addslashes($formfield);
+ return mysql_real_escape_string($formfield);
+ }
+
+ // Check der variablen
+ function unquote($formfield)
+ {
+ return stripslashes($formfield);
+ }
+
+ function toLower($record) {
+ if(is_array($record)) {
+ foreach($record as $key => $val) {
+ $key = strtolower($key);
+ $out[$key] = $val;
}
-
- return mysql_real_escape_string($formfield);
+ }
+ 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."
";
+ $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."
";
+ $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"])." ";
+
+ if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
+ if($col["notNull"] == true) {
+ $sql .= "NOT NULL ";
+ } else {
+ $sql .= "NULL ";
}
-
- // Check der variablen
- function unquote($formfield)
- {
- return stripslashes($formfield);
+ 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"]."),";
+ }
+ $sql .= $index;
+ $sql = substr($sql,0,-1);
+ $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"]." ";
}
-
- function toLower($record) {
- if(is_array($record)) {
- foreach($record as $key => $val) {
- $key = strtolower($key);
- $out[$key] = $val;
- }
- }
- 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);
+ if($col["action"] != 'drop') {
+ if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
+ 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"]."),";
+ }
+ }
+ $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)
+
+
+ */
+
+ 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];
+ $default = $row[4];
+ $key = $row[3];
+ $extra = $row[5];
+ $isnull = $row[2];
+ $type = $row[1];
+
- $sql = "INSERT INTO $tablename (" . $sql_key . ") VALUES (" . $sql_value .")";
-
- if($debug == 1) echo "SQL-Statement: ".$sql."
";
- $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."
";
- $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"])." ";
-
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- 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"]."),";
- }
- $sql .= $index;
- $sql = substr($sql,0,-1);
- $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"]." ";
- }
- if($col["action"] != 'drop') {
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- 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"]."),";
- }
- }
- $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)
-
-
- */
-
- function tableInfo($table_name) {
-
- global $go_api,$go_info;
- // Tabellenfelder einlesen
+ $column = array();
+
+ $column["name"] = $name;
+ //$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($rows = $go_api->db->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];
-
- $column = array();
+ // Type in Metatype umsetzen
- $column["name"] = $name;
- //$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;
-
-
- // Type in Metatype umsetzen
-
- 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);
- }
- if(stristr($type,"varchar")) {
- $metaType = 'varchar';
- $tmp_typeValue = explode('(',$type);
- $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;
-
- $columns[] = $column;
+ 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);
}
- return $columns;
- } else {
- return false;
+ if(stristr($type,"varchar")) {
+ $metaType = 'varchar';
+ $tmp_typeValue = explode('(',$type);
+ $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';
- //$this->createTable('tester',$columns);
+ $column["type"] = $metaType;
- /*
- $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++;
- }
- */
+ $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;
-
- }
-
- function mapType($metaType,$typeValue) {
- global $go_api;
- $metaType = strtolower($metaType);
- switch ($metaType) {
- case 'int16':
- return 'smallint';
- break;
- case 'int32':
- return 'int';
- break;
- case 'int64':
- return 'bigint';
- break;
- case 'double':
- return 'double';
- break;
- case 'char':
- return 'char';
- break;
- case 'varchar':
- if($typeValue < 1) die("Datenbank Fehler: Für diesen Datentyp ist eine Längenangabe notwendig.");
- return 'varchar('.$typeValue.')';
- break;
- case 'text':
- return 'text';
- break;
- case 'blob':
- return 'blob';
- break;
- }
- }
-
- }
+ $i++;
+ }
+ */
+
+
+
+ }
+
+ function mapType($metaType,$typeValue) {
+ global $go_api;
+ $metaType = strtolower($metaType);
+ switch ($metaType) {
+ case 'int16':
+ return 'smallint';
+ break;
+ case 'int32':
+ return 'int';
+ break;
+ case 'int64':
+ return 'bigint';
+ break;
+ case 'double':
+ return 'double';
+ break;
+ case 'char':
+ return 'char';
+ break;
+ case 'varchar':
+ if($typeValue < 1) die("Datenbank Fehler: Für diesen Datentyp ist eine Längenangabe notwendig.");
+ return 'varchar('.$typeValue.')';
+ break;
+ case 'text':
+ return 'text';
+ break;
+ case 'blob':
+ return 'blob';
+ break;
+ }
+ }
+
+}
?>
\ No newline at end of file
diff --git a/server/lib/classes/file.inc.php b/server/lib/classes/file.inc.php
index e0bd12f6b4ec38648b8ed9026505e952f7a8186a..67a973ce648616848248ac8592be1301d408eaf8 100644
--- a/server/lib/classes/file.inc.php
+++ b/server/lib/classes/file.inc.php
@@ -1,6 +1,7 @@
log("WARNING: could not open file ".$file, 2);
- return false;
- } else {
- if(filesize($file) > 0){
- $content = fread($fp, filesize($file));
- } else {
- $content = "";
- }
- fclose($fp);
- return $content;
- }
-}
-
-function wf($file, $content){
- global $app;
- $this->mkdirs(dirname($file));
- if(!$fp = fopen ($file, "wb")){
- $app->log("WARNING: could not open file ".$file, 2);
- return false;
- } else {
- fwrite($fp,$content);
- fclose($fp);
- return true;
- }
-}
-
-function af($file, $content){
- global $app;
- $this->mkdirs(dirname($file));
- if(!$fp = fopen ($file, "ab")){
- $app->log("WARNING: could not open file ".$file, 2);
- return false;
- } else {
- fwrite($fp,$content);
- fclose($fp);
- return true;
- }
-}
-
-function no_comments($file, $comment = '#'){
- $content = $this->unix_nl($this->rf($file));
- $lines = explode("\n", $content);
- if(!empty($lines)){
- foreach($lines as $line){
- if(strstr($line, $comment)){
- $pos = strpos($line, $comment);
- if($pos != 0){
- $new_lines[] = substr($line,0,$pos);
+
+ function rf($file){
+ global $app;
+ clearstatcache();
+ if(!$fp = fopen ($file, "rb")){
+ $app->log("WARNING: could not open file ".$file, 2);
+ return false;
+ } else {
+ if(filesize($file) > 0){
+ $content = fread($fp, filesize($file));
} else {
- $new_lines[] = "";
+ $content = "";
}
+ fclose($fp);
+ return $content;
+ }
+ }
+
+ function wf($file, $content){
+ global $app;
+ $this->mkdirs(dirname($file));
+ if(!$fp = fopen ($file, "wb")){
+ $app->log("WARNING: could not open file ".$file, 2);
+ return false;
} else {
- $new_lines[] = $line;
+ fwrite($fp,$content);
+ fclose($fp);
+ return true;
}
}
- }
- if(is_array($new_lines)){
- $content_without_comments = implode("\n", $new_lines);
- $new_lines = NULL;
- return $content_without_comments;
- } else {
- return "";
- }
-}
-
-function manual_entries($file, $separator = '#### MAKE MANUAL ENTRIES BELOW THIS LINE! ####'){
- if(is_file($file)){
- $content = $this->rf($file);
- $parts = explode($separator, $content);
- $manual = "\n".trim($parts[1]);
- return $manual;
- } else {
- return "";
- }
-}
-
-function remove_blank_lines($input, $file = 1){
- //Leerzeilen löschen
- if($file){
- $content = $this->unix_nl($this->rf($input));
- } else {
- $content = $input;
- }
- $lines = explode("\n", $content);
- if(!empty($lines)){
- foreach($lines as $line){
- if(trim($line) != "") $new_lines[] = $line;
+
+ function af($file, $content){
+ global $app;
+ $this->mkdirs(dirname($file));
+ if(!$fp = fopen ($file, "ab")){
+ $app->log("WARNING: could not open file ".$file, 2);
+ return false;
+ } else {
+ fwrite($fp,$content);
+ fclose($fp);
+ return true;
+ }
}
- }
- if(is_array($new_lines)){
- $content = implode("\n", $new_lines);
- } else {
- $content = "";
- }
- if($file){
- $this->wf($input, $content);
- } else {
- return $content;
- }
-}
-
-function unix_nl($input){
- $output = str_replace("\r\n", "\n", $input);
- $output = str_replace("\r", "\n", $output);
- return $output;
-}
-
-function fileowner($file){
- $owner_id = fileowner($file);
- clearstatcache();
- return $owner_id;
-}
-
-function mkdirs($strPath, $mode = '0755'){
- // Verzeichnisse rekursiv erzeugen
- if(is_dir($strPath)) return true;
- $pStrPath = dirname($strPath);
- if(!$this->mkdirs($pStrPath, $mode)) return false;
- $old_umask = umask(0);
- $ret_val = mkdir($strPath, octdec($mode));
- umask($old_umask);
- return $ret_val;
-}
-
-function find_includes($file){
- ob_start();
- $httpd_root = system('httpd -V | awk -F"\"" \'$1==" -D HTTPD_ROOT="{print $2}\'');
- ob_end_clean();
- clearstatcache();
- if(is_file($file) && filesize($file) > 0){
- $includes[] = $file;
- $inhalt = $this->unix_nl($this->no_comments($file));
- $lines = explode("\n", $inhalt);
- if(!empty($lines)){
- foreach($lines as $line){
- if(stristr($line, "include ")){
- $include_file = str_replace("\n", "", trim(shell_exec("echo \"$line\" | awk '{print \$2}'")));
- if(substr($include_file,0,1) != "/"){
- $include_file = $httpd_root."/".$include_file;
- }
- if(is_file($include_file)){
- if($further_includes = $this->find_includes($include_file)){
- $includes = array_merge($includes, $further_includes);
+
+ function no_comments($file, $comment = '#'){
+ $content = $this->unix_nl($this->rf($file));
+ $lines = explode("\n", $content);
+ if(!empty($lines)){
+ foreach($lines as $line){
+ if(strstr($line, $comment)){
+ $pos = strpos($line, $comment);
+ if($pos != 0){
+ $new_lines[] = substr($line,0,$pos);
+ } else {
+ $new_lines[] = "";
}
} else {
- if(strstr($include_file, "*")){
- $more_files = explode("\n", shell_exec("ls -l $include_file | awk '{print \$9}'"));
- if(!empty($more_files)){
- foreach($more_files as $more_file){
- if(is_file($more_file)){
- if($further_includes = $this->find_includes($more_file)){
- $includes = array_merge($includes, $further_includes);
+ $new_lines[] = $line;
+ }
+ }
+ }
+ if(is_array($new_lines)){
+ $content_without_comments = implode("\n", $new_lines);
+ $new_lines = NULL;
+ return $content_without_comments;
+ } else {
+ return "";
+ }
+ }
+
+ function manual_entries($file, $separator = '#### MAKE MANUAL ENTRIES BELOW THIS LINE! ####'){
+ if(is_file($file)){
+ $content = $this->rf($file);
+ $parts = explode($separator, $content);
+ $manual = "\n".trim($parts[1]);
+ return $manual;
+ } else {
+ return "";
+ }
+ }
+
+ function remove_blank_lines($input, $file = 1){
+ //Leerzeilen löschen
+ if($file){
+ $content = $this->unix_nl($this->rf($input));
+ } else {
+ $content = $input;
+ }
+ $lines = explode("\n", $content);
+ if(!empty($lines)){
+ foreach($lines as $line){
+ if(trim($line) != "") $new_lines[] = $line;
+ }
+ }
+ if(is_array($new_lines)){
+ $content = implode("\n", $new_lines);
+ } else {
+ $content = "";
+ }
+ if($file){
+ $this->wf($input, $content);
+ } else {
+ return $content;
+ }
+ }
+
+ function unix_nl($input){
+ $output = str_replace("\r\n", "\n", $input);
+ $output = str_replace("\r", "\n", $output);
+ return $output;
+ }
+
+ function fileowner($file){
+ $owner_id = fileowner($file);
+ clearstatcache();
+ return $owner_id;
+ }
+
+ function mkdirs($strPath, $mode = '0755'){
+ // Verzeichnisse rekursiv erzeugen
+ if(is_dir($strPath)) return true;
+ $pStrPath = dirname($strPath);
+ if(!$this->mkdirs($pStrPath, $mode)) return false;
+ $old_umask = umask(0);
+ $ret_val = mkdir($strPath, octdec($mode));
+ umask($old_umask);
+ return $ret_val;
+ }
+
+ function find_includes($file){
+ ob_start();
+ $httpd_root = system('httpd -V | awk -F"\"" \'$1==" -D HTTPD_ROOT="{print $2}\'');
+ ob_end_clean();
+ clearstatcache();
+ if(is_file($file) && filesize($file) > 0){
+ $includes[] = $file;
+ $inhalt = $this->unix_nl($this->no_comments($file));
+ $lines = explode("\n", $inhalt);
+ if(!empty($lines)){
+ foreach($lines as $line){
+ if(stristr($line, "include ")){
+ $include_file = str_replace("\n", "", trim(shell_exec("echo \"$line\" | awk '{print \$2}'")));
+ if(substr($include_file,0,1) != "/"){
+ $include_file = $httpd_root."/".$include_file;
+ }
+ if(is_file($include_file)){
+ if($further_includes = $this->find_includes($include_file)){
+ $includes = array_merge($includes, $further_includes);
+ }
+ } else {
+ if(strstr($include_file, "*")){
+ $more_files = explode("\n", shell_exec("ls -l $include_file | awk '{print \$9}'"));
+ if(!empty($more_files)){
+ foreach($more_files as $more_file){
+ if(is_file($more_file)){
+ if($further_includes = $this->find_includes($more_file)){
+ $includes = array_merge($includes, $further_includes);
+ }
+ }
}
}
}
@@ -194,126 +196,124 @@ function find_includes($file){
}
}
}
+ if(is_array($includes)){
+ $includes = array_unique($includes);
+ return $includes;
+ } else {
+ return false;
+ }
}
- }
- if(is_array($includes)){
- $includes = array_unique($includes);
- return $includes;
- } else {
- return false;
- }
-}
-
-function edit_dist($var, $val){
- global $$var;
- $files = array("/root/ispconfig/dist.inc.php");
- foreach($files as $file){
- if(is_file($file)){
- $file_content = $this->unix_nl($this->rf($file));
- $lines = explode("\n", $file_content);
- for($i=0;$iunix_nl($this->rf($file));
+ $lines = explode("\n", $file_content);
+ for($i=0;$iwf($file, $file_content);
}
- $lines[$i] = implode("=", $parts);
}
- $file_content = implode("\n", $lines);
- $this->wf($file, $file_content);
}
- }
-}
-
-function getDirectoryListing($dirname, $sortorder = "a", $show_subdirs = 0, $show_subdirfiles = 0, $exts = "", $ext_save = 1){
-// This function will return an array with filenames based on the criteria you can set in the variables
-// @sortorder : a for ascending (the standard) or d for descending (you can use the "r" for reverse as well, works the same)
-// @show_subdirs : 0 for NO, 1 for YES - meaning it will show the names of subdirectories if there are any
-// Logically subdirnames will not be checked for the required extentions
-// @show_subdirfiles : 0 for NO, 1 for YES - meaning it will show files from the subdirs
-// Files from subdirs will be prefixed with the subdir name and checked for the required extentions.
-// @exts can be either a string or an array, if not passed to the function, then the default will be a check for common image files
-// If exts is set to "all" then all extentions are allowed
-// @ext_save : 1 for YES, 0 for NO - meaning it will filter out system files or not (such as .htaccess)
-
- $dirname = realpath($dirname);
- if (!$exts || empty($exts) || $exts == "") {
- $exts = array("jpg", "gif", "jpeg", "png");
- }
- if ($handle = opendir($dirname)) {
- $filelist = array();
- while (false !== ($file = readdir($handle))) {
-
- // Filter out higher directory references
- if ($file != "." && $file != "..") {
- // Only look at directories or files, filter out symbolic links
- if ( filetype ($dirname."/".$file) != "link") {
- // If it's a file, check against valid extentions and add to the list
- if ( filetype ($dirname."/".$file) == "file" ) {
- if ($this->checkFileExtension($file, $exts, $ext_save)) {
- $filelist[] = $file;
- }
- }
- // If it's a directory and either subdirs should be listed or files from subdirs add relevant names to the list
- else if ( filetype ($dirname."/".$file) == "dir" && ($show_subdirs == 1 || $show_subdirfiles == 1)) {
- if ($show_subdirs == 1) {
- $filelist[] = $file;
+
+ function getDirectoryListing($dirname, $sortorder = "a", $show_subdirs = 0, $show_subdirfiles = 0, $exts = "", $ext_save = 1){
+ // This function will return an array with filenames based on the criteria you can set in the variables
+ // @sortorder : a for ascending (the standard) or d for descending (you can use the "r" for reverse as well, works the same)
+ // @show_subdirs : 0 for NO, 1 for YES - meaning it will show the names of subdirectories if there are any
+ // Logically subdirnames will not be checked for the required extentions
+ // @show_subdirfiles : 0 for NO, 1 for YES - meaning it will show files from the subdirs
+ // Files from subdirs will be prefixed with the subdir name and checked for the required extentions.
+ // @exts can be either a string or an array, if not passed to the function, then the default will be a check for common image files
+ // If exts is set to "all" then all extentions are allowed
+ // @ext_save : 1 for YES, 0 for NO - meaning it will filter out system files or not (such as .htaccess)
+
+ $dirname = realpath($dirname);
+ if (!$exts || empty($exts) || $exts == "") {
+ $exts = array("jpg", "gif", "jpeg", "png");
+ }
+ if ($handle = opendir($dirname)) {
+ $filelist = array();
+ while (false !== ($file = readdir($handle))) {
+
+ // Filter out higher directory references
+ if ($file != "." && $file != "..") {
+ // Only look at directories or files, filter out symbolic links
+ if ( filetype ($dirname."/".$file) != "link") {
+ // If it's a file, check against valid extentions and add to the list
+ if ( filetype ($dirname."/".$file) == "file" ) {
+ if ($this->checkFileExtension($file, $exts, $ext_save)) {
+ $filelist[] = $file;
+ }
}
- if ($show_subdirfiles == 1) {
- $subdirname = $file;
- $subdirfilelist = $this->getDirectoryListing($dirname."/".$subdirname."/", $sortorder, $show_subdirs, $show_subdirfiles, $exts, $ext_save);
- for ($i = 0 ; $i < count($subdirfilelist) ; $i++) {
- $subdirfilelist[$i] = $subdirname."/".$subdirfilelist[$i];
+ // If it's a directory and either subdirs should be listed or files from subdirs add relevant names to the list
+ else if ( filetype ($dirname."/".$file) == "dir" && ($show_subdirs == 1 || $show_subdirfiles == 1)) {
+ if ($show_subdirs == 1) {
+ $filelist[] = $file;
}
- $filelist = array_merge($filelist, $subdirfilelist);
+ if ($show_subdirfiles == 1) {
+ $subdirname = $file;
+ $subdirfilelist = $this->getDirectoryListing($dirname."/".$subdirname."/", $sortorder, $show_subdirs, $show_subdirfiles, $exts, $ext_save);
+ for ($i = 0 ; $i < count($subdirfilelist) ; $i++) {
+ $subdirfilelist[$i] = $subdirname."/".$subdirfilelist[$i];
+ }
+ $filelist = array_merge($filelist, $subdirfilelist);
+ }
+
}
-
+
}
-
}
}
- }
- closedir($handle);
-
- // Sort the results
- if (count($filelist) > 1) {
- natcasesort($filelist);
- if ($sortorder == "d" || $sortorder == "r" ) {
- $filelist = array_reverse($filelist, TRUE);
+ closedir($handle);
+
+ // Sort the results
+ if (count($filelist) > 1) {
+ natcasesort($filelist);
+ if ($sortorder == "d" || $sortorder == "r" ) {
+ $filelist = array_reverse($filelist, TRUE);
+ }
}
+ return $filelist;
}
- return $filelist;
- }
- else {
- return false;
- }
-}
-
-function checkFileExtension($filename, $exts, $ext_save = 1){
- $passed = FALSE;
- if ($ext_save == 1) {
- if (preg_match("/^\./", $filename)) {
- return $passed;
+ else {
+ return false;
}
- }
- if ($exts == "all") {
- $passed = TRUE;
- return $passed;
- }
- if (is_string($exts)) {
- if (eregi("\.". $exts ."$", $filename)) {
+ }
+
+ function checkFileExtension($filename, $exts, $ext_save = 1){
+ $passed = FALSE;
+ if ($ext_save == 1) {
+ if (preg_match("/^\./", $filename)) {
+ return $passed;
+ }
+ }
+ if ($exts == "all") {
$passed = TRUE;
return $passed;
}
- } else if (is_array($exts)) {
- foreach ($exts as $theExt) {
- if (eregi("\.". $theExt ."$", $filename)) {
- $passed = TRUE;
+ if (is_string($exts)) {
+ if (eregi("\.". $exts ."$", $filename)) {
+ $passed = TRUE;
return $passed;
}
+ } else if (is_array($exts)) {
+ foreach ($exts as $theExt) {
+ if (eregi("\.". $theExt ."$", $filename)) {
+ $passed = TRUE;
+ return $passed;
+ }
+ }
}
- }
- return $passed;
-}
+ return $passed;
+ }
}
?>
\ No newline at end of file
diff --git a/server/lib/classes/getconf.inc.php b/server/lib/classes/getconf.inc.php
index fd0c08864900d12b10f65073ed74ba0e8f50a3e7..7bff61fc91b75d29a3ff3ea45b03b9c325f650d5 100644
--- a/server/lib/classes/getconf.inc.php
+++ b/server/lib/classes/getconf.inc.php
@@ -1,7 +1,7 @@