From d24bb483067fecab842de4108d5b67fd33f8846e Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Fri, 22 Nov 2013 09:19:30 -0500
Subject: [PATCH] add DROP DATABASE and DROP USER

---
 install/uninstall-fedora.php |   21 +++++++---
 install/uninstall.php        |   75 +++++++++++++++++--------------------
 2 files changed, 49 insertions(+), 47 deletions(-)

diff --git a/install/uninstall-fedora.php b/install/uninstall-fedora.php
index 66eb300..55b96ed 100644
--- a/install/uninstall-fedora.php
+++ b/install/uninstall-fedora.php
@@ -49,15 +49,22 @@
 
 require "/usr/local/ispconfig/server/lib/config.inc.php";
 require "/usr/local/ispconfig/server/lib/app.inc.php";
+require "/usr/local/ispconfig/server/mysql_clientdb.conf";
 
 // Delete the ISPConfig database
-// $app->db->query("DROP DATABASE '".$conf["db_database"]."'");
-// $app->db->query("DELETE FROM mysql.user WHERE User = 'ispconfig'");
-
-
-exec("/etc/init.d/mysqld stop");
-exec("rm -rf /var/lib/mysql/".$conf["db_database"]);
-exec("/etc/init.d/mysqld start");
+//exec("/etc/init.d/mysqld stop");
+//exec("rm -rf /var/lib/mysql/".$conf["db_database"]);
+//exec("/etc/init.d/mysqld start");
+$link = mysql_connect($clientdb_host, $clientdb_user, $clientdb_password);
+if (!$link) {
+	echo "Unable to connect to the database'.mysql_error($link)";
+} else {
+	$result=mysql_query("DROP DATABASE ".$conf['db_database']."';", $link);
+	if (!$result) echo "Unable to remove the ispconfig-database ".$conf['db_database']." ".mysql_error($link)."\n";
+	$result=mysql_query("DROP USER '".$conf['db_user'] ."';");
+	if (!$result) echo "Unable to remove the ispconfig-database-user ".$conf['db_user']." ".mysql_error($link)."\n";
+}
+mysql_close($link);
 
 // Deleting the symlink in /var/www
 // Apache
diff --git a/install/uninstall.php b/install/uninstall.php
index 9ac118d..4e58b0d 100644
--- a/install/uninstall.php
+++ b/install/uninstall.php
@@ -34,9 +34,6 @@
 
 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";
-
 //** The banner on the command line
 echo "\n\n".str_repeat('-', 80)."\n";
 echo " _____ ___________   _____              __ _         ____
@@ -50,45 +47,43 @@
 echo "\n".str_repeat('-', 80)."\n";
 echo "\n\n>> Uninstall  \n\n";
 
-echo "Are you sure you want to uninsatll ISPConfig? [no]";
-$input = fgets(STDIN);
-$do_uninstall = rtrim($input);
+require "/usr/local/ispconfig/server/lib/config.inc.php";
+require "/usr/local/ispconfig/server/lib/app.inc.php";
+require "/usr/local/ispconfig/server/mysql_clientdb.conf";
 
-
-if($do_uninstall == 'yes') {
-
-	echo "\n\n>> Uninstalling ISPConfig 3... \n\n";
-
-	// Delete the ISPConfig database
-	// $app->db->query("DROP DATABASE '".$conf["db_database"]."'");
-	// $app->db->query("DELETE FROM mysql.user WHERE User = 'ispconfig'");
-	
-	
-	exec("/etc/init.d/mysql stop");
-	exec("rm -rf /var/lib/mysql/".$conf["db_database"]);
-	exec("/etc/init.d/mysql start");
-	
-	// 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');
-	
-	echo "Please do not forget to delete the ispconfig user in the mysql.user table.\n\n";
-	echo "Finished uninstalling.\n";
-
+// Delete the ISPConfig database
+//exec("/etc/init.d/mysql stop");
+//exec("rm -rf /var/lib/mysql/".$conf["db_database"]);
+//exec("/etc/init.d/mysql start");
+$link = mysql_connect($clientdb_host, $clientdb_user, $clientdb_password);
+if (!$link) {
+	echo "Unable to connect to the database'.mysql_error($link)";
 } else {
-	echo "\n\n>> Canceled uninstall. \n\n";
+	$result=mysql_query("DROP DATABASE ".$conf['db_database']."';", $link);
+	if (!$result) echo "Unable to remove the ispconfig-database ".$conf['db_database']." ".mysql_error($link)."\n";
+	$result=mysql_query("DROP USER '".$conf['db_user'] ."';");
+	if (!$result) echo "Unable to remove the ispconfig-database-user ".$conf['db_user']." ".mysql_error($link)."\n";
 }
+mysql_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');
+
+//echo "Please do not forget to delete the ispconfig user in the mysql.user table.\n\n";
+
+echo "Finished.\n";
 
 ?>

--
Gitblit v1.9.1