#!/bin/sh

case $1 in
	start)
		if [ ! -e /var/packages/DVBLinkServer/enabled ] &&  [ ! -e /var/packages/TVMosaic/enabled ]; then
			if [ -e /etc/sundtek.conf ] && [ "`grep -c first_adapter /etc/sundtek.conf`" = "1" ]; then
				sed -i '/first_adapter/d' /etc/sundtek.conf
			fi
		fi
		if [ -e /volume1/@appstore/TVMosaic/start2.sh ] &&
		   [ "`grep -c sundtek /volume1/@appstore/TVMosaic/start2.sh`" = "0" ]; then

		   sed -i '2i\
if [ -e /var/packages/sundtek/target/opt/bin/mediaclient ]; then\
    if [ ! -e /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf ]; then\
         echo first_adapter=8 > /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf\
    fi\
    export LD_PRELOAD=/var/packages/sundtek/target/opt/lib/libmediaclient.so\
    /var/packages/sundtek/target/opt/bin/mediaclient --shutdown\
    /var/packages/sundtek/target/opt/bin/mediaclient --start=10 \\\
    --serverpath=/var/packages/sundtek/target/opt/bin \\\
    --config=/var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf \\\
    --pluginpath=/var/packages/sundtek/target/opt/bin/\
fi\
' /volume1/@appstore/TVMosaic/start2.sh

	fi

		if [ -e /volume1/@appstore/DVBLinkServer/start2.sh ] &&
		   [ "`grep -c sundtek /volume1/@appstore/DVBLinkServer/start2.sh`" = "0" ]; then

		   sed -i 's#cd \$current_dir#cd \$current_dir\
if [ -e /var/packages/sundtek/target/opt/bin/mediaclient ]; then\
    if [ ! -e /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf ]; then\
         echo first_adapter=8 > /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf\
    fi\
    export LD_PRELOAD=/var/packages/sundtek/target/opt/lib/libmediaclient.so\
    /var/packages/sundtek/target/opt/bin/mediaclient --shutdown\
    /var/packages/sundtek/target/opt/bin/mediaclient --start=10 \\\
    --serverpath=/var/packages/sundtek/target/opt/bin \\\
    --config=/var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf \\\
    --pluginpath=/var/packages/sundtek/target/opt/bin/\
fi\
#g' /volume1/@appstore/DVBLinkServer/start2.sh

	fi
		if [ -e /volume1/@appstore/DVBLinkServer/start.sh ] &&
		   [ "`grep -c sundtek /volume1/@appstore/DVBLinkServer/start.sh`" = "0" ]; then

		   sed -i 's#cd \$current_dir#cd \$current_dir\
if [ -e /var/packages/sundtek/target/opt/bin/mediaclient ]; then\
    if [ ! -e /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf ]; then\
         echo first_adapter=8 > /var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf\
    fi\
    export LD_PRELOAD=/var/packages/sundtek/target/opt/lib/libmediaclient.so\
    /var/packages/sundtek/target/opt/bin/mediaclient --shutdown\
    /var/packages/sundtek/target/opt/bin/mediaclient --start=10 \\\
    --serverpath=/var/packages/sundtek/target/opt/bin \\\
    --config=/var/packages/sundtek/target/opt/bin/sundtek_dvblogic.conf \\\
    --pluginpath=/var/packages/sundtek/target/opt/bin/\
fi\
#g' /volume1/@appstore/DVBLinkServer/start.sh 

	fi
                if [ -e /var/packages/tvheadend* ]; then
		   ls -d /var/packages/tvheadend* | while read a; do
		      if [ -e $a/scripts/start-stop-status ] && [ "`grep libmediaclient $a/scripts/start-stop-status -c`" = "0" ]; then
			sed -i 's#^    ${TVHEADEND}#    LD_PRELOAD='${SYNOPKG_PKGDEST}'/opt/lib/libmediaclient.so ${TVHEADEND}#g' $a/scripts/start-stop-status
			sed -i 's#su - ${RUNAS} -c "${TVHEADEND}#su - ${RUNAS} -c "LD_PRELOAD=/'${SYNOPKPG_PKGDEST}'/opt/lib/libmediaclient.so ${TVHEADEND}#g' $a/scripts/start-stop-status
		        if [ -e $a/scripts/start-stop-status ] && [ "`grep libmediaclient $a/scripts/start-stop-status -c`" = "0" ]; then
				sed -i '4iif [ -e '${SYNOPKG_PKGDEST}'/opt/lib/libmediaclient.so ]; then export LD_PRELOAD='${SYNOPKG_PKGDEST}'/opt/lib/libmediaclient.so; fi' $a/scripts/start-stop-status
			fi	
		      fi
                      # this is a bug which keeps asking the user for the password..
                      # the user management is totally messed up with the tvheadend packages (17. March 2016)
                      # this is the reason why for some people tvheadend keeps asking for a password
                      # and the one which was set doesn't work
                      if [ "$(grep -c USER=\"tvheadend- $a/scripts/start-stop-status)" != "0" ]; then
			 if [ "$(synouser --enum | grep ^tvheadend$ -c)" = "0" ]; then
                               # create an expired account (ftp etc. should not be possible)
			       synouser --add tvheadend 1 "Synology Inc." 1 tvheadend@localhost 31
                         fi
                         killall -9 tvheadend
                         chown tvheadend $a/target/var/backup
			 chown tvheadend $a/target/var/backup/*
			 chown -R tvheadend $a $a/target/
			 chgrp -R users $a $a/target/
                         sed -i 's/USER=\"tvheadend-.*/USER="tvheadend"/' $a/scripts/start-stop-status
                      fi
                   done
                fi
		${SYNOPKG_PKGDEST}/opt/bin/mediasrv -d -p ${SYNOPKG_PKGDEST}/opt/bin
		exit 0
	;;
	stop)
		${SYNOPKG_PKGDEST}/opt/bin/mediaclient --shutdown
		exit 0
	;;
	status)
		${SYNOPKG_PKGDEST}/opt/bin/mediaclient -e
		if [ "$?" = "0" ]; then
			exit 0;
		else
			exit 1;
		fi
	;;
	log)
		exit 0
	;;
esac
                                     
