# main start

IFCONFIG=/sbin/ifconfig
INTERFACE="egiga0"
PKGNAME=`basename ${0}`
PKGPATH=/usr/local/zy-pkgs
CONFIG_FILE=${PKGPATH}/config/${PKGNAME}/config
BIN_FILE=${PKGPATH}/bin
ETC_FOLDER=${PKGPATH}/etc/pyload
ADMINPKG=/i-data/md0/admin/zy-pkgs

getlink()
{
	echo "pyLoad/pyLoad.html"
}

status()
{
	echo "Built-in"
}

status_CLI()
{
	if [ ! -f ${CONFIG_FILE} ]; then
		mkdir -p ${CONFIG_FILE%/*}
		echo "Disabled" > ${CONFIG_FILE}
	fi

	if [ `cat ${CONFIG_FILE}` == "Enabled" ]; then
		echo "Enabled"
	else
		echo "Disabled"
	fi
}

startup()
{
	echo "startuping pyLoad ..."

	ln -s ${ADMINPKG}/${PKGNAME}/etc/pyload /tmp/.pyload

	if [ "`cat ${CONFIG_FILE}`" = "Enabled" ]; then
		/usr/local/zy-pkgs/etc/init.d/${PKGNAME} enable
	else
		/usr/local/zy-pkgs/etc/init.d/${PKGNAME} disable
	fi
}

enable()
{
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/zyxel/sbin:/usr/local/zy-pkgs/bin:/zyxel/htp \
	LD_LIBRARY_PATH=/usr/local/zy-pkgs/lib PYTHONHOME=/usr/local/zy-pkgs/ \
			/sbin/start-stop-daemon -N 19 --start --quiet --pidfile \
			/i-data/md0/admin/zy-pkgs/pyLoad/etc/pyload/ssd-${PKGNAME}.pid --make-pidfile --background --exec ${BIN_FILE}/python2.6 \
            -- ${ADMINPKG}/${PKGNAME}/pyload/pyLoadCore.py --configdir=/tmp/.pyload --daemon
	if [ $? -ne 0 ]; then
		exit 1
	fi
	echo "DownloadDaemon is Enabled."
	echo "Enabled" > ${CONFIG_FILE}
}

disable()
{
	pid=`ps www | grep pyLoadCore.py | grep -v grep | awk '{print $1}'`
	kill ${pid}
	rm ${ADMINPKG}/${PKGNAME}/etc/pyload/ssd-${PKGNAME}.pid
	echo "Disabled" > ${CONFIG_FILE}
}

shutdown()
{
	pid=`ps www | grep pyLoadCore.py | grep -v grep | awk '{print $1}'`
	kill ${pid}
	rm ${ADMINPKG}/${PKGNAME}/etc/pyload/ssd-${PKGNAME}.pid
}

getport()
{
	PORT=`LD_LIBRARY_PATH=/usr/local/zy-pkgs/lib PYTHONPATH=${ADMINPKG}/${PKGNAME}/pyload /usr/local/zy-pkgs/bin/python2.6 /usr/local/zy-pkgs/bin/pyLoad_Set.py get_web_port`
	echo "${PORT}"
}

case "${1}" in
	getlink )
		getlink
		;;
	status )
		status
		;;
	status_CLI )
		status_CLI
		;;
	getport )
		getport
		;;
	startup )
		startup
		;;
	enable )
		enable
		;;
	disable )
		disable
		;;
    shutdown )
		shutdown
		;;
	* )
		echo "unknown argument \"${1}\""
		;;
esac

exit 0
