#!/bin/sh -e

# Debian alternc-awstats postinst
# Benjamin Sonntag <benjamin@alternc.org>

# Cette fonction regarde si un fichier de config ($1) a déjà reçu une modif
# de config, et sinon, lui ajoute la ligne voulue là où la balise le demande.
function configure {
    if grep -vqs "\*\*\*AWSTATS\*\*\*" $1
	then
        # 1. on déplace le fichier
	rm -f $1.alternc_awstats
	sed -e "s/\*\*\*ALTERNC_ALIASES\*\*\*/&\\
	# ***AWSTATS*** \\
	Include \"\/etc\/apache\/alternc-awstats.conf\"/" <$1 >$1.alternc_awstats
	mv -f $1.alternc_awstats $1
    fi
}


# Uses debconf
. /usr/share/debconf/confmodule
# Uses AlternC.conf
if [ -e /etc/alternc/local.sh ] 
then
    . /etc/alternc/local.sh
fi

case "$1" in
configure)
	## for older alternc version
    if [ -z "$MYSQL_HOST" ]
	then
	MYSQL_HOST="localhost"
    fi
    # 1st, configure the table if required
    mysql -h"$MYSQL_HOST" -p"$MYSQL_PASS" -u"$MYSQL_USER" "$MYSQL_DATABASE" </usr/share/alternc/awstats.sql || true

    # Then, configure the quota for "stats"
    RET="2"
    db_get alternc-awstats/default_quota_value
    /usr/lib/alternc/quota_init aws $RET

    # Compile the po files : 
    echo "Configuring apache"
    configure /etc/apache/httpd.conf
    configure /usr/share/alternc/1.0/install/etc/apache-ssl/httpd.conf
    echo "Configuring apache-ssl"
    configure /etc/apache-ssl/httpd.conf
    configure /usr/share/alternc/1.0/install/etc/apache/httpd.conf
    /usr/share/alternc/install/dopo.sh || true
    /etc/init.d/apache reload || true
    ln /usr/lib/cgi-bin/awstats.pl /var/alternc/cgi-bin/ -sf 

    # that's not very nice, but we need it
    chown www-data /etc/awstats /var/cache/awstats
    touch /etc/alternc/awstats.htpasswd
    chown 33 /etc/alternc/awstats.htpasswd
    chmod 777 /etc/alternc/awstats.htpasswd

    # Finally, add this module to the AlternC's menu : 
    if [ -z `grep menu_aws.php /var/alternc/bureau/admin/menulist.txt` ] 
    then
	echo "menu_aws.php" >>/var/alternc/bureau/admin/menulist.txt
	echo "you may move menu_aws.php to a better place in /var/alternc/bureau/admin/menulist.txt"
    fi

    ;;

abort-upgrade)
    exit 0
    ;;

abort-remove|abort-deconfigure)
    exit 0
    ;;

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

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

exit 0
