#!/bin/sh

if [ -f "/tmp/MailStation.upgrade" ]; then
	exit 0
fi

DB_NAME="roundcubemail"
DB_USER="postgres"
DB_OWNER="MailStation"

{
	NEWVERSION=`grep ^version /var/packages/MailStation/INFO | cut -d'"' -f2 | cut -d'-' -f2`

	echo "`date \"+%F %T\"` ==== install $NEWVERSION start ===="
	RCUBE_INIT_SQL="/var/packages/MailStation/target/mail/SQL/postgres.initial.sql"
	MAILSTATION_INIT_SQL="/var/packages/MailStation/target/mail/plugins/mailstation/SQL/mailstation.postgres.initial.sql"
	/usr/bin/psql -U $DB_USER $DB_NAME < ${RCUBE_INIT_SQL}
	/usr/bin/psql -U $DB_USER $DB_NAME < ${MAILSTATION_INIT_SQL}

	echo "`date \"+%F %T\"` roundcubemail database initialized"
	#we need change database owner before any database operation
	SYNOPGSQL="/usr/syno/bin/synopsql"
	if [ -f ${SYNOPGSQL} ]; then
	        ${SYNOPGSQL} --change-own ${DB_NAME} ${DB_OWNER}
	fi

	echo "`date \"+%F %T\"` roundcubemail database owner changed"

	if [ $SYNOPKG_DSM_VERSION_BUILD -lt 2500 ]; then
		IMAP_isEnabled=`/bin/get_key_value /etc/synoinfo.conf imap_enabled`
		if [ "x$IMAP_isEnabled" != "xyes" ]; then
			echo "imap_enabled=\"yes\"" >> /etc/synoinfo.conf
			/usr/syno/etc/rc.d/S89mailserv.sh restart
		fi
	fi
	echo "`date \"+%F %T\"` ==== install $NEWVERSION done ===="
} >> /var/packages/MailStation/target/mail/logs/install 2>&1


MAIL_SERVER_HOSTNAME=`/bin/get_key_value "/var/packages/MailServer/etc/mailserver.conf" smtp_hostname`
: ${MAIL_SERVER_HOSTNAME:="localhost"}

RCUBE_CONFIG="/var/packages/MailStation/target/mail/config/config.inc.php"
sed "/^\$config\['mail_domain'\]/c\\\$config['mail_domain'] = '${MAIL_SERVER_HOSTNAME}';" ${RCUBE_CONFIG} > ${RCUBE_CONFIG}.$$
mv ${RCUBE_CONFIG}.$$ ${RCUBE_CONFIG}
chown MailStation:MailStation ${RCUBE_CONFIG}

echo "`date \"+%F %T\"` ==== postinst finished ====" >> /var/packages/MailStation/target/mail/logs/install

exit 0
