#! /bin/sh
# prerm script for ejabberd
#
# see: dh_installdeb(1)

set -e

ctl() {
	cmd='/usr/sbin/ejabberdctl'
	for arg in "$@"; do
		cmd="$cmd '$arg'"
	done
	su ejabberd -c "$cmd"
}

case "$1" in
	remove|upgrade)
		if ctl status >/dev/null ; then
			# Use timestamp to make database restoring easier
			TIME=$(date +%Y-%m-%dT%H:%M:%S)
			BACKUPDIR=$(mktemp -d -p /var/backups/ "ejabberd-$TIME.XXXXXX")
			chown ejabberd:ejabberd "$BACKUPDIR"
			BACKUP=$BACKUPDIR/ejabberd-database
			ctl backup "$BACKUP"
			# Change ownership to root:root because ejabberd user might be
			# removed on package removal.
			chown -R root:root "$BACKUPDIR"
			chmod 700 "$BACKUPDIR"
			echo
			echo "The ejabberd database has been backed up to $BACKUP."
			echo
		fi
		;;

	deconfigure)
		;;

	failed-upgrade)
		;;

	*)
		echo "prerm called with unknown argument \`$1'" >&2
		exit 1
		;;
esac

#DEBHELPER#

case "$1" in
	remove|purge)
		pkill -u ejabberd || true
		;;
esac


exit 0
