From 87a4a65f40ef4ad5a00483671e83ef31b9af85e2 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 24 Feb 2006 04:32:30 -0500
Subject: [PATCH] server base system
---
interface/web/admin/lib/lang/en_server_list.lng | 31
server/lib/classes/db_mysql.inc.php | 480 ++++++++++
interface/web/admin/form/server.tform.php | 246 ++--
interface/lib/classes/tform.inc.php | 5
interface/lib/server_conf.master | 25
interface/web/admin/templates/server_edit_services.htm | 114 +-
server/lib/app.inc.php | 128 ++
server/lib/classes/ini_parser.inc.php | 69 +
interface/sql/ispconfig3db.sql | 1082 ++++++++++++-----------
interface/web/admin/list/server.list.php | 235 ++--
server/lib/config.inc.php | 69 +
interface/web/admin/templates/server_list.htm | 84
server/server.php | 97 ++
interface/web/admin/lib/lang/en_server.lng | 23
14 files changed, 1,801 insertions(+), 887 deletions(-)
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index dd489c3..9c9bafb 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -805,13 +805,16 @@
}
}
}
+
+ // 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 0000000..194147a
--- /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 984a53c..7d2fe6e 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 95759ae..baca47e 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 a83a900..b8f1acf 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 889d802..0160993 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 b5cb007..562d56e 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 0bfd701..ec2bd54 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 e730c00..0812fb4 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 0000000..49da384
--- /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 0000000..bc26ac5
--- /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 0000000..349990f
--- /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 0000000..8ecfa81
--- /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 0000000..300e02f
--- /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
--
Gitblit v1.9.1