From a75c8169b5b6472a40ed16982d9ea5d06a42f7c7 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Tue, 28 Apr 2015 11:03:26 -0400
Subject: [PATCH] shows warning for missing services during install (and allows force-configure for missing / not detected services)

---
 install/lib/installer_base.lib.php |   27 ++++++++++++++++++++-------
 1 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index cba3056..317c1a5 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -136,7 +136,7 @@
 		if(is_installed('mysql') || is_installed('mysqld')) $conf['mysql']['installed'] = true;
 		if(is_installed('postfix')) $conf['postfix']['installed'] = true;
 		if(is_installed('postgrey')) $conf['postgrey']['installed'] = true;
-		if(is_installed('mailman')) $conf['mailman']['installed'] = true;
+		if(is_installed('mailman') || is_installed('mmsitepass')) $conf['mailman']['installed'] = true;
 		if(is_installed('apache') || is_installed('apache2') || is_installed('httpd') || is_installed('httpd2')) $conf['apache']['installed'] = true;
 		if(is_installed('getmail')) $conf['getmail']['installed'] = true;
 		if(is_installed('courierlogger')) $conf['courier']['installed'] = true;
@@ -154,11 +154,25 @@
 		if(is_installed('iptables') && is_installed('ufw')) $conf['ufw']['installed'] = true;
 		if(is_installed('fail2ban-server')) $conf['fail2ban']['installed'] = true;
 		if(is_installed('vzctl')) $conf['openvz']['installed'] = true;
-		if(is_dir("/etc/Bastille")) $conf['bastille']['installed'] = true;
-        if(is_installed('metronome') && is_installed('metronomectl')) $conf['xmpp']['installed'] = true;
+		if(is_installed('iptables') && is_installed('bastille-netfilter')) $conf['bastille']['installed'] = true;
+		if(is_installed('metronome') && is_installed('metronomectl')) $conf['xmpp']['installed'] = true;
+		if(is_installed('spamassassin')) $conf['spamassasin']['installed'] = true;
+		if(is_installed('vlogger')) $conf['vlogger']['installed'] = true;
+		if(is_installed('cron')) $conf['cron']['installed'] = true;
 
 		if ($conf['services']['web'] && (($conf['apache']['installed'] && is_file($conf['apache']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")) || ($conf['nginx']['installed'] && is_file($conf['nginx']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")))) $this->ispconfig_interface_installed = true;
 	}
+
+    public function force_configure_app($service) {
+		$force = false;
+        swriteln("[WARN] autodetect for $service failed");
+        if(strtolower($this->simple_query("Force configure $service", array('y', 'n'), 'n') ) == 'y') {
+//			swriteln("Configure $service");
+            $force = true;
+		} else swriteln("Skipping $service\n");
+		return $force;
+    }
+
 
 	/** Create the database for ISPConfig */
 
@@ -172,7 +186,7 @@
 		}
 
 		//* Set the database name in the DB library
-		$this->db->dbName = $conf['mysql']['database'];
+		$this->db->setDBName($conf['mysql']['database']);
 
 		//* Load the database dump into the database, if database contains no tables
 		$db_tables = $this->db->getTables();
@@ -224,7 +238,7 @@
 		$this->db->query('FLUSH PRIVILEGES;');
 
 		//* Set the database name in the DB library
-		$this->db->dbName = $conf['mysql']['database'];
+		$this->db->setDBName($conf['mysql']['database']);
 
 		$tpl_ini_array = ini_to_array(rf('tpl/server.ini.master'));
 
@@ -278,8 +292,7 @@
 		}
 
 		$server_ini_content = array_to_ini($tpl_ini_array);
-		$server_ini_content = mysql_real_escape_string($server_ini_content);
-
+		
 		$mail_server_enabled = ($conf['services']['mail'])?1:0;
 		$web_server_enabled = ($conf['services']['web'])?1:0;
 		$dns_server_enabled = ($conf['services']['dns'])?1:0;

--
Gitblit v1.9.1