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 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //*** Fedora 9 default settings //* Main diff --git a/install/dist/conf/debian40.conf.php b/install/dist/conf/debian40.conf.php index e7dee4629466a6751c31e0367fbd21a50d239e34..6b3bc6d3c17f8e30f593eaeeee7cb50162df254e 100644 --- a/install/dist/conf/debian40.conf.php +++ b/install/dist/conf/debian40.conf.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //*** Debian 4.0 default settings //* Main diff --git a/install/dist/conf/fedora9.conf.php b/install/dist/conf/fedora9.conf.php index 3f27d9796590d97a621cd5412f4f473d23d24ca1..11ea2a7e83ebf0df6f923846d660b1d135358c42 100644 --- a/install/dist/conf/fedora9.conf.php +++ b/install/dist/conf/fedora9.conf.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //*** Fedora 9 default settings //* Main diff --git a/install/dist/conf/gentoo.conf.php b/install/dist/conf/gentoo.conf.php index cc58b6d61514d565c58ba0ce93012fb107cce626..76c684894b1e5b66b75cf9e90b38e99a8fdd26b7 100644 --- a/install/dist/conf/gentoo.conf.php +++ b/install/dist/conf/gentoo.conf.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //*** Gentoo default settings //* Main diff --git a/install/dist/conf/opensuse110.conf.php b/install/dist/conf/opensuse110.conf.php index 6191ad2a0e87ff577c6452de5b46561f900a014d..40d86b40ee6f71d9bdc56f0fa99f22bc754e8ff5 100644 --- a/install/dist/conf/opensuse110.conf.php +++ b/install/dist/conf/opensuse110.conf.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //*** OpenSUSE 11.0 default settings //* Main diff --git a/install/dist/lib/centos52.lib.php b/install/dist/lib/centos52.lib.php index aed95f5e7dec9351e3900adae37a63e3825f06c2..da77b423aecf247618a2647aa4b2663d64651ad4 100644 --- a/install/dist/lib/centos52.lib.php +++ b/install/dist/lib/centos52.lib.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 1c00c4a7b9282e4120240a99630fa9f7bc6d7ddd..3e6c7e8ddc6bf9fb6d3aa5390b45873d970a0828 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/install/dist/lib/fedora9.lib.php b/install/dist/lib/fedora9.lib.php index aed95f5e7dec9351e3900adae37a63e3825f06c2..da77b423aecf247618a2647aa4b2663d64651ad4 100644 --- a/install/dist/lib/fedora9.lib.php +++ b/install/dist/lib/fedora9.lib.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index 1eba74e7945e96ddb91055c27bf3d5595ac288b5..ccbc943bdd083c53ee02124a4ad3532919e7ecfb 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/install/dist/lib/opensuse110.lib.php b/install/dist/lib/opensuse110.lib.php index aed95f5e7dec9351e3900adae37a63e3825f06c2..da77b423aecf247618a2647aa4b2663d64651ad4 100644 --- a/install/dist/lib/opensuse110.lib.php +++ b/install/dist/lib/opensuse110.lib.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php index c78c0f03b3c93d72107b2fe58dda6a6c95521413..a0bc33fda6058f652cf2cafc4cfe4d8bbaab7c0b 100644 --- a/install/lib/install.lib.php +++ b/install/lib/install.lib.php @@ -31,7 +31,6 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. /* This function returns a string that describes the installed linux distribution. e.g. debian40 for Debian Linux 4.0 - */ diff --git a/install/lib/mysql.lib.php b/install/lib/mysql.lib.php index ec3e741c9f6fe332f49f2a0bf0f0c0980c0cd49b..0dc8f4bbbd9ba0e5589654122ed73d7d303ee009 100644 --- a/install/lib/mysql.lib.php +++ b/install/lib/mysql.lib.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,479 +28,479 @@ 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 +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 $dbCharset = ""; // what charset comes and goes to mysql: utf8 / latin1 + 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; + + // constructor + function 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 $dbCharset = ""; // what charset comes and goes to mysql: utf8 / latin1 - 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; + + 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(); + } - // 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('<br /><b>'.$this->errorLocation.'</b><br />'.$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('<br /><b>'.$this->errorLocation.'</b><br />'.$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()<br />mysql_connect'); - return false; - } - $this->queryId = @mysql_query('SET NAMES '.$this->dbCharset, $this->linkId); + $this->updateError('DB::connect()<br />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()<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; + } + if($this->dbName != '') { + if(!mysql_select_db($this->dbName, $this->linkId)) { + $this->updateError('DB::connect()<br />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.')<br />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()<br />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()<br />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."<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"])." "; + + 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."<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"])." "; - - 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 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //** TODO: These options need to be in an install script somehow //** Installation Options diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 01ef1ec1a4fcf83197c7e38fdac94a469afa69ca..bb8b52d50c077b5756587e0a53a45872af16bd60 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1,4 +1,32 @@ +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + -- ISPConfig 3 -- DB-Version: 3.0.0.8 diff --git a/install/tpl/config.inc.php.master b/install/tpl/config.inc.php.master index c8796b81f3020013ae0889e8d64f182534676bb6..bdc74e26e5cb778617ed2ca2aa6d821e99b29023 100644 --- a/install/tpl/config.inc.php.master +++ b/install/tpl/config.inc.php.master @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2008, Till Brehm, Falko Timme, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 65fcc45c502ec495def15fb6da3609fb1f8bd3f8..9ff30fed8b5f01d9a2f2f7fcad89a0f1496a7c08 100644 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -1,15 +1,7 @@ <?php -/** - * Application Class - * - * @author Till Brehm - * @copyright 2005, Till Brehm, projektfarm Gmbh - * @version 0.1 - * @package ISPConfig - */ /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -36,6 +28,10 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* + Application Class +*/ + ob_start('ob_gzhandler'); class app { diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php index 3bd5f5cb76098674b96c6403aab46229d5001120..437862af34fcbbc565a27c9dfe65201da18a80cb 100644 --- a/interface/lib/classes/auth.inc.php +++ b/interface/lib/classes/auth.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/cmstree.inc.php b/interface/lib/classes/cmstree.inc.php index 1a3cb847352038d0b223ab929ca9562b067b66f3..2a590008e2029b13f49fe13cdcf28d77cd7fd51c 100644 --- a/interface/lib/classes/cmstree.inc.php +++ b/interface/lib/classes/cmstree.inc.php @@ -1,14 +1,7 @@ <? -/** - * cmstree Class - * - * @author Till Brehm - * @copyright 2005, Till Brehm, projektfarm Gmbh - * @version 0.1 - * @package ISPConfig - */ + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/db_firebird.inc.php b/interface/lib/classes/db_firebird.inc.php index e02a87849fe160e911ea4c980ec45d453aa29e42..d358b00383c0d2f75bb4ae168cc13de5b6ebc383 100644 --- a/interface/lib/classes/db_firebird.inc.php +++ b/interface/lib/classes/db_firebird.inc.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,354 +28,353 @@ 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 +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; + var $transID; + + // constructor + function 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; - var $transID; + + global $conf; + $this->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('<br /><b>'.$this->errorLocation.'</b><br />'.$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('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage); - flush(); + $this->updateError('DB::connect()<br />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()<br />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.')<br />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.')<br />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()<br />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()<br />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."<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->quote($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() { - 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."<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->quote($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 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 @@ <?php -/** - * mySQL Database class - * - * @author Till Brehm - * @copyright 2005, Till Brehm, projektfarm Gmbh - * @version 0.2 - * @package ISPConfig - */ + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -35,8 +28,7 @@ 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 -{ +class db { private $dbHost = ''; // hostname of the MySQL server private $dbName = ''; // logical database name on that server private $dbUser = ''; // database authorized user diff --git a/interface/lib/classes/form.inc.php b/interface/lib/classes/form.inc.php index e3c1bff1a7f19019b73c4f6d782975ca3cda2b99..f0e8de6454cffa88a37cf3092aa90ed26c9eebbc 100644 --- a/interface/lib/classes/form.inc.php +++ b/interface/lib/classes/form.inc.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/getconf.inc.php b/interface/lib/classes/getconf.inc.php index e2dc32777bc12f20173073d6b4e52b74df4f7876..097342c53adde7bdc918e9f2e9cda6a7daeb7fb2 100644 --- a/interface/lib/classes/getconf.inc.php +++ b/interface/lib/classes/getconf.inc.php @@ -1,14 +1,7 @@ <?php -/** - * getconf class - * - * @author Till Brehm - * @copyright 2005, Till Brehm, projektfarm Gmbh - * @version 0.1 - * @package ISPConfig - */ + /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/ini_parser.inc.php b/interface/lib/classes/ini_parser.inc.php index 67e6542bf3ba282fb391f6b4390e612b76c83574..76bbc131bf0be16d80e7d9193be3ea5cbaf90818 100644 --- a/interface/lib/classes/ini_parser.inc.php +++ b/interface/lib/classes/ini_parser.inc.php @@ -1,15 +1,7 @@ <?php -/** - * ini parser - * - * @author Till Brehm - * @copyright 2005, Till Brehm, projektfarm Gmbh - * @version 0.1 - * @package ISPConfig - */ /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/listform.inc.php b/interface/lib/classes/listform.inc.php index 31086e85fd72a99356011cf00b992566fab8728b..12d3e18036a532601dd14b4a4de0810f1f80b873 100644 --- a/interface/lib/classes/listform.inc.php +++ b/interface/lib/classes/listform.inc.php @@ -28,14 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* Listenbehandlung -* -* @package listform -* @author Till Brehm -* @version 1.1 -*/ - class listform { private $debug = 0; diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php index e90bdc81b74d194e84239baeecca3f2d4cda5c4b..e57051415bb372c48d6d77e2e268b98b275a0af9 100644 --- a/interface/lib/classes/listform_actions.inc.php +++ b/interface/lib/classes/listform_actions.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,13 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* Action framework for the listform library. -* -* @author Till Brehm <t.brehm@scrigo.org> -* @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 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class listform_tpl_generator { function buildHTML($listDef,$module = '') { diff --git a/interface/lib/classes/plugin_base.inc.php b/interface/lib/classes/plugin_base.inc.php index 1ac14829b851eda0c65f0fefed82937135ce5ef3..cde853fc87d365128b76babb00d21e316b07a11e 100644 --- a/interface/lib/classes/plugin_base.inc.php +++ b/interface/lib/classes/plugin_base.inc.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + class plugin_base { var $plugin_name; diff --git a/interface/lib/classes/plugin_dbhistory.inc.php b/interface/lib/classes/plugin_dbhistory.inc.php index 7c2c4e3bd287c197604000d858dc012caeca0922..876dcaf048c7d3c448eec090ee615c21e4830ab9 100644 --- a/interface/lib/classes/plugin_dbhistory.inc.php +++ b/interface/lib/classes/plugin_dbhistory.inc.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + class plugin_dbhistory extends plugin_base { var $module; diff --git a/interface/lib/classes/plugin_listview.inc.php b/interface/lib/classes/plugin_listview.inc.php index 771cd5bf0957e8d07519197f44d212e5c644e588..ee254da065a645328cb597dc76a45d278175ec42 100644 --- a/interface/lib/classes/plugin_listview.inc.php +++ b/interface/lib/classes/plugin_listview.inc.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + class plugin_listview extends plugin_base { var $module; diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php index c9ec53b78178f187272f4c16bee92af6e0944108..f3263dd82e25682389a0f3a997240bb57632d7a8 100644 --- a/interface/lib/classes/remoting.inc.php +++ b/interface/lib/classes/remoting.inc.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + class remoting { //* remote session timeout in seconds diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php index eca27ad0f0ccf4655a006adb0ce887363e1a06b1..7d0d7f73fe96777a9661121b346ffa82bb4d1b5e 100644 --- a/interface/lib/classes/remoting_lib.inc.php +++ b/interface/lib/classes/remoting_lib.inc.php @@ -58,10 +58,6 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * Hinweis: * Das ID-Feld ist nicht bei den Table Values einzufügen. -* -* @package form -* @author Till Brehm -* @version 1.1 */ class remoting_lib { diff --git a/interface/lib/classes/searchform.inc.php b/interface/lib/classes/searchform.inc.php index 25a941293d96080b48f96770d73c166588eedd5a..9c0c0dd35913fe2ad876be918bcea8085a2b633e 100644 --- a/interface/lib/classes/searchform.inc.php +++ b/interface/lib/classes/searchform.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,14 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* Listenbehandlung -* -* @package searchform -* @author Till Brehm -* @version 1.1 -*/ - class searchform { public $debug = 0; diff --git a/interface/lib/classes/searchform_actions.inc.php b/interface/lib/classes/searchform_actions.inc.php index e128ce8e4e60c166c1cbf6e47cece073d08403f3..edba2b9f69861a1938932ad5d58e9a5dffde9406 100644 --- a/interface/lib/classes/searchform_actions.inc.php +++ b/interface/lib/classes/searchform_actions.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,13 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* Action framework for the searchform library. -* -* @author Till Brehm <t.brehm@scrigo.org> -* @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 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class searchform_tpl_generator { function buildHTML($listDef,$module = '') { diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php index dbb17fa6e142877f6eece3b242b6d6b860d819c2..c9baa5cb173a503360718cfb6dd9ba64310c7ed1 100644 --- a/interface/lib/classes/tform.inc.php +++ b/interface/lib/classes/tform.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -56,9 +56,6 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * Hint: The auto increment (ID) filed of the table has not be be definied eoarately. * -* @package form -* @author Till Brehm -* @version 1.1 */ class tform { diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php index 812c792965f42d2b4a71f92277a3b3b6d42b1cdb..214b6eb1c89c5ee4845b40224a0a3292855511a6 100644 --- a/interface/lib/classes/tform_actions.inc.php +++ b/interface/lib/classes/tform_actions.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,13 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* Action framework for the tform library. -* -* @author Till Brehm <t.brehm@scrigo.org> -* @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 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class tform_tpl_generator { function buildHTML($formDef,$tab) { diff --git a/interface/lib/classes/tree.inc.php b/interface/lib/classes/tree.inc.php index af030ae4f255cc6d990368f6c34bebc5868efbb9..170d1268810e24073520128e436fb5ea8ed88905 100644 --- a/interface/lib/classes/tree.inc.php +++ b/interface/lib/classes/tree.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/lib/classes/validate_client.inc.php b/interface/lib/classes/validate_client.inc.php index a7b7ae8b065076d8e32fd0708767d2cf849d4fa3..9c81aa3ea81abe0e6c13426c344332d5353c0308 100644 --- a/interface/lib/classes/validate_client.inc.php +++ b/interface/lib/classes/validate_client.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2007, Till Brehm, Falko Timme, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class validate_client { /* diff --git a/interface/lib/classes/validate_dns.inc.php b/interface/lib/classes/validate_dns.inc.php index 938a8fa51219504d7e8b23829a76a2a01455c4a6..95f1d42f995cd9419702c452b2a8ea05c652863c 100644 --- a/interface/lib/classes/validate_dns.inc.php +++ b/interface/lib/classes/validate_dns.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, Falko Timme, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -28,11 +28,8 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** -* DNS validation -* -* @author Falko Timme <ft@falkotimme.com> -* @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 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/web/clang.php b/interface/web/clang.php index 35e0580ce8019512f58d92b06e8806592bf6b5ff..5184712918fcfaabcbbd92459279be5ec8ef6f41 100644 --- a/interface/web/clang.php +++ b/interface/web/clang.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/web/content.php b/interface/web/content.php index 9e6382d13191617fbd5500da2584a0a74a16304b..cd19cd429f4c04befb7f4e5f42658756d20f1e62 100644 --- a/interface/web/content.php +++ b/interface/web/content.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/web/index.php b/interface/web/index.php index 419f755f9a6599a0918fc23ce6dbeca03ec26619..8ec46be5ee7fe7f86066fc46866c5bcc133fb94c 100644 --- a/interface/web/index.php +++ b/interface/web/index.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/web/keepalive.php b/interface/web/keepalive.php index c16605546facd8015c2d292acd4c38095dd943c3..fd9c1d7219e52a44f598b5eeadb7c85bdb0fe109 100644 --- a/interface/web/keepalive.php +++ b/interface/web/keepalive.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/interface/web/nav.php b/interface/web/nav.php index 8b22948cc12a1183680da55c404f69c7da144a74..c3f550a36be66a71a6260d2a75f690ed8f906e9b 100644 --- a/interface/web/nav.php +++ b/interface/web/nav.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/remoting_client/example.php b/remoting_client/example.php index 89590348c273599ef4f2ba30b4c2ad3a7cca1d3c..ddef0ee142c5ba964a66a9c770c84efa79186b9a 100644 --- a/remoting_client/example.php +++ b/remoting_client/example.php @@ -1,5 +1,33 @@ <?php +/* +Copyright (c) 2007, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + //* Examples for the remoting framework //* Login credentials diff --git a/server/conf/motd.master b/server/conf/motd.master index 7467ff3ad8b0b1f9c1657cff2b0a6add020438ce..efc2ac3e8d69083d6fbe20d1bfe61cb58c7177fa 100644 --- a/server/conf/motd.master +++ b/server/conf/motd.master @@ -1,4 +1,4 @@ -Welcome To Site <tmpl_var name='domain'> +Welcome to <tmpl_var name='domain'> 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 @@ <?php + /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php index 0270821b9c6a7388f20bc56cbcc73b51ecd24770..9bd6c80b12f16b13c3338af9ff01db464dcb8bf9 100644 --- a/server/lib/classes/db_mysql.inc.php +++ b/server/lib/classes/db_mysql.inc.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2005, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,462 +28,462 @@ 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 +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 $dbCharset = ""; // what charset comes and goes to mysql: utf8 / latin1 + 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; + + // constructor + function 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 $dbCharset = ""; // what charset comes and goes to mysql: utf8 / latin1 - 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; + + 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(); + } - // 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('<br /><b>'.$this->errorLocation.'</b><br />'.$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('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage); - flush(); + $this->updateError('DB::connect()<br />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()<br />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()<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; + $this->updateError('DB::connect()<br />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.')<br />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()<br />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()<br />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."<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"])." "; + + 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."<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"])." "; - - 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 @@ <?php + /* -Copyright (c) 2007, projektfarm Gmbh, Till Brehm, Falko Timme +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,165 +28,166 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class file{ - -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 { - $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;$i<sizeof($lines);$i++){ - $parts = explode("=", $lines[$i]); - if($parts[0] == $var || $parts[0] == '$'.$var.' '){ - $parts[1] = str_replace($$var, $val, $parts[1]); + + 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;$i<sizeof($lines);$i++){ + $parts = explode("=", $lines[$i]); + if($parts[0] == $var || $parts[0] == '$'.$var.' '){ + $parts[1] = str_replace($$var, $val, $parts[1]); + } + $lines[$i] = implode("=", $parts); + } + $file_content = implode("\n", $lines); + $this->wf($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 @@ <?php /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/lib/classes/ini_parser.inc.php b/server/lib/classes/ini_parser.inc.php index 349990f19156e7c4663df853ea1352322a864328..05a7259fa3d40253c793593b0e18ccf85faf378f 100644 --- a/server/lib/classes/ini_parser.inc.php +++ b/server/lib/classes/ini_parser.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/lib/classes/mod_mail_base.inc.php b/server/lib/classes/mod_mail_base.inc.php index b16919356678e5a66a1ef0d27092e7d4f834404c..01ffda57525e018dd6b20cb704c44030e072b035 100644 --- a/server/lib/classes/mod_mail_base.inc.php +++ b/server/lib/classes/mod_mail_base.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2006, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/lib/classes/services.inc.php b/server/lib/classes/services.inc.php index 260d3f0ed0fcd13c6a03fc2db04d1e578ac2e13a..b4cccede0ecb871004bfc1bd1b945891579f96f1 100644 --- a/server/lib/classes/services.inc.php +++ b/server/lib/classes/services.inc.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2007, projektfarm Gmbh, Till Brehm, Falko Timme +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class services { var $registered_services = array(); diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index f6fce77822d2d6d89bd14a3b42bd02506a996ec5..da7e2d0a8e7284101e73141c236c6001f7fd8c23 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1,6 +1,7 @@ <?php + /* -Copyright (c) 2007, projektfarm Gmbh, Till Brehm, Falko Timme +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,7 +28,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - class system{ var $FILE = "/root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php"; diff --git a/server/lib/classes/tpl.inc.php b/server/lib/classes/tpl.inc.php index e16f0dcb1adc37d2e3e27ff4bf9347ef4c515a54..f4b40632c82231f0fce800c4e24a327842090959 100644 --- a/server/lib/classes/tpl.inc.php +++ b/server/lib/classes/tpl.inc.php @@ -1,5 +1,4 @@ <?php - /* vim: set expandtab tabstop=4 shiftwidth=4: */ // +----------------------------------------------------------------------+ // | PHP version 4.0 | diff --git a/server/mods-available/client_module.inc.php b/server/mods-available/client_module.inc.php index a70cbdfcb72d9b3c8046439a9f4a1af40ce324c6..4fdcd4e0a48411622cc93c131ad2ebd570feba13 100644 --- a/server/mods-available/client_module.inc.php +++ b/server/mods-available/client_module.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/mods-available/database_module.inc.php b/server/mods-available/database_module.inc.php index 740e8f8cfdf701a9c1c953a86ed0a8f569ec6326..0d6be2a489a8d6e72babf4517eab71ba3beef8ad 100644 --- a/server/mods-available/database_module.inc.php +++ b/server/mods-available/database_module.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php index 342d76af104e17c9c36b8708ea6b2423c7fff0af..95025771dd38fd9f99642d22b964ab2ebe8f750a 100644 --- a/server/mods-available/monitor_core_module.inc.php +++ b/server/mods-available/monitor_core_module.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh and Oliver Vogel www.muv.com +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -27,6 +27,7 @@ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ + class monitor_core_module { /* TODO: this should be a config - var instead of a "constant" */ var $interval = 5; // do the monitoring every 5 minutes diff --git a/server/plugins-available/firewall_plugin.inc.php b/server/plugins-available/firewall_plugin.inc.php index 3c1568d63a2cafc392475853d7ae63784c959c0a..697b9378cbeac1fda33d3ec4d6d4b3775912c867 100644 --- a/server/plugins-available/firewall_plugin.inc.php +++ b/server/plugins-available/firewall_plugin.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/plugins-available/mysql_clientdb_plugin.inc.php b/server/plugins-available/mysql_clientdb_plugin.inc.php index d90482185fdf52228b3f92ff02f1c6e576740fdd..ca3651a8fb12c09f5a234593b5ec2dc85e55a1ad 100644 --- a/server/plugins-available/mysql_clientdb_plugin.inc.php +++ b/server/plugins-available/mysql_clientdb_plugin.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/plugins-available/network_settings_plugin.inc.php b/server/plugins-available/network_settings_plugin.inc.php index 94e37b44bb0bf43277852c3e57d25575e24401eb..277d47456ac120d7325fd63c6776e208f80523b0 100644 --- a/server/plugins-available/network_settings_plugin.inc.php +++ b/server/plugins-available/network_settings_plugin.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index 6a35f9593e1f949d566c3eeaf39d7a9f877a2228..adba029e3a4a9e9965f0bbd13b13c44a20d551fd 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/server/plugins-available/software_update_plugin.inc.php b/server/plugins-available/software_update_plugin.inc.php index c3caf63b98d15a39dc03e2060ba353c55eadc39a..cc10859c50f06ea49a4b5067625654be5722d355 100644 --- a/server/plugins-available/software_update_plugin.inc.php +++ b/server/plugins-available/software_update_plugin.inc.php @@ -1,7 +1,7 @@ <?php /* -Copyright (c) 2008, Till Brehm, projektfarm Gmbh +Copyright (c) 2007, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification,