From b31e8a8260bcd687e8a5a3b087ec2d359f42059f Mon Sep 17 00:00:00 2001
From: vogelor <vogelor@ispconfig3>
Date: Fri, 30 Apr 2010 14:13:42 -0400
Subject: [PATCH] Added the login-icon

---
 install/install.php |  103 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 85 insertions(+), 18 deletions(-)

diff --git a/install/install.php b/install/install.php
index 62676e7..b4d59ee 100644
--- a/install/install.php
+++ b/install/install.php
@@ -1,7 +1,7 @@
 <?php
 
 /*
-Copyright (c) 2007, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
@@ -53,6 +53,12 @@
 //** Include the base class of the installer class
 require_once('lib/installer_base.lib.php');
 
+//** Ensure that current working directory is install directory
+$cur_dir = getcwd();
+if(realpath(dirname(__FILE__)) != $cur_dir) {
+	chdir( realpath(dirname(__FILE__)) );
+}
+
 //** Install logfile
 define('ISPC_LOG_FILE', '/var/log/ispconfig_install.log');
 define('ISPC_INSTALL_ROOT', realpath(dirname(__FILE__).'/../'));
@@ -89,6 +95,10 @@
 	die('This software can not be installed on a server wich runs ISPConfig 2.x.');
 }
 
+if(is_dir('/usr/local/ispconfig')) {
+	die('ISPConfig 3 installation found. Please use update.php instead if install.php to update the installation.');
+}
+
 //** Detect the installed applications
 $inst->find_installed_apps();
 
@@ -104,6 +114,9 @@
 exec('hostname -f', $tmp_out);
 $conf['hostname'] = $inst->free_query('Full qualified hostname (FQDN) of the server, eg server1.domain.tld ', $tmp_out[0]);
 unset($tmp_out);
+
+// Check if the mysql functions are loaded in PHP
+if(!function_exists('mysql_connect')) die('No PHP mysql functions available. Please ensure that the PHP mysql module is loaded.');
 
 //** Get MySQL root credentials
 $finished = false;
@@ -129,7 +142,9 @@
 unset($finished);
 
 // Resolve the IP address of the mysql hostname.
-if(!$conf['mysql']['ip'] = gethostbyname($conf['mysql']['host'])) die('Unable to resolve hostname'.$conf['mysql']['host']);
+$tmp = explode(':',$conf['mysql']['host']);
+if(!$conf['mysql']['ip'] = gethostbyname($tmp[0])) die('Unable to resolve hostname'.$tmp[0]);
+unset($tmp);
 
 
 //** initializing database connection
@@ -159,10 +174,16 @@
 	//* Configure PAM
 	swriteln('Configuring PAM');
 	$inst->configure_pam();
-
-	//* Configure courier
-	swriteln('Configuring Courier');
-	$inst->configure_courier();
+	
+	if($conf['dovecot']['installed'] == true) {
+		//* Configure dovecot
+		swriteln('Configuring Dovecot');
+		$inst->configure_dovecot();
+	} else {
+		//* Configure courier
+		swriteln('Configuring Courier');
+		$inst->configure_courier();
+	}
 
 	//* Configure Spamasassin
 	swriteln('Configuring Spamassassin');
@@ -181,14 +202,30 @@
 	swriteln('Configuring Pureftpd');
 	$inst->configure_pureftpd();
 
-	//* Configure MyDNS
-	swriteln('Configuring MyDNS');
-	$inst->configure_mydns();
+	//* Configure DNS
+	if($conf['powerdns']['installed'] == true) {
+		swriteln('Configuring PowerDNS');
+		$inst->configure_powerdns();
+	} elseif($conf['bind']['installed'] == true) {
+		swriteln('Configuring BIND');
+		$inst->configure_bind();
+	} else {
+		swriteln('Configuring MyDNS');
+		$inst->configure_mydns();
+	}
 	
 	//* Configure Apache
 	swriteln('Configuring Apache');
 	$inst->configure_apache();
 	
+    //** Configure vlogger
+    swriteln('Configuring vlogger');
+    $inst->configure_vlogger();
+	
+	//** Configure apps vhost
+	swriteln('Configuring Apps vhost');
+	$inst->configure_apps_vhost();
+    
 	//* Configure Firewall
 	swriteln('Configuring Firewall');
 	$inst->configure_firewall();
@@ -220,9 +257,12 @@
 	if($conf['courier']['courier-imap-ssl'] != '' && is_file($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'])) 	system($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'].' restart');
 	if($conf['courier']['courier-pop'] != '' && is_file($conf['init_scripts'].'/'.$conf['courier']['courier-pop'])) 				system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
 	if($conf['courier']['courier-pop-ssl'] != '' && is_file($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'])) 		system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
+	if($conf['dovecot']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) 		system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
 	if($conf['apache']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['apache']['init_script'])) 				system($conf['init_scripts'].'/'.$conf['apache']['init_script'].' restart');
 	if($conf['pureftpd']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['pureftpd']['init_script']))				system($conf['init_scripts'].'/'.$conf['pureftpd']['init_script'].' restart');
-	if($conf['mydns']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['mydns']['init_script']))					system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
+	if($conf['mydns']['installed'] == true && $conf['mydns']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['mydns']['init_script']))					system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
+	if($conf['powerdns']['installed'] == true && $conf['powerdns']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['powerdns']['init_script']))					system($conf['init_scripts'].'/'.$conf['powerdns']['init_script'].' restart &> /dev/null');
+	if($conf['bind']['installed'] == true && $conf['bind']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['bind']['init_script']))					system($conf['init_scripts'].'/'.$conf['bind']['init_script'].' restart &> /dev/null');
 	
 }else{
 	
@@ -299,9 +339,15 @@
 		swriteln('Configuring PAM');
 		$inst->configure_pam();
 
-		//* Configure courier
-		swriteln('Configuring Courier');
-		$inst->configure_courier();
+		if($conf['dovecot']['installed'] == true) {
+			//* Configure dovecot
+			swriteln('Configuring Dovecot');
+			$inst->configure_dovecot();
+		} else {
+			//* Configure courier
+			swriteln('Configuring Courier');
+			$inst->configure_courier();
+		}
 
 		//* Configure Spamasassin
 		swriteln('Configuring Spamassassin');
@@ -324,6 +370,7 @@
 		if($conf['courier']['courier-imap-ssl'] != '') 		system($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'].' restart');
 		if($conf['courier']['courier-pop'] != '') 			system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
 		if($conf['courier']['courier-pop-ssl'] != '') 		system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
+		if($conf['dovecot']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) 		system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
 	}
 	
 	//** Configure Jailkit
@@ -339,20 +386,40 @@
 		if($conf['pureftpd']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['pureftpd']['init_script'].' restart');
 	}
 	
-	//** Configure MyDNS
+	//** Configure DNS
 	if(strtolower($inst->simple_query('Configure DNS Server',array('y','n'),'y')) == 'y') {
 		$conf['services']['dns'] = true;
-		swriteln('Configuring MyDNS');
-		$inst->configure_mydns();
-		if($conf['mydns']['init_script'] != '')	system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
+		//* Configure DNS
+		if($conf['powerdns']['installed'] == true) {
+			swriteln('Configuring PowerDNS');
+			$inst->configure_powerdns();
+			if($conf['powerdns']['init_script'] != '')	system($conf['init_scripts'].'/'.$conf['powerdns']['init_script'].' restart &> /dev/null');
+		} elseif($conf['bind']['installed'] == true) {
+			swriteln('Configuring BIND');
+			$inst->configure_bind();
+			if($conf['bind']['init_script'] != '')	system($conf['init_scripts'].'/'.$conf['bind']['init_script'].' restart &> /dev/null');
+		} else {
+			swriteln('Configuring MyDNS');
+			$inst->configure_mydns();
+			if($conf['mydns']['init_script'] != '')	system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
+		}
+		
 	}
 	
 	//** Configure Apache
-	swriteln("\nHint: If this server shall run the ispconfig interface, select 'y' in the next option.\n");
+	swriteln("\nHint: If this server shall run the ispconfig interface, select 'y' in the 'Configure Apache Server' option.\n");
 	if(strtolower($inst->simple_query('Configure Apache Server',array('y','n'),'y')) == 'y') {	
 		$conf['services']['web'] = true;
 		swriteln('Configuring Apache');
 		$inst->configure_apache();
+        
+        //** Configure vlogger
+        swriteln('Configuring vlogger');
+        $inst->configure_vlogger();
+		
+		//** Configure apps vhost
+		swriteln('Configuring Apps vhost');
+		$inst->configure_apps_vhost();
 	}
 	
 	//** Configure Firewall

--
Gitblit v1.9.1