#!/bin/bash
set -e

#
# #############################################################################
# ## Alladdin, the all-add-in web server                                     ##
# #############################################################################
#
# @author Laurent GAERTNER <garthh@bagsbug.net>
# @version $Revision$
# @modifiedby $Author$
# @lastmodified $Date$
#
# #############################################################################
# ## Pre remove script                                                       ##
# #############################################################################
#
# Alladdin is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# Alladdin is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Lecture des paramètres du serveur Alladdin

. /etc/alladdin/alladdin.conf

# Arrêt des services

/etc/init.d/apache2 stop

case $1 in

"upgrade")

exit 0

;;

"remove")

# Backup de la base de données mySQL

echo ""
echo "Sauvegarde des bases de données des comptes utilisateurs..."

# Backup individuels des comptes utilisateurs

requete="SELECT admin_login FROM accounts ORDER BY admin_login"
mysql -u $sqlUser -p$sqlPass -h $sqlHost -P$sqlPort $sqlDB -e "$requete" -s > /tmp/account_list

while read line

	do

		## Archivage des données de la base de l'utilisateur
		echo "Archivage des données du compte : $line"
		echo "...fichier : /var/alladdin/save/dump-$line.sql"
		mysqldump -u $sqlUser -p$sqlPass $line --opt > /var/alladdin/save/dump-$line.sql

		## Suppression de la base et de l'utilisateur
		echo "Suppression du compte : $line"
		requete="DROP DATABASE $line"
		mysql -u $sqlUser -p$sqlPass -h $sqlHost -P$sqlPort -e "$requete"
		requete="DROP USER '$line'@'localhost'"
		mysql -u $sqlUser -p$sqlPass -h $sqlHost -P$sqlPort -e "$requete"

	done < /tmp/account_list

echo ""
echo "Sauvegarde de la base alladdin (/var/allddin/save/dump-base-alladdin.sql)"

mysqldump -u $sqlUser -p$sqlPass alladdin --opt > /var/alladdin/save/dump-base-alladdin.sql
requete="DROP DATABASE alladdin"
mysql -u $sqlUser -p$sqlPass -h $sqlHost -P$sqlPort -e "$requete"
requete="DROP USER 'alladdin'@'localhost'"
mysql -u $sqlUser -p$sqlPass -h $sqlHost -P$sqlPort -e "$requete"

echo "Suppression de la base alladdin et du compte alladdin"
exit 0
;;

*)
exit 0
;;

esac

exit 0
