#! /bin/sh -e

set -e
if [ "${BASEDIR:=/}" = "/" ]; then
	BASEDIR=""
fi

case "$1" in
  remove)

    . ${BASEDIR}/usr/share/debconf/confmodule
    db_version 2.0 || [ $? -lt 30 ]

    rm -f ${BASEDIR}/usr/share/phpldapadmin/config.php

    db_get phpldapadmin/reconfigure-webserver
    webservers="$RET"
    restart=""

    for webserver in $webservers; do
        webserver=${webserver%,}

         case "$webserver" in
             apache|apache-perl|apache-ssl)
                 rm -f ${BASEDIR}/etc/$webserver/conf.d/phpldapadmin
                 test -x ${BASEDIR}/usr/sbin/$webserver || continue
                 if [ -z "${BASEDIR}" ]; then
                     restart="$restart $webserver"
                 fi
                 ;;
             apache2)
                 if [ -e ${BASEDIR}/usr/share/apache2/apache2-maintscript-helper ] ; then
                     . ${BASEDIR}/usr/share/apache2/apache2-maintscript-helper
                     if [ -z "${BASEDIR}" ]; then
                         apache2_invoke disconf phpldapadmin.conf || exit $?
                     fi
                 fi
                 rm -f ${BASEDIR}/etc/$webserver/conf-available/phpldapadmin.conf
                 rmdir ${BASEDIR}/etc/$webserver/conf-available || true
                 ;;
             *)
                 ;;
         esac
    done

    db_get phpldapadmin/restart-webserver
	res="$RET"
	db_stop || true
    if [ "$res" = "true" ] && [ -z "${BASEDIR}" ]; then
        for webserver in $restart; do
            webserver=${webserver%,}
#            if [ -x /usr/sbin/invoke-rc.d ]; then
#                invoke-rc.d $webserver restart
#            else
#                /etc/init.d/$webserver restart
#            fi
            svcadm restart ${webserver}
        done
    fi
	;;

  purge)
	rm -f ${BASEDIR}/usr/share/phpldapadmin/config/config.php

	for ext in '~' '%' .bak .ucf-new .ucf-old .ucf-dist;  do
		rm -f ${BASEDIR}/etc/phpldapadmin/config.php$ext
	done

	rm -f ${BASEDIR}/etc/phpldapadmin/config.php

	if which ucf >/dev/null; then
		ucf --purge ${BASEDIR}/etc/phpldapadmin/config.php
	fi
	if which ucfr >/dev/null; then
		ucfr --purge phpldapadmin ${BASEDIR}/etc/phpldapadmin/config.php
	fi

	rmdir --ignore-fail-on-non-empty ${BASEDIR}/etc/phpldapadmin || true
	;;

esac

#DEBHELPER#
