#!/bin/sh

[ ! -z ${MAILPLUS_SERVER_LOG_UTIL+MAILPLUS_SERVER_LOG_DEFINED} ] || . /var/packages/MailPlus-Server/target/scripts/MailPlusServerLogUtil.sh
. /var/packages/MailPlus-Server/target/scripts/DsmVersionUtil.sh

#Conf dir/file definition
MAIL_SERVER_PKG_INFO=/var/packages/MailPlus-Server/INFO

#Global variable
SDK_MOD_VER="1.0"
MAIL_SERVER_PKG_NAME=""
MAIL_SERVER_PKG_VERSION=""
MAIL_SERVER_PKG_VENDOR=""

#file lock for alias db
ALIAS_DB_FILE_LOCK="/tmp/mailplus_server_alias_db.lock"

PackageInfoGet(){
	if [ -f "${MAIL_SERVER_PKG_INFO}" ]; then
		MAIL_SERVER_PKG_NAME=`/bin/get_key_value ${MAIL_SERVER_PKG_INFO} package`
		MAIL_SERVER_PKG_VERSION=`/bin/get_key_value ${MAIL_SERVER_PKG_INFO} version`
		MAIL_SERVER_PKG_VENDOR=`/bin/get_key_value ${MAIL_SERVER_PKG_INFO} maintainer`
	else
		echo "MailPlusServer package info file does not exist!";
		exit 1;
	fi
}

PackageEnableGet(){
	if isPackageEnable; then
        echo "1";
		return 1;
    else
        echo "0";
		return 0;
    fi
}

getNameLocalPart()
{
	NAME=$1
	if [ "${SERVER_TYPE}" == "domain" ]; then
		NAME="`echo ${NAME} | sed s/^[^\\\\]*[\\\\]//g`"
	elif [ "${SERVER_TYPE}" == "ldap" ]; then
		NAME="`echo ${NAME} | sed s/@.*$//g`"
	fi
	echo ${NAME}
}

checkAccountType()
{
	local MAIL_ACCOUNT_TYPE="$(/var/packages/MailPlus-Server/target/bin/syno_mailserver_backend --getConfKeyVal "account_type")"
	: ${MAIL_ACCOUNT_TYPE:="local"}

	if [ "${SERVER_TYPE}" == "domain" ] && [ "${MAIL_ACCOUNT_TYPE}" != "win" ] ; then
		return 1
	elif [ "${SERVER_TYPE}" == "ldap" ] && [ "${MAIL_ACCOUNT_TYPE}" != "ldap" ]; then
		return 1
	elif [ -z "${SERVER_TYPE}" ] && [ "${MAIL_ACCOUNT_TYPE}" != "local" ]; then
		return 1
	fi

	return 0
}
