From e1ceb050e19c7574bca146a8da7047ee4ff456b5 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Sun, 10 Jul 2016 05:02:35 -0400
Subject: [PATCH] Merge branch 'stable-3.1'

---
 install/uninstall.php |   84 ++++++++++++++++++++++++-----------------
 1 files changed, 49 insertions(+), 35 deletions(-)

diff --git a/install/uninstall.php b/install/uninstall.php
index 6ef2145..c565d46 100644
--- a/install/uninstall.php
+++ b/install/uninstall.php
@@ -34,6 +34,10 @@
 
 error_reporting(E_ALL|E_STRICT);
 
+require_once "/usr/local/ispconfig/server/lib/config.inc.php";
+require_once "/usr/local/ispconfig/server/lib/app.inc.php";
+require "/usr/local/ispconfig/server/lib/mysql_clientdb.conf";
+
 //** The banner on the command line
 echo "\n\n".str_repeat('-', 80)."\n";
 echo " _____ ___________   _____              __ _         ____
@@ -47,45 +51,55 @@
 echo "\n".str_repeat('-', 80)."\n";
 echo "\n\n>> Uninstall  \n\n";
 
-require "/usr/local/ispconfig/server/lib/config.inc.php";
-require "/usr/local/ispconfig/server/lib/app.inc.php";
-
-// Delete the ISPConfig database
-// $app->db->query("DROP DATABASE '".$conf["db_database"]."'");
-// $app->db->query("DELETE FROM mysql.user WHERE User = 'ispconfig'");
+echo "Are you sure you want to uninstall ISPConfig? [no]";
+$input = fgets(STDIN);
+$do_uninstall = rtrim($input);
 
 
-exec("/etc/init.d/mysql stop");
-exec("rm -rf /var/lib/mysql/".$conf["db_database"]);
-exec("/etc/init.d/mysql start");
+if($do_uninstall == 'yes') {
 
-// Deleting the symlink in /var/www
-// Apache
-@unlink("/etc/apache2/sites-enabled/000-ispconfig.vhost");
-@unlink("/etc/apache2/sites-available/ispconfig.vhost");
-@unlink("/etc/apache2/sites-enabled/000-apps.vhost");
-@unlink("/etc/apache2/sites-available/apps.vhost");
+	echo "\n\n>> Uninstalling ISPConfig 3... \n\n";
 
-// nginx
-@unlink("/etc/nginx/sites-enabled/000-ispconfig.vhost");
-@unlink("/etc/nginx/sites-available/ispconfig.vhost");
-@unlink("/etc/nginx/sites-enabled/000-apps.vhost");
-@unlink("/etc/nginx/sites-available/apps.vhost");
+	$link = mysqli_connect($clientdb_host, $clientdb_user, $clientdb_password);
+	if (!$link) {
+		echo "Unable to connect to the database. mysql_error($link)";
+	} else {
+		$result=mysqli_query($link,"DROP DATABASE ".$conf['db_database'].";");
+		if (!$result) echo "Unable to remove the ispconfig-database ".$conf['db_database']." ".mysqli_error($link)."\n";
+		$result=mysqli_query($link,"DROP USER '".$conf['db_user']."'@'".$conf['db_host']."';");
+	        if (!$result) echo "Unable to remove the ispconfig-database-user ".$conf['db_user']." ".mysqli_error($link)."\n";
+	}
+	mysqli_close($link);
+	
+	// Deleting the symlink in /var/www
+	// Apache
+	@unlink("/etc/apache2/sites-enabled/000-ispconfig.vhost");
+	@unlink("/etc/apache2/sites-available/ispconfig.vhost");
+	@unlink("/etc/apache2/sites-enabled/000-apps.vhost");
+	@unlink("/etc/apache2/sites-available/apps.vhost");
+	
+	// nginx
+	@unlink("/etc/nginx/sites-enabled/000-ispconfig.vhost");
+	@unlink("/etc/nginx/sites-available/ispconfig.vhost");
+	@unlink("/etc/nginx/sites-enabled/000-apps.vhost");
+	@unlink("/etc/nginx/sites-available/apps.vhost");
+	
+	// Delete the ispconfig files
+	exec('rm -rf /usr/local/ispconfig');
+	
+	// Delete various other files
+	@unlink("/usr/local/bin/ispconfig_update.sh");
+	@unlink("/usr/local/bin/ispconfig_update_from_svn.sh");
+	@unlink("/var/spool/mail/ispconfig");
+	@unlink("/var/www/ispconfig");
+	@unlink("/var/www/php-fcgi-scripts/ispconfig");
+	@unlink("/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter");
+	
+	echo "Backups in /var/backup/ and log files in /var/log/ispconfig are not deleted.";
+	echo "Finished uninstalling.\n";
 
-// Delete the ispconfig files
-exec('rm -rf /usr/local/ispconfig');
-
-// Delete various other files
-@unlink("/usr/local/bin/ispconfig_update.sh");
-@unlink("/usr/local/bin/ispconfig_update_from_svn.sh");
-@unlink("/var/spool/mail/ispconfig");
-@unlink("/var/www/ispconfig");
-@unlink("/var/www/php-fcgi-scripts/ispconfig");
-@unlink("/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter");
-
-echo "Backups in /var/backup/ and log files in /var/log/ispconfig are not deleted.";
-echo "Please do not forget to delete the ispconfig user in the mysql.user table.\n\n";
-
-echo "Finished.\n";
+} else {
+	echo "\n\n>> Canceled uninstall. \n\n";
+}
 
 ?>

--
Gitblit v1.9.1