diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php index dd489c365ee7cc6bc2a29bb67920ad9400b8fe68..9c9bafb316fc776cb6c221b8664171b7c1ac2481 100644 --- a/interface/lib/classes/tform.inc.php +++ b/interface/lib/classes/tform.inc.php @@ -805,13 +805,16 @@ class tform { } } } + + // Insert the server_id, if the record has a server_id + $server_id = ($record_old["server_id"] > 0)?$record_old["server_id"]:0; if(count($diffrec) > 0) { $diffstr = $app->db->quote(serialize($diffrec)); $username = $app->db->quote($_SESSION["s"]["user"]["username"]); $dbidx = $this->formDef['db_table_idx'].":".$primary_id; $action = ($action == 'INSERT')?'i':'u'; - $sql = "INSERT INTO sys_datalog (dbtable,dbidx,action,tstamp,user,data) VALUES ('".$this->formDef['db_table']."','$dbidx','$action','".time()."','$username','$diffstr')"; + $sql = "INSERT INTO sys_datalog (dbtable,dbidx,server_id,action,tstamp,user,data) VALUES ('".$this->formDef['db_table']."','$dbidx','$server_id','$action','".time()."','$username','$diffstr')"; $app->db->query($sql); } diff --git a/interface/lib/server_conf.master b/interface/lib/server_conf.master new file mode 100644 index 0000000000000000000000000000000000000000..194147acb9ba94e620c1b9e8f3e923a5c7c322e7 --- /dev/null +++ b/interface/lib/server_conf.master @@ -0,0 +1,25 @@ +[global] +webserver=apache +mailserver=exim +dnsserver=mydns + +[mail] +module=exim_mysql +maildir_path=/var/spool/mail/[domain]/[localpart] +mailuser_uid=0 +mailuser_gid=0 + +[web] +module=generic + +[dns] +module=generic + +[db] +module=generic + +[file] +module=generic + +[vserver] +module=generic \ No newline at end of file diff --git a/interface/sql/ispconfig3db.sql b/interface/sql/ispconfig3db.sql index 984a53c91e0b8a12a82b9afb57f0b7ec1b6c0c75..7d2fe6e521aecf2510be3a6960b236ce78378e12 100644 --- a/interface/sql/ispconfig3db.sql +++ b/interface/sql/ispconfig3db.sql @@ -1,511 +1,571 @@ -# phpMyAdmin MySQL-Dump -# version 2.4.0-rc1 -# http://www.phpmyadmin.net/ (download page) -# -# Host: localhost -# Erstellungszeit: 16. Februar 2006 um 22:34 -# Server Version: 4.0.23 -# PHP-Version: 5.0.3 -# Datenbank: `ispconfig3` -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_blacklist` -# - -DROP TABLE IF EXISTS mail_blacklist; -CREATE TABLE mail_blacklist ( - blacklist_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - address varchar(200) NOT NULL default '', - recipient varchar(200) NOT NULL default '', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (blacklist_id), - KEY server_id (server_id,address,recipient) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_box` -# - -DROP TABLE IF EXISTS mail_box; -CREATE TABLE mail_box ( - mailbox_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - email varchar(255) NOT NULL default '', - cryptpwd varchar(128) NOT NULL default '', - clearpwd varchar(128) NOT NULL default '', - name varchar(128) NOT NULL default '', - uid int(10) unsigned NOT NULL default '0', - gid int(10) unsigned NOT NULL default '0', - maildir varchar(255) NOT NULL default '', - quota varchar(255) NOT NULL default '', - autoresponder enum('0','1') NOT NULL default '0', - autoresponder_text tinytext NOT NULL, - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (mailbox_id), - KEY server_id (server_id,email) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_domain` -# - -DROP TABLE IF EXISTS mail_domain; -CREATE TABLE mail_domain ( - domain_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - domain varchar(255) NOT NULL default '', - type enum('local','relay','alias') NOT NULL default 'local', - destination varchar(255) NOT NULL default '', - active tinyint(4) NOT NULL default '1', - PRIMARY KEY (domain_id), - KEY server_id (server_id,domain,type) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_domain_catchall` -# - -DROP TABLE IF EXISTS mail_domain_catchall; -CREATE TABLE mail_domain_catchall ( - domain_catchall_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - domain varchar(255) NOT NULL default '', - destination varchar(255) NOT NULL default '', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (domain_catchall_id), - KEY server_id (server_id,domain) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_greylist` -# - -DROP TABLE IF EXISTS mail_greylist; -CREATE TABLE mail_greylist ( - greylist_id int(11) NOT NULL auto_increment, - relay_ip varchar(64) default NULL, - from_domain varchar(255) default NULL, - block_expires datetime NOT NULL default '0000-00-00 00:00:00', - record_expires datetime NOT NULL default '0000-00-00 00:00:00', - origin_type enum('MANUAL','AUTO') NOT NULL default 'AUTO', - create_time datetime NOT NULL default '0000-00-00 00:00:00', - PRIMARY KEY (greylist_id) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_mailman_domain` -# - -DROP TABLE IF EXISTS mail_mailman_domain; -CREATE TABLE mail_mailman_domain ( - mailman_id int(11) NOT NULL auto_increment, - server_id int(11) NOT NULL default '0', - domain varchar(255) NOT NULL default '', - mm_home varchar(255) NOT NULL default '', - mm_wrap varchar(255) NOT NULL default '', - mm_user varchar(50) NOT NULL default '', - mm_group varchar(50) NOT NULL default '', - PRIMARY KEY (mailman_id,server_id,domain) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_redirect` -# - -DROP TABLE IF EXISTS mail_redirect; -CREATE TABLE mail_redirect ( - redirect_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - email varchar(255) NOT NULL default '', - destination varchar(255) NOT NULL default '', - type enum('alias','forward') NOT NULL default 'alias', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (redirect_id), - KEY server_id (server_id,email) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_spamfilter` -# - -DROP TABLE IF EXISTS mail_spamfilter; -CREATE TABLE mail_spamfilter ( - spamfilter_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - email varchar(255) NOT NULL default '', - spam_rewrite_score_int int(11) NOT NULL default '0', - spam_delete_score_int int(11) NOT NULL default '0', - spam_redirect_score_int int(11) NOT NULL default '0', - spam_rewrite_subject varchar(50) NOT NULL default '***SPAM***', - spam_redirect_maildir varchar(255) NOT NULL default '', - spam_redirect_maildir_purge int(11) NOT NULL default '7', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (spamfilter_id), - KEY server_id (server_id,email) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_transport` -# - -DROP TABLE IF EXISTS mail_transport; -CREATE TABLE mail_transport ( - whitelist_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - domain varchar(255) NOT NULL default '', - destination varchar(255) NOT NULL default '', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (whitelist_id), - KEY server_id (server_id,destination), - KEY server_id_2 (server_id,domain) -) TYPE=MyISAM; -# -------------------------------------------------------- - -# -# Tabellenstruktur für Tabelle `mail_whitelist` -# - -DROP TABLE IF EXISTS mail_whitelist; -CREATE TABLE mail_whitelist ( - whitelist_id int(11) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_id int(11) NOT NULL default '0', - address varchar(255) NOT NULL default '', - recipient varchar(255) NOT NULL default '', - active enum('0','1') NOT NULL default '1', - PRIMARY KEY (whitelist_id), - KEY server_id (server_id,address) -) TYPE=MyISAM; -# -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `reseller` --- - -DROP TABLE IF EXISTS `reseller`; -CREATE TABLE `reseller` ( - `reseller_id` bigint(20) NOT NULL auto_increment, - `sys_userid` int(11) NOT NULL default '0', - `sys_groupid` int(11) NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `company` varchar(255) NOT NULL default '', - `title` varchar(255) NOT NULL default '', - `firstname` varchar(255) NOT NULL default '', - `surname` varchar(255) NOT NULL default '', - `street` varchar(255) NOT NULL default '', - `zip` varchar(255) NOT NULL default '', - `city` varchar(255) NOT NULL default '', - `country` varchar(255) NOT NULL default '', - `telephone` varchar(255) NOT NULL default '', - `mobile` varchar(255) NOT NULL default '', - `fax` varchar(255) NOT NULL default '', - `email` varchar(255) NOT NULL default '', - `internet` varchar(255) NOT NULL default '', - `icq` varchar(255) NOT NULL default '', - `notes` text NOT NULL, - `limit_client` int(11) NOT NULL default '-1', - `limit_domain` int(11) NOT NULL default '-1', - `limit_subdomain` int(11) NOT NULL default '-1', - `limit_mailbox` int(11) NOT NULL default '-1', - `limit_mailalias` int(11) NOT NULL default '-1', - `limit_webquota` int(11) NOT NULL default '-1', - `limit_mailquota` int(11) NOT NULL default '-1', - `limit_database` int(11) NOT NULL default '-1', - `ip_address` text NOT NULL, - PRIMARY KEY (`reseller_id`) -) TYPE=MyISAM AUTO_INCREMENT=1 ; - --- --- Daten für Tabelle `reseller` --- - - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `server` --- - -DROP TABLE IF EXISTS server; -CREATE TABLE server ( - server_id bigint(20) NOT NULL auto_increment, - sys_userid int(11) NOT NULL default '0', - sys_groupid int(11) NOT NULL default '0', - sys_perm_user varchar(5) NOT NULL default '', - sys_perm_group varchar(5) NOT NULL default '', - sys_perm_other varchar(5) NOT NULL default '', - server_name varchar(255) NOT NULL default '', - mail_server int(11) NOT NULL default '0', - web_server int(11) NOT NULL default '0', - dns_server int(11) NOT NULL default '0', - file_server int(11) NOT NULL default '0', - mysql_server int(11) NOT NULL default '0', - postgresql_server int(11) NOT NULL default '0', - firebird_server int(11) NOT NULL default '0', - config text NOT NULL, - active int(11) NOT NULL default '1', - PRIMARY KEY (server_id) -) TYPE=MyISAM; - --- --- Daten für Tabelle `server` --- - -INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `mysql_server`, `postgresql_server`, `firebird_server`, `active`) VALUES (1, 1, 1, 'riud', 'riud', '', 'Server 1', 1, 0, 0, 0, 0, 0, 0, 1); - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `sys_datalog` --- - -DROP TABLE IF EXISTS `sys_datalog`; -CREATE TABLE `sys_datalog` ( - `datalog_id` bigint(20) NOT NULL auto_increment, - `dbtable` varchar(255) NOT NULL default '', - `dbidx` varchar(255) NOT NULL default '', - `action` char(1) NOT NULL default '', - `tstamp` bigint(20) NOT NULL default '0', - `user` varchar(255) NOT NULL default '', - `data` text NOT NULL, - PRIMARY KEY (`datalog_id`) -) TYPE=MyISAM AUTO_INCREMENT=48 ; - --- --- Daten für Tabelle `sys_datalog` --- - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `sys_dbsync` --- - -DROP TABLE IF EXISTS `sys_dbsync`; -CREATE TABLE `sys_dbsync` ( - `id` bigint(20) NOT NULL auto_increment, - `jobname` varchar(255) NOT NULL default '', - `sync_interval_minutes` int(11) NOT NULL default '0', - `db_type` varchar(255) NOT NULL default '', - `db_host` varchar(255) NOT NULL default '', - `db_name` varchar(255) NOT NULL default '', - `db_username` varchar(255) NOT NULL default '', - `db_password` varchar(255) NOT NULL default '', - `db_tables` varchar(255) NOT NULL default 'admin,forms', - `empty_datalog` int(11) NOT NULL default '0', - `sync_datalog_external` int(11) NOT NULL default '0', - `active` int(11) NOT NULL default '1', - `last_datalog_id` bigint(20) NOT NULL default '0', - PRIMARY KEY (`id`), - KEY `last_datalog_id` (`last_datalog_id`) -) TYPE=MyISAM AUTO_INCREMENT=1 ; - --- --- Daten für Tabelle `sys_dbsync` --- - - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `sys_filesync` --- - -DROP TABLE IF EXISTS `sys_filesync`; -CREATE TABLE `sys_filesync` ( - `id` bigint(20) NOT NULL auto_increment, - `jobname` varchar(255) NOT NULL default '', - `sync_interval_minutes` int(11) NOT NULL default '0', - `ftp_host` varchar(255) NOT NULL default '', - `ftp_path` varchar(255) NOT NULL default '', - `ftp_username` varchar(255) NOT NULL default '', - `ftp_password` varchar(255) NOT NULL default '', - `local_path` varchar(255) NOT NULL default '', - `wput_options` varchar(255) NOT NULL default '--timestamping --reupload --dont-continue', - `active` int(11) NOT NULL default '1', - PRIMARY KEY (`id`) -) TYPE=MyISAM AUTO_INCREMENT=1 ; - --- --- Daten für Tabelle `sys_filesync` --- - - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `sys_group` --- - -DROP TABLE IF EXISTS `sys_group`; -CREATE TABLE `sys_group` ( - `groupid` int(11) NOT NULL auto_increment, - `name` varchar(255) NOT NULL default '', - `description` text NOT NULL, - PRIMARY KEY (`groupid`) -) TYPE=MyISAM AUTO_INCREMENT=3 ; - --- --- Daten für Tabelle `sys_group` --- - -INSERT INTO `sys_group` (`groupid`, `name`, `description`) VALUES (1, 'admin', 'Administrators group'); -INSERT INTO `sys_group` (`groupid`, `name`, `description`) VALUES (2, 'user', 'Users Group'); - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `sys_user` --- - -DROP TABLE IF EXISTS `sys_user`; -CREATE TABLE `sys_user` ( - `userid` int(11) NOT NULL auto_increment, - `sys_userid` int(11) NOT NULL default '0', - `sys_groupid` int(11) NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `username` varchar(100) NOT NULL default '', - `passwort` varchar(100) NOT NULL default '', - `modules` varchar(255) NOT NULL default '', - `startmodule` varchar(255) NOT NULL default '', - `app_theme` varchar(100) NOT NULL default 'default', - `typ` varchar(20) NOT NULL default 'user', - `active` tinyint(4) NOT NULL default '1', - `name` varchar(100) NOT NULL default '', - `vorname` varchar(100) NOT NULL default '', - `unternehmen` varchar(100) NOT NULL default '', - `strasse` varchar(100) NOT NULL default '', - `ort` varchar(100) NOT NULL default '', - `plz` varchar(10) NOT NULL default '', - `land` varchar(50) NOT NULL default '', - `email` varchar(100) NOT NULL default '', - `url` varchar(255) NOT NULL default '', - `telefon` varchar(100) NOT NULL default '', - `fax` varchar(100) NOT NULL default '', - `language` varchar(10) NOT NULL default 'de', - `groups` varchar(255) NOT NULL default '', - `default_group` int(11) NOT NULL default '0', - PRIMARY KEY (`userid`) -) TYPE=MyISAM AUTO_INCREMENT=2 ; - --- --- Daten für Tabelle `sys_user` --- - -INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `username`, `passwort`, `modules`, `startmodule`, `app_theme`, `typ`, `active`, `name`, `vorname`, `unternehmen`, `strasse`, `ort`, `plz`, `land`, `email`, `url`, `telefon`, `fax`, `language`, `groups`, `default_group`) VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'admin,designer,sites,dns', 'admin', 'default', 'admin', 1, '', 'Administrator', '', '', '', '', '', '', '', '', '', 'en', '1,2', 0); - --- --- Table structure for table `rr` --- - -DROP TABLE IF EXISTS `rr`; -CREATE TABLE `rr` ( - `id` int(10) unsigned NOT NULL auto_increment, - `zone` int(10) unsigned NOT NULL default '0', - `name` varchar(64) NOT NULL default '', - `type` enum('A','AAAA','ALIAS','CNAME','HINFO','MX','NS','PTR','RP','SRV','TXT') default NULL, - `data` varchar(128) NOT NULL default '', - `aux` int(10) unsigned NOT NULL default '0', - `ttl` int(10) unsigned NOT NULL default '86400', - `sys_userid` int(11) NOT NULL default '0', - `sys_groupid` int(11) NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - PRIMARY KEY (`id`), - UNIQUE KEY `rr` (`zone`,`name`,`type`,`data`) -) TYPE=MyISAM; - --- --- Dumping data for table `rr` --- - - --- -------------------------------------------------------- - --- --- Table structure for table `soa` --- - -DROP TABLE IF EXISTS `soa`; -CREATE TABLE `soa` ( - `id` int(10) unsigned NOT NULL auto_increment, - `origin` varchar(255) NOT NULL default '', - `ns` varchar(255) NOT NULL default '', - `mbox` varchar(255) NOT NULL default '', - `serial` int(10) unsigned NOT NULL default '1', - `refresh` int(10) unsigned NOT NULL default '28800', - `retry` int(10) unsigned NOT NULL default '7200', - `expire` int(10) unsigned NOT NULL default '604800', - `minimum` int(10) unsigned NOT NULL default '86400', - `ttl` int(10) unsigned NOT NULL default '86400', - `active` enum('Y','N') NOT NULL default 'Y', - `xfer` varchar(255) NOT NULL default '', - `sys_userid` int(11) NOT NULL default '0', - `sys_groupid` int(11) NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - PRIMARY KEY (`id`), - UNIQUE KEY `origin` (`origin`), - KEY `active` (`active`) -) TYPE=MyISAM; - --- --- Dumping data for table `soa` --- - --- -------------------------------------------------------- \ No newline at end of file +# phpMyAdmin MySQL-Dump +# version 2.4.0-rc1 +# http://www.phpmyadmin.net/ (download page) +# +# Host: localhost +# Erstellungszeit: 24. Februar 2006 um 10:32 +# Server Version: 4.0.23 +# PHP-Version: 5.0.3 +# Datenbank: `ispconfig3` +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_blacklist` +# + +DROP TABLE IF EXISTS mail_blacklist; +CREATE TABLE mail_blacklist ( + blacklist_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + address varchar(200) NOT NULL default '', + recipient varchar(200) NOT NULL default '', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (blacklist_id), + KEY server_id (server_id,address,recipient) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_blacklist` +# + +INSERT INTO mail_blacklist VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'till@test.int', 'till@test.int', '0'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_box` +# + +DROP TABLE IF EXISTS mail_box; +CREATE TABLE mail_box ( + mailbox_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + email varchar(255) NOT NULL default '', + cryptpwd varchar(128) NOT NULL default '', + clearpwd varchar(128) NOT NULL default '', + name varchar(128) NOT NULL default '', + uid int(10) unsigned NOT NULL default '0', + gid int(10) unsigned NOT NULL default '0', + maildir varchar(255) NOT NULL default '', + quota varchar(255) NOT NULL default '', + autoresponder enum('0','1') NOT NULL default '0', + autoresponder_text tinytext NOT NULL, + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (mailbox_id), + KEY server_id (server_id,email) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_box` +# + +INSERT INTO mail_box VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'tt@test.int', '$1$tRlfKeOB$iHJgCn8mH8x/dh/XWy6v0/', '', '', 0, 0, '/var/spool/mail/till', '100', '0', '', '1'); +INSERT INTO mail_box VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'moin@test.int', '$1$Ee/.7y3.$wZ4BLXs/Pa80ka9X4ikN8.', '', '', 0, 0, '/var/spool/mail/test.int/moin', '10', '0', '', '1'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_domain` +# + +DROP TABLE IF EXISTS mail_domain; +CREATE TABLE mail_domain ( + domain_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + domain varchar(255) NOT NULL default '', + type enum('local','relay','alias') NOT NULL default 'local', + destination varchar(255) NOT NULL default '', + active tinyint(4) NOT NULL default '1', + PRIMARY KEY (domain_id), + KEY server_id (server_id,domain,type) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_domain` +# + +INSERT INTO mail_domain VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'test.int', 'local', '', 1); +INSERT INTO mail_domain VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'test2.int', 'alias', 'test.int', 1); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_domain_catchall` +# + +DROP TABLE IF EXISTS mail_domain_catchall; +CREATE TABLE mail_domain_catchall ( + domain_catchall_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + domain varchar(255) NOT NULL default '', + destination varchar(255) NOT NULL default '', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (domain_catchall_id), + KEY server_id (server_id,domain) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_domain_catchall` +# + +INSERT INTO mail_domain_catchall VALUES (1, 1, 1, 'riud', 'riud', '', 1, 'test.int', 'till@test.int', '1'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_greylist` +# + +DROP TABLE IF EXISTS mail_greylist; +CREATE TABLE mail_greylist ( + greylist_id int(11) NOT NULL auto_increment, + relay_ip varchar(64) default NULL, + from_domain varchar(255) default NULL, + block_expires datetime NOT NULL default '0000-00-00 00:00:00', + record_expires datetime NOT NULL default '0000-00-00 00:00:00', + origin_type enum('MANUAL','AUTO') NOT NULL default 'AUTO', + create_time datetime NOT NULL default '0000-00-00 00:00:00', + PRIMARY KEY (greylist_id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_greylist` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_mailman_domain` +# + +DROP TABLE IF EXISTS mail_mailman_domain; +CREATE TABLE mail_mailman_domain ( + mailman_id int(11) NOT NULL auto_increment, + server_id int(11) NOT NULL default '0', + domain varchar(255) NOT NULL default '', + mm_home varchar(255) NOT NULL default '', + mm_wrap varchar(255) NOT NULL default '', + mm_user varchar(50) NOT NULL default '', + mm_group varchar(50) NOT NULL default '', + PRIMARY KEY (mailman_id,server_id,domain) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_mailman_domain` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_redirect` +# + +DROP TABLE IF EXISTS mail_redirect; +CREATE TABLE mail_redirect ( + redirect_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + email varchar(255) NOT NULL default '', + destination varchar(255) NOT NULL default '', + type enum('alias','forward') NOT NULL default 'alias', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (redirect_id), + KEY server_id (server_id,email) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_redirect` +# + +INSERT INTO mail_redirect VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'tom@test.int', 'tt@test.int', 'alias', '1'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_spamfilter` +# + +DROP TABLE IF EXISTS mail_spamfilter; +CREATE TABLE mail_spamfilter ( + spamfilter_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + email varchar(255) NOT NULL default '', + spam_rewrite_score_int int(11) NOT NULL default '0', + spam_delete_score_int int(11) NOT NULL default '0', + spam_redirect_score_int int(11) NOT NULL default '0', + spam_rewrite_subject varchar(50) NOT NULL default '***SPAM***', + spam_redirect_maildir varchar(255) NOT NULL default '', + spam_redirect_maildir_purge int(11) NOT NULL default '7', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (spamfilter_id), + KEY server_id (server_id,email) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_spamfilter` +# + +INSERT INTO mail_spamfilter VALUES (1, 0, 0, '', '', '', 1, 'till@test.int', 100, 100, 1, '***SPAM mag ich nicht***', '/var/spool/mail/spam', 0, '1'); +INSERT INTO mail_spamfilter VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'till2@test.int', 500, 1500, 700, '***SPAM***', '/var/spool/mail/till', 14, '1'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_transport` +# + +DROP TABLE IF EXISTS mail_transport; +CREATE TABLE mail_transport ( + whitelist_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + domain varchar(255) NOT NULL default '', + destination varchar(255) NOT NULL default '', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (whitelist_id), + KEY server_id (server_id,destination), + KEY server_id_2 (server_id,domain) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_transport` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `mail_whitelist` +# + +DROP TABLE IF EXISTS mail_whitelist; +CREATE TABLE mail_whitelist ( + whitelist_id int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_id int(11) NOT NULL default '0', + address varchar(255) NOT NULL default '', + recipient varchar(255) NOT NULL default '', + active enum('0','1') NOT NULL default '1', + PRIMARY KEY (whitelist_id), + KEY server_id (server_id,address) +) TYPE=MyISAM; + +# +# Daten für Tabelle `mail_whitelist` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `reseller` +# + +DROP TABLE IF EXISTS reseller; +CREATE TABLE reseller ( + reseller_id bigint(20) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + company varchar(255) NOT NULL default '', + title varchar(255) NOT NULL default '', + firstname varchar(255) NOT NULL default '', + surname varchar(255) NOT NULL default '', + street varchar(255) NOT NULL default '', + zip varchar(255) NOT NULL default '', + city varchar(255) NOT NULL default '', + country varchar(255) NOT NULL default '', + telephone varchar(255) NOT NULL default '', + mobile varchar(255) NOT NULL default '', + fax varchar(255) NOT NULL default '', + email varchar(255) NOT NULL default '', + internet varchar(255) NOT NULL default '', + icq varchar(255) NOT NULL default '', + notes text NOT NULL, + limit_client int(11) NOT NULL default '-1', + limit_domain int(11) NOT NULL default '-1', + limit_subdomain int(11) NOT NULL default '-1', + limit_mailbox int(11) NOT NULL default '-1', + limit_mailalias int(11) NOT NULL default '-1', + limit_webquota int(11) NOT NULL default '-1', + limit_mailquota int(11) NOT NULL default '-1', + limit_database int(11) NOT NULL default '-1', + ip_address text NOT NULL, + PRIMARY KEY (reseller_id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `reseller` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `rr` +# + +DROP TABLE IF EXISTS rr; +CREATE TABLE rr ( + id int(10) unsigned NOT NULL auto_increment, + zone int(10) unsigned NOT NULL default '0', + name varchar(64) NOT NULL default '', + type enum('A','AAAA','ALIAS','CNAME','HINFO','MX','NS','PTR','RP','SRV','TXT') default NULL, + data varchar(128) NOT NULL default '', + aux int(10) unsigned NOT NULL default '0', + ttl int(10) unsigned NOT NULL default '86400', + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + PRIMARY KEY (id), + UNIQUE KEY rr (zone,name,type,data) +) TYPE=MyISAM; + +# +# Daten für Tabelle `rr` +# + +INSERT INTO rr VALUES (1, 2, '1', 'PTR', 'www.ensign.de.', 0, 86400, 1, 0, 'riud', 'riud', ''); +INSERT INTO rr VALUES (2, 1, 'www', 'A', '192.168.0.1', 0, 86400, 1, 0, 'riud', 'riud', ''); +INSERT INTO rr VALUES (3, 1, 'ensign.de', 'A', '192.168.0.1', 0, 86400, 1, 0, 'riud', 'riud', ''); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `server` +# + +DROP TABLE IF EXISTS server; +CREATE TABLE server ( + server_id bigint(20) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + server_name varchar(255) NOT NULL default '', + mail_server tinyint(4) NOT NULL default '0', + web_server tinyint(4) NOT NULL default '0', + dns_server tinyint(4) NOT NULL default '0', + file_server tinyint(4) NOT NULL default '0', + db_server tinyint(4) NOT NULL default '0', + vserver_server tinyint(4) NOT NULL default '0', + config text NOT NULL, + update tinyint(4) NOT NULL default '0', + active tinyint(4) NOT NULL default '1', + PRIMARY KEY (server_id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `server` +# + +INSERT INTO server VALUES (1, 1, 1, 'riud', 'riud', '', 'Server 1', 1, 0, 0, 0, 0, 0, '[global]\r\nwebserver=apache\r\nmailserver=exim\r\ndnsserver=mydns\r\n\r\n[mail]\r\nmodule=exim_mysql\r\nmaildir_path=/var/spool/mail/[domain]/[localpart]\r\nmailuser_uid=0\r\nmailuser_gid=0', 0, 1); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `soa` +# + +DROP TABLE IF EXISTS soa; +CREATE TABLE soa ( + id int(10) unsigned NOT NULL auto_increment, + origin varchar(255) NOT NULL default '', + ns varchar(255) NOT NULL default '', + mbox varchar(255) NOT NULL default '', + serial int(10) unsigned NOT NULL default '1', + refresh int(10) unsigned NOT NULL default '28800', + retry int(10) unsigned NOT NULL default '7200', + expire int(10) unsigned NOT NULL default '604800', + minimum int(10) unsigned NOT NULL default '86400', + ttl int(10) unsigned NOT NULL default '86400', + active enum('Y','N') NOT NULL default 'Y', + xfer varchar(255) NOT NULL default '', + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + PRIMARY KEY (id), + UNIQUE KEY origin (origin), + KEY active (active) +) TYPE=MyISAM; + +# +# Daten für Tabelle `soa` +# + +INSERT INTO soa VALUES (1, 'ensign.de.', 'ns1.example.com.', 'admin.example.com.', 2006012103, 28800, 7200, 604800, 86400, 86400, 'Y', '', 1, 0, 'riud', 'riud', ''); +INSERT INTO soa VALUES (2, '0.168.192.in-addr.arpa.', 'ns1.example.com.', 'admin.example.com.', 2006012101, 28800, 7200, 604800, 86400, 86400, 'Y', '', 1, 0, 'riud', 'riud', ''); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `sys_datalog` +# + +DROP TABLE IF EXISTS sys_datalog; +CREATE TABLE sys_datalog ( + datalog_id bigint(20) NOT NULL auto_increment, + dbtable varchar(255) NOT NULL default '', + dbidx varchar(255) NOT NULL default '', + server_id int(11) NOT NULL default '0', + action char(1) NOT NULL default '', + tstamp bigint(20) NOT NULL default '0', + user varchar(255) NOT NULL default '', + data text NOT NULL, + PRIMARY KEY (datalog_id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `sys_datalog` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `sys_dbsync` +# + +DROP TABLE IF EXISTS sys_dbsync; +CREATE TABLE sys_dbsync ( + id bigint(20) NOT NULL auto_increment, + jobname varchar(255) NOT NULL default '', + sync_interval_minutes int(11) NOT NULL default '0', + db_type varchar(255) NOT NULL default '', + db_host varchar(255) NOT NULL default '', + db_name varchar(255) NOT NULL default '', + db_username varchar(255) NOT NULL default '', + db_password varchar(255) NOT NULL default '', + db_tables varchar(255) NOT NULL default 'admin,forms', + empty_datalog int(11) NOT NULL default '0', + sync_datalog_external int(11) NOT NULL default '0', + active int(11) NOT NULL default '1', + last_datalog_id bigint(20) NOT NULL default '0', + PRIMARY KEY (id), + KEY last_datalog_id (last_datalog_id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `sys_dbsync` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `sys_filesync` +# + +DROP TABLE IF EXISTS sys_filesync; +CREATE TABLE sys_filesync ( + id bigint(20) NOT NULL auto_increment, + jobname varchar(255) NOT NULL default '', + sync_interval_minutes int(11) NOT NULL default '0', + ftp_host varchar(255) NOT NULL default '', + ftp_path varchar(255) NOT NULL default '', + ftp_username varchar(255) NOT NULL default '', + ftp_password varchar(255) NOT NULL default '', + local_path varchar(255) NOT NULL default '', + wput_options varchar(255) NOT NULL default '--timestamping --reupload --dont-continue', + active int(11) NOT NULL default '1', + PRIMARY KEY (id) +) TYPE=MyISAM; + +# +# Daten für Tabelle `sys_filesync` +# + +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `sys_group` +# + +DROP TABLE IF EXISTS sys_group; +CREATE TABLE sys_group ( + groupid int(11) NOT NULL auto_increment, + name varchar(255) NOT NULL default '', + description text NOT NULL, + PRIMARY KEY (groupid) +) TYPE=MyISAM; + +# +# Daten für Tabelle `sys_group` +# + +INSERT INTO sys_group VALUES (1, 'admin', 'Administrators group'); +INSERT INTO sys_group VALUES (2, 'user', 'Users Group'); +# -------------------------------------------------------- + +# +# Tabellenstruktur für Tabelle `sys_user` +# + +DROP TABLE IF EXISTS sys_user; +CREATE TABLE sys_user ( + userid int(11) NOT NULL auto_increment, + sys_userid int(11) NOT NULL default '0', + sys_groupid int(11) NOT NULL default '0', + sys_perm_user varchar(5) NOT NULL default '', + sys_perm_group varchar(5) NOT NULL default '', + sys_perm_other varchar(5) NOT NULL default '', + username varchar(100) NOT NULL default '', + passwort varchar(100) NOT NULL default '', + modules varchar(255) NOT NULL default '', + startmodule varchar(255) NOT NULL default '', + app_theme varchar(100) NOT NULL default 'default', + typ varchar(20) NOT NULL default 'user', + active tinyint(4) NOT NULL default '1', + name varchar(100) NOT NULL default '', + vorname varchar(100) NOT NULL default '', + unternehmen varchar(100) NOT NULL default '', + strasse varchar(100) NOT NULL default '', + ort varchar(100) NOT NULL default '', + plz varchar(10) NOT NULL default '', + land varchar(50) NOT NULL default '', + email varchar(100) NOT NULL default '', + url varchar(255) NOT NULL default '', + telefon varchar(100) NOT NULL default '', + fax varchar(100) NOT NULL default '', + language varchar(10) NOT NULL default 'de', + groups varchar(255) NOT NULL default '', + default_group int(11) NOT NULL default '0', + PRIMARY KEY (userid) +) TYPE=MyISAM; + +# +# Daten für Tabelle `sys_user` +# + +INSERT INTO sys_user VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'admin,designer,mail,dns', 'admin', 'default', 'admin', 1, '', 'Administrator', '', '', '', '', '', '', '', '', '', 'en', '1,2', 0); + diff --git a/interface/web/admin/form/server.tform.php b/interface/web/admin/form/server.tform.php index 95759ae0ac0e5278bed867c85854a4dabb849b9d..baca47ec311faba47c3eb57ab546fbf9cf060d91 100644 --- a/interface/web/admin/form/server.tform.php +++ b/interface/web/admin/form/server.tform.php @@ -1,124 +1,124 @@ -<?php - -/* - Form Definition - - Tabledefinition - - Datatypes: - - INTEGER (Forces the input to Int) - - DOUBLE - - CURRENCY (Formats the values to currency notation) - - VARCHAR (no format check, maxlength: 255) - - TEXT (no format check) - - DATE (Dateformat, automatic conversion to timestamps) - - Formtype: - - TEXT (Textfield) - - TEXTAREA (Textarea) - - PASSWORD (Password textfield, input is not shown when edited) - - SELECT (Select option field) - - RADIO - - CHECKBOX - - CHECKBOXARRAY - - FILE - - VALUE: - - Wert oder Array - - Hint: - The ID field of the database table is not part of the datafield definition. - The ID field must be always auto incement (int or bigint). - - -*/ - -$form["title"] = "Server"; -$form["description"] = ""; -$form["name"] = "server"; -$form["action"] = "server_edit.php"; -$form["db_table"] = "server"; -$form["db_table_idx"] = "server_id"; -$form["db_history"] = "no"; -$form["tab_default"] = "services"; -$form["list_default"] = "server_list.php"; -$form["auth"] = 'yes'; - -$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user -$form["auth_preset"]["groupid"] = 1; // 0 = default groupid of the user, > 0 id must match with groupid of current user -$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete - -$form["tabs"]['services'] = array ( - 'title' => "Services", - 'width' => 100, - 'template' => "templates/server_edit_services.htm", - 'fields' => array ( - ################################## - # Begin Datatable fields - ################################## - 'server_name' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'mail_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'web_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'dns_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'file_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'mysql_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'postgresql_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'firebird_server' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'CHECKBOX', - 'default' => '0', - 'value' => '1' - ), - 'active' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'SELECT', - 'default' => '1', - 'value' => array(0 => 'No', 1 => 'Yes') - ), - ################################## - # ENDE Datatable fields - ################################## - ) -); - - +<?php + +/* + Form Definition + + Tabledefinition + + Datatypes: + - INTEGER (Forces the input to Int) + - DOUBLE + - CURRENCY (Formats the values to currency notation) + - VARCHAR (no format check, maxlength: 255) + - TEXT (no format check) + - DATE (Dateformat, automatic conversion to timestamps) + + Formtype: + - TEXT (Textfield) + - TEXTAREA (Textarea) + - PASSWORD (Password textfield, input is not shown when edited) + - SELECT (Select option field) + - RADIO + - CHECKBOX + - CHECKBOXARRAY + - FILE + + VALUE: + - Wert oder Array + + Hint: + The ID field of the database table is not part of the datafield definition. + The ID field must be always auto incement (int or bigint). + + +*/ + +$form["title"] = "Server"; +$form["description"] = ""; +$form["name"] = "server"; +$form["action"] = "server_edit.php"; +$form["db_table"] = "server"; +$form["db_table_idx"] = "server_id"; +$form["db_history"] = "no"; +$form["tab_default"] = "services"; +$form["list_default"] = "server_list.php"; +$form["auth"] = 'yes'; + +$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user +$form["auth_preset"]["groupid"] = 1; // 0 = default groupid of the user, > 0 id must match with groupid of current user +$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete + +$form["tabs"]['services'] = array ( + 'title' => "Services", + 'width' => 100, + 'template' => "templates/server_edit_services.htm", + 'fields' => array ( + ################################## + # Begin Datatable fields + ################################## + 'server_name' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'mail_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'web_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'dns_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'file_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'db_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'vserver_server' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'CHECKBOX', + 'default' => '0', + 'value' => '1' + ), + 'update' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'value' => array(0 => 'No', 1 => 'Yes') + ), + 'active' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'value' => array(0 => 'No', 1 => 'Yes') + ), + ################################## + # ENDE Datatable fields + ################################## + ) +); + + ?> \ No newline at end of file diff --git a/interface/web/admin/lib/lang/en_server.lng b/interface/web/admin/lib/lang/en_server.lng index a83a900a9d4e6fd01d3e8275602a159736577a56..b8f1acf0dc1aff4152364ed2bd19c7fa9f58b78a 100644 --- a/interface/web/admin/lib/lang/en_server.lng +++ b/interface/web/admin/lib/lang/en_server.lng @@ -1,13 +1,12 @@ -<?php -$wb["server_name_txt"] = 'Servername'; -$wb["mail_server_txt"] = 'Mailserver'; -$wb["web_server_txt"] = 'Webserver'; -$wb["dns_server_txt"] = 'DNS-Server'; -$wb["file_server_txt"] = 'Fileserver'; -$wb["mysql_server_txt"] = 'MySQL-Server'; -$wb["postgresql_server_txt"] = 'PostgreSQL-Server'; -$wb["firebird_server_txt"] = 'Firebird-Server'; -$wb["active_txt"] = 'Active'; -$wb["btn_save_txt"] = 'Save'; -$wb["btn_cancel_txt"] = 'Cancel'; +<?php +$wb["server_name_txt"] = 'Servername'; +$wb["mail_server_txt"] = 'Mailserver'; +$wb["web_server_txt"] = 'Webserver'; +$wb["dns_server_txt"] = 'DNS-Server'; +$wb["file_server_txt"] = 'Fileserver'; +$wb["db_server_txt"] = 'DB-Server'; +$wb["vserver_server_txt"] = 'VServer-Server'; +$wb["active_txt"] = 'Active'; +$wb["btn_save_txt"] = 'Save'; +$wb["btn_cancel_txt"] = 'Cancel'; ?> \ No newline at end of file diff --git a/interface/web/admin/lib/lang/en_server_list.lng b/interface/web/admin/lib/lang/en_server_list.lng index 889d8025f36f66a1d9c50aa302fc5be4e2b20d10..0160993d41397edd7823441d82a5ca441349bda6 100644 --- a/interface/web/admin/lib/lang/en_server_list.lng +++ b/interface/web/admin/lib/lang/en_server_list.lng @@ -1,17 +1,16 @@ -<?php -$wb["list_head_txt"] = 'Server'; -$wb["server_name_txt"] = 'Name'; -$wb["mail_server_txt"] = 'Mail'; -$wb["web_server_txt"] = 'Web'; -$wb["dns_server_txt"] = 'DNS'; -$wb["file_server_txt"] = 'File'; -$wb["mysql_server_txt"] = 'MySQL'; -$wb["postgresql_server_txt"] = 'PostgreSQL'; -$wb["firebird_server_txt"] = 'Firebird'; -$wb["page_txt"] = 'Page'; -$wb["page_of_txt"] = 'of'; -$wb["page_next_txt"] = 'Next'; -$wb["page_back_txt"] = 'Back'; -$wb["delete_txt"] = 'Delete'; -$wb["filter_txt"] = 'Filter'; +<?php +$wb["list_head_txt"] = 'Server'; +$wb["server_name_txt"] = 'Name'; +$wb["mail_server_txt"] = 'Mail'; +$wb["web_server_txt"] = 'Web'; +$wb["dns_server_txt"] = 'DNS'; +$wb["file_server_txt"] = 'File'; +$wb["db_server_txt"] = 'DB'; +$wb["vserver_server_txt"] = 'VServer'; +$wb["page_txt"] = 'Page'; +$wb["page_of_txt"] = 'of'; +$wb["page_next_txt"] = 'Next'; +$wb["page_back_txt"] = 'Back'; +$wb["delete_txt"] = 'Delete'; +$wb["filter_txt"] = 'Filter'; ?> \ No newline at end of file diff --git a/interface/web/admin/list/server.list.php b/interface/web/admin/list/server.list.php index b5cb00750e3f09c61d014f40c996f88d23ebb592..562d56e86c25b20e3568210ae3ae01a30ff7ad11 100644 --- a/interface/web/admin/list/server.list.php +++ b/interface/web/admin/list/server.list.php @@ -1,123 +1,114 @@ -<?php - -/* - Datatypes: - - INTEGER - - DOUBLE - - CURRENCY - - VARCHAR - - TEXT - - DATE -*/ - - - -// Name of the list -$liste["name"] = "server"; - -// Database table -$liste["table"] = "server"; - -// Index index field of the database table -$liste["table_idx"] = "server_id"; - -// Search Field Prefix -$liste["search_prefix"] = "search_"; - -// Records per page -$liste["records_per_page"] = 15; - -// Script File of the list -$liste["file"] = "server_list.php"; - -// Script file of the edit form -$liste["edit_file"] = "server_edit.php"; - -// Script File of the delete script -$liste["delete_file"] = "server_del.php"; - -// Paging Template -$liste["paging_tpl"] = "templates/paging.tpl.htm"; - -// Enable authe -$liste["auth"] = "yes"; - - -/***************************************************** -* Suchfelder -*****************************************************/ - -$liste["item"][] = array( 'field' => "server_name", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - -$liste["item"][] = array( 'field' => "mail_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - -$liste["item"][] = array( 'field' => "web_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - -$liste["item"][] = array( 'field' => "dns_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - -$liste["item"][] = array( 'field' => "file_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - -$liste["item"][] = array( 'field' => "mysql_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - - -$liste["item"][] = array( 'field' => "postgresql_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); - - -$liste["item"][] = array( 'field' => "firebird_server", - 'datatype' => "VARCHAR", - 'formtype' => "TEXT", - 'op' => "like", - 'prefix' => "%", - 'suffix' => "%", - 'width' => "", - 'value' => ""); +<?php + +/* + Datatypes: + - INTEGER + - DOUBLE + - CURRENCY + - VARCHAR + - TEXT + - DATE +*/ + + + +// Name of the list +$liste["name"] = "server"; + +// Database table +$liste["table"] = "server"; + +// Index index field of the database table +$liste["table_idx"] = "server_id"; + +// Search Field Prefix +$liste["search_prefix"] = "search_"; + +// Records per page +$liste["records_per_page"] = 15; + +// Script File of the list +$liste["file"] = "server_list.php"; + +// Script file of the edit form +$liste["edit_file"] = "server_edit.php"; + +// Script File of the delete script +$liste["delete_file"] = "server_del.php"; + +// Paging Template +$liste["paging_tpl"] = "templates/paging.tpl.htm"; + +// Enable authe +$liste["auth"] = "yes"; + + +/***************************************************** +* Suchfelder +*****************************************************/ + +$liste["item"][] = array( 'field' => "server_name", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + +$liste["item"][] = array( 'field' => "mail_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + +$liste["item"][] = array( 'field' => "web_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + +$liste["item"][] = array( 'field' => "dns_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + +$liste["item"][] = array( 'field' => "file_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + +$liste["item"][] = array( 'field' => "db_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + + +$liste["item"][] = array( 'field' => "vserver_server", + 'datatype' => "VARCHAR", + 'formtype' => "TEXT", + 'op' => "like", + 'prefix' => "%", + 'suffix' => "%", + 'width' => "", + 'value' => ""); + ?> \ No newline at end of file diff --git a/interface/web/admin/templates/server_edit_services.htm b/interface/web/admin/templates/server_edit_services.htm index 0bfd7017896bfd4b5f99f54c4a62bb66458eea71..ec2bd5423a891b89115acfc0d9e36ac01197ed79 100644 --- a/interface/web/admin/templates/server_edit_services.htm +++ b/interface/web/admin/templates/server_edit_services.htm @@ -1,60 +1,56 @@ -<table width="500" border="0" cellspacing="0" cellpadding="2"> - <tr> - <td width="100" class="frmText11">{tmpl_var name='server_name_txt'}:</td> - <td class="frmText11"><input name="server_name" type="text" class="text" value="{tmpl_var name='server_name'}" size="15" maxlength="255"></td> - </tr> - <tr><td colspan="2"> </td></tr> - <tr><td colspan="2"> - <fieldset style="width:205px;"><legend class="frmText11"><b>Services</b></legend> - <table border="0" cellspacing="0" cellpadding="2"> - <tr> - <td class="frmText11">{tmpl_var name='mail_server'}</td> - <td class="frmText11">{tmpl_var name='mail_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='web_server'}</td> - <td class="frmText11">{tmpl_var name='web_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='dns_server'}</td> - <td class="frmText11">{tmpl_var name='dns_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='file_server'}</td> - <td class="frmText11">{tmpl_var name='file_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='mysql_server'}</td> - <td class="frmText11">{tmpl_var name='mysql_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='postgresql_server'}</td> - <td class="frmText11">{tmpl_var name='postgresql_server_txt'}</td> - </tr> - <tr> - <td class="frmText11">{tmpl_var name='firebird_server'}</td> - <td class="frmText11">{tmpl_var name='firebird_server_txt'}</td> - </tr> - </table> - </fieldset> - </td></tr> - <tr><td colspan="2"> </td></tr> - <tr> - <td class="frmText11">{tmpl_var name='active_txt'}:</td> - <td class="frmText11"> - <select name="active" class="text"> - {tmpl_var name='active'} - </select> - </td> - </tr> <tr> - <td class="frmText11"> </td> - <td class="frmText11"> </td> - </tr> - <tr> - <td> </td> - <td><input name="btn_save" type="submit" class="button" value="{tmpl_var name='btn_save_txt'}"> - <input name="btn_cancel" type="button" class="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="self.location.href='server_list.php';"> - </td> - </tr> -</table> +<table width="500" border="0" cellspacing="0" cellpadding="2"> + <tr> + <td width="100" class="frmText11">{tmpl_var name='server_name_txt'}:</td> + <td class="frmText11"><input name="server_name" type="text" class="text" value="{tmpl_var name='server_name'}" size="15" maxlength="255"></td> + </tr> + <tr><td colspan="2"> </td></tr> + <tr><td colspan="2"> + <fieldset style="width:205px;"><legend class="frmText11"><b>Services</b></legend> + <table border="0" cellspacing="0" cellpadding="2"> + <tr> + <td class="frmText11">{tmpl_var name='mail_server'}</td> + <td class="frmText11">{tmpl_var name='mail_server_txt'}</td> + </tr> + <tr> + <td class="frmText11">{tmpl_var name='web_server'}</td> + <td class="frmText11">{tmpl_var name='web_server_txt'}</td> + </tr> + <tr> + <td class="frmText11">{tmpl_var name='dns_server'}</td> + <td class="frmText11">{tmpl_var name='dns_server_txt'}</td> + </tr> + <tr> + <td class="frmText11">{tmpl_var name='file_server'}</td> + <td class="frmText11">{tmpl_var name='file_server_txt'}</td> + </tr> + <tr> + <td class="frmText11">{tmpl_var name='db_server'}</td> + <td class="frmText11">{tmpl_var name='db_server_txt'}</td> + </tr> + <tr> + <td class="frmText11">{tmpl_var name='vserver_server'}</td> + <td class="frmText11">{tmpl_var name='vserver_server_txt'}</td> + </tr> + </table> + </fieldset> + </td></tr> + <tr><td colspan="2"> </td></tr> + <tr> + <td class="frmText11">{tmpl_var name='active_txt'}:</td> + <td class="frmText11"> + <select name="active" class="text"> + {tmpl_var name='active'} + </select> + </td> + </tr> <tr> + <td class="frmText11"> </td> + <td class="frmText11"> </td> + </tr> + <tr> + <td> </td> + <td><input name="btn_save" type="submit" class="button" value="{tmpl_var name='btn_save_txt'}"> + <input name="btn_cancel" type="button" class="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="self.location.href='server_list.php';"> + </td> + </tr> +</table> <input type="hidden" name="id" value="{tmpl_var name='id'}"> \ No newline at end of file diff --git a/interface/web/admin/templates/server_list.htm b/interface/web/admin/templates/server_list.htm index e730c00bb7624491978fa6a8cca4086755917d86..0812fb4b326a8e4e8b4384dc3cfa59f51f23fdca 100644 --- a/interface/web/admin/templates/server_list.htm +++ b/interface/web/admin/templates/server_list.htm @@ -1,44 +1,42 @@ -<form name="myform" action="server_list.php" method="POST"> -<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br /> -<table width="100%" border="0" cellspacing="0" cellpadding="4"> - <tr> - <td class="tblHead"><tmpl_var name="server_name_txt"></td> - <td class="tblHead"><tmpl_var name="mail_server_txt"></td> - <td class="tblHead"><tmpl_var name="web_server_txt"></td> - <td class="tblHead"><tmpl_var name="dns_server_txt"></td> - <td class="tblHead"><tmpl_var name="file_server_txt"></td> - <td class="tblHead"><tmpl_var name="mysql_server_txt"></td> - <td class="tblHead"><tmpl_var name="postgresql_server_txt"></td> - <td class="tblHead"><tmpl_var name="firebird_server_txt"></td> - <td class="tblHead"> </td> - </tr> - <tr> - <td class="frmText11"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" class="text" /></td> - <td class="frmText11"><input type="text" name="search_mail_server" value="{tmpl_var name='search_mail_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_web_server" value="{tmpl_var name='search_web_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_dns_server" value="{tmpl_var name='search_dns_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_file_server" value="{tmpl_var name='search_file_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_mysql_server" value="{tmpl_var name='search_mysql_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_postgresql_server" value="{tmpl_var name='search_postgresql_server'}" class="text" size="2" /></td> - <td class="frmText11"><input type="text" name="search_firebird_server" value="{tmpl_var name='search_firebird_server'}" class="text" size="2" /></td> - <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td> - </tr> - <tmpl_loop name="records"> - <tr bgcolor="{tmpl_var name="bgcolor"}"> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_name"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="mail_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="web_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="dns_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="file_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="mysql_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="postgresql_server"}</a></td> - <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="firebird_server"}</a></td> - <td class="frmText11" align="right">[<a href="javascript: del_record('server_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td> - </tr> - </tmpl_loop> - - <tr> - <td colspan="9" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td> - </tr> -</table> +<form name="myform" action="server_list.php" method="POST"> +<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br /> +<table width="100%" border="0" cellspacing="0" cellpadding="4"> + <tr> + <td class="tblHead"><tmpl_var name="server_name_txt"></td> + <td class="tblHead"><tmpl_var name="mail_server_txt"></td> + <td class="tblHead"><tmpl_var name="web_server_txt"></td> + <td class="tblHead"><tmpl_var name="dns_server_txt"></td> + <td class="tblHead"><tmpl_var name="file_server_txt"></td> + <td class="tblHead"><tmpl_var name="mysql_server_txt"></td> + <td class="tblHead"><tmpl_var name="postgresql_server_txt"></td> + <td class="tblHead"><tmpl_var name="firebird_server_txt"></td> + <td class="tblHead"> </td> + </tr> + <tr> + <td class="frmText11"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" class="text" /></td> + <td class="frmText11"><input type="text" name="search_mail_server" value="{tmpl_var name='search_mail_server'}" class="text" size="2" /></td> + <td class="frmText11"><input type="text" name="search_web_server" value="{tmpl_var name='search_web_server'}" class="text" size="2" /></td> + <td class="frmText11"><input type="text" name="search_dns_server" value="{tmpl_var name='search_dns_server'}" class="text" size="2" /></td> + <td class="frmText11"><input type="text" name="search_file_server" value="{tmpl_var name='search_file_server'}" class="text" size="2" /></td> + <td class="frmText11"><input type="text" name="search_mysql_server" value="{tmpl_var name='search_db_server'}" class="text" size="2" /></td> + <td class="frmText11"><input type="text" name="search_postgresql_server" value="{tmpl_var name='search_vserver_server'}" class="text" size="2" /></td> + <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td> + </tr> + <tmpl_loop name="records"> + <tr bgcolor="{tmpl_var name="bgcolor"}"> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_name"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="mail_server"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="web_server"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="dns_server"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="file_server"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="db_server"}</a></td> + <td class="frmText11"><a href="server_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="vserver_server"}</a></td> + <td class="frmText11" align="right">[<a href="javascript: del_record('server_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td> + </tr> + </tmpl_loop> + + <tr> + <td colspan="9" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td> + </tr> +</table> </form> \ No newline at end of file diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php new file mode 100644 index 0000000000000000000000000000000000000000..49da38400b8a0633890f36497affb02e209bda23 --- /dev/null +++ b/server/lib/app.inc.php @@ -0,0 +1,128 @@ +<?php +/* +Copyright (c) 2006, 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 app { + + function app() { + + global $conf; + + if($conf["start_db"] == true) { + $this->load('db_'.$conf["db_type"]); + $this->db = new db; + } + + } + + function uses($classes) { + global $conf; + + $cl = explode(',',$classes); + if(is_array($cl)) { + foreach($cl as $classname) { + if(!is_object($this->$classname)) { + include_once($conf['classpath'] . "/".$classname.".inc.php"); + $this->$classname = new $classname; + } + } + } + + } + + function load($files) { + + global $conf; + $fl = explode(',',$files); + if(is_array($fl)) { + foreach($fl as $file) { + include_once($conf['classpath'] . "/".$file.".inc.php"); + } + } + + } + + /* + 0 = DEBUG + 1 = WARNING + 2 = ERROR + */ + + function log($msg, $priority = 0) { + + global $conf; + + if($priority >= $conf["log_priority"]) { + if (is_writable($conf["log_file"])) { + + if (!$fp = fopen ($conf["log_file"], "a")) { + die("Unable to open Logfile."); + } + switch ($priority) { + case: 0; + $priority_txt = "DEBUG"; + break; + case: 1; + $priority_txt = "WARNING"; + break; + case: 2; + $priority_txt = "ERROR"; + break; + } + + if (!fwrite($fp, date("d.m.Y-H:i")." - ".$priority_txt." - ". $msg."\r\n")) { + die("Unable to write to logfile."); + } + fclose($fp); + + } else { + $this->error("Logfile ist nicht beschreibbar."); + } + } // if + } // func + + /* + 0 = DEBUG + 1 = WARNING + 2 = ERROR + */ + + function error($msg) { + $this->log($msg,3); + die(); + } + +} + +/* + Initialize application (app) object +*/ + +$app = new app; + +?> \ No newline at end of file diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php new file mode 100644 index 0000000000000000000000000000000000000000..bc26ac5670500cbe03e597ff7548caf0bf763413 --- /dev/null +++ b/server/lib/classes/db_mysql.inc.php @@ -0,0 +1,480 @@ +<?php +/* +Copyright (c) 2005, 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 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; + + // constructor + function db() + { + + global $conf; + $this->dbHost = $conf["db_host"]; + $this->dbName = $conf["db_database"]; + $this->dbUser = $conf["db_user"]; + $this->dbPass = $conf["db_password"]; + //$this->connect(); + } + + // error handler + function updateError($location) + { + $this->errorNumber = mysql_errno(); + $this->errorMessage = mysql_error(); + $this->errorLocation = $location; + if($this->errorNumber && $this->show_error_messages) + { + echo('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage); + flush(); + } + } + + function connect() + { + if($this->linkId == 0) + { + $this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass); + if(!$this->linkId) + { + $this->updateError('DB::connect()<br />mysql_connect'); + return false; + } + } + return true; + } + + function query($queryString) + { + 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; + } + + // returns all records in an array + function queryAllRecords($queryString) + { + if(!$this->query($queryString)) + { + return false; + } + $ret = array(); + while($line = $this->nextRecord()) + { + $ret[] = $line; + } + return $ret; + } + + // returns one record in an array + function queryOneRecord($queryString) + { + if(!$this->query($queryString) || $this->numRows() == 0) + { + return false; + } + 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 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) + { + return addslashes($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 $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 "; + } + 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 + + 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(); + + $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; + } + return $columns; + } else { + return false; + } + + + //$this->createTable('tester',$columns); + + /* + $result = mysql_list_fields($go_info["server"]["db_name"],$table_name); + $fields = mysql_num_fields ($result); + $i = 0; + $table = mysql_field_table ($result, $i); + while ($i < $fields) { + $name = mysql_field_name ($result, $i); + $type = mysql_field_type ($result, $i); + $len = mysql_field_len ($result, $i); + $flags = mysql_field_flags ($result, $i); + print_r($flags); + + $columns = array(name => $name, + type => "", + defaultValue => "", + isnull => 1, + option => ""); + $returnvar[] = $columns; + + $i++; + } + */ + + + + } + + function mapType($metaType,$typeValue) { + global $go_api; + $metaType = strtolower($metaType); + switch ($metaType) { + case 'int16': + 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/ini_parser.inc.php b/server/lib/classes/ini_parser.inc.php new file mode 100644 index 0000000000000000000000000000000000000000..349990f19156e7c4663df853ea1352322a864328 --- /dev/null +++ b/server/lib/classes/ini_parser.inc.php @@ -0,0 +1,69 @@ +<?php + +/* +Copyright (c) 2006, 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 ini_parser { + + var $config; + + function parse_ini_string($ini) { + $ini = str_replace("\r\n","\n",$ini); + $lines = explode("\n",$ini); + + foreach($lines as $line) { + + if($line != '') { + $line = trim($line); + if(preg_match("/^\[([\w\d_]+)\]$/", $line, $matches)) { + $section = strtolower($matches[1]); + } elseif(preg_match("/^([\w\d_]+)=(.*)$/", $line, $matches) && $section != null) { + $item = trim($matches[1]); + $this->config[$section][$item] = trim($matches[2]); + } + } + } + return $this->config; + } + + + + function get_ini_string($file) { + $content = ''; + foreach($this->config as $section => $data) { + $content .= "[$section]\n"; + foreach($data as $item => $value) { + if($value != '') $content .= "$item=$value\n"; + } + } + return $content; + } + +} + +?> \ No newline at end of file diff --git a/server/lib/config.inc.php b/server/lib/config.inc.php new file mode 100644 index 0000000000000000000000000000000000000000..8ecfa8197e543035c6f6e4d0a7ed4818d53c1088 --- /dev/null +++ b/server/lib/config.inc.php @@ -0,0 +1,69 @@ +<?php +/* +Copyright (c) 2006, Till Brehm, Falko Timme, 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. +*/ + +$conf["server_id"] = "1"; +$conf["app_version"] = "3.0.0"; + + + +//$conf["rootpath"] = "F:\\server\\www\\ispconfig3\\server"; +$conf["rootpath"] = "D:\\www\\ispconfig3\\server"; +//$conf["rootpath"] = "/home/www/ispconfig3/web/cms"; + +$conf["fs_div"] = "/"; // File system divider, \\ on windows and / on linux and unix +$conf["classpath"] = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes"; +$conf["temppath"] = $conf["rootpath"].$conf["fs_div"]."temp"; + +/* + Logging +*/ + +$conf["log_file"] = $conf["rootpath"].$conf["fs_div"]."ispconfig.log"; +$conf["log_priority"] = 0 // 0 = Debug, 1 = Warning, 2 = Error + + +/* + Database Settings +*/ + +$conf["db_type"] = 'mysql'; +$conf["db_host"] = 'localhost'; +$conf["db_database"] = 'ispconfig3'; +$conf["db_user"] = 'root'; +$conf["db_password"] = ''; + +/* + Auto Load Modules +*/ + +$conf["start_db"] = true; +$conf["load_server_config"] = true; + + +?> \ No newline at end of file diff --git a/server/server.php b/server/server.php new file mode 100644 index 0000000000000000000000000000000000000000..300e02fa928124410350ade06716f2c5aa79de40 --- /dev/null +++ b/server/server.php @@ -0,0 +1,97 @@ +<?php + +/* +Copyright (c) 2006, 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. +*/ + +require("lib/config.inc.php"); +require("lib/app.inc.php"); + +set_time_limit(0); + +// make sure server_id is always an int +$conf["server_id"] = intval($conf["server_id"]); + +// Get server record, if updates where available for this server +$server_db_record = $app->db->queryOneRecord("SELECT * FROM server WHERE update = 1 AND server_id = ".$conf["server_id"]) +if($server_db_record == false) { + $app->log("Nothing to update for server_id ".$conf["server_id"]); + die(); +} else { + // Set update status to 0, so we dont start the update process twice + $app->db->query("UPDATE server SET update = 0 WHERE server_id = ".$conf["server_id"]); + $app->log("Begin update."); +} + +// Check if another process is running +if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){ + clearstatcache(); + for($i=0;$i<120;$i++){ // Wait max. 120 sec, then proceed + if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){ + sleep(1); + clearstatcache(); + } + } +} + +// Set Lockfile +@touch($conf["temppath"].$conf["fs_div"].".ispconfig_lock"); +$app->log("Set Lock: ".$conf["temppath"].$conf["fs_div"].".ispconfig_lock"); + +// Get server configuration +$this->uses('ini_parser'); +$conf["serverconfig"] = $app->ini_parser->parse_ini_string(stripslashes($server_db_record["config"])); + +// Run the configuration modules +if($server_db_record["mail_server"] == 1) { + $app->uses('mod_mail_'.$conf["serverconfig"]["mail"]["module"]); +} + +if($server_db_record["web_server"] == 1) { + $app->uses('mod_web_'.$conf["serverconfig"]["web"]["module"]); +} + +if($server_db_record["dns_server"] == 1) { + $app->uses('mod_dns_'.$conf["serverconfig"]["dns"]["module"]); +} + +if($server_db_record["file_server"] == 1) { + $app->uses('mod_file_'.$conf["serverconfig"]["file"]["module"]); +} + +if($server_db_record["db_server"] == 1) { + $app->uses('mod_db_'.$conf["serverconfig"]["db"]["module"]); +} + +if($server_db_record["vserver_server"] == 1) { + $app->uses('mod_vserver_'.$conf["serverconfig"]["vserver"]["module"]); +} + +// Remove lock +@unlink($conf["temppath"].$conf["fs_div"].".ispconfig_lock"); +$app->log("Remove Lock: ".$conf["temppath"].$conf["fs_div"].".ispconfig_lock"); +?> \ No newline at end of file