#!/bin/ash
#sfslinux@gmail.com 180810
srv=$1
sudo="`which sudo`"
ip="Ваш IP: `ifconfig |awk '/inet / && !/127.0.0.1/ {print $2}'`"

case "$srv" in
    "x11vnc") 
	sico=connect || sico="mime-application:x-shellscript" 
       btn='
       <button>
        <input file icon="gtk-help"></input>
        <label>Справка</label>
        <action>defaultbrowser "https://wiki.archlinux.org/index.php/X11vnc" &</action>
       </button>
	'
	w="Через vnc можно зайти в Вашу систему. 
Подключение возможно только через ssh туннель.
Т.е. необходимо дополнительно запустить ssh-сервер 
и подключаться на клиенте remminna или premote"  
#	ssh=" SSH"
    ;;
    "dropbear") 
	sico=ssh || sico="mime-application:x-shellscript" 
       btn='
       <button>
        <input file icon="lock"></input>
        <label>Смена пароля</label>
        <action>chpass &</action>
       </button>

       <button>
        <input file icon="gtk-help"></input>
        <label>Справка</label>
        <action>defaultbrowser "https://ru.wikipedia.org/wiki/SSH" &</action>
       </button>
	'
	w="Через ssh посторонние могут зайти в Вашу систему. 
Чтобы этого не произошло, измените стандартные (woofwoof) пароли всех пользователей"  
	ssh=" SSH"
    ;;
	
    acestreamengine)
	sico=ace-logo
	w="
Плейлист: /home/live/TV/ttv.all.proxy.m3u
Переключение каналов происходит с задержкой"
	ip=
	btn='
       <button>
        <input file icon="gtk-help"></input>
        <label>Справка</label>
        <action>defaultbrowser "http://video-check.com/publ/1-1-0-221" &</action>
       </button>
	'
    ;;
    STM-Hypervisor)
	sico=/usr/share/pixmaps/noxbit.png
	srv1=" (noxbit)"
	w="
Плейлист: /home/live/TV/ttv.all.nox.m3u
Переключение каналов происходит с задержкой"
	ip=
	btn='
       <button>
        <input file stock="gtk-edit"></input>
        <label>noxbit.cfg</label>
        <action>leafpad /home/live/.config/noxbit.cfg &</action>
       </button>
       <button>
        <input file icon="gtk-help"></input>
        <label>Справка</label>
        <action>defaultbrowser "https://noxbit.com/" &</action>
       </button>
	'
    ;;
	
    *)	ntf -a "$0 ОШИБКА!" "Запускайте: $0 название_сервиса" && exit || exit ;;
esac


#if [ "`which systemctl`" = "" ] ;then
	[ "$srv" = "ssh" ] && srv=sshd
	
	if [ "`pidof $srv`" = "" ] ;then
		st="$srv$srv1 остановлен"
	    else
		st="$srv$srv1 запущен"
	fi
#else
#	st="`$sudo systemctl  status "$srv"`"
#fi

if [ -n "`echo $st|grep "запущен"`" ] ;then
	act=Остановить
	ic=gtk-media-stop
else
	st="$srv$srv1 остановлен"
	act=Запустить
	ic=gtk-media-play
fi
#echo "st=$st" ;exit
export DIALOG='
<window title="'$srv'" resizable="false" icon-name="'$sico'">
 <vbox>
  <hbox>
  <pixmap activates_default="true"><height>48</height><width>48</width><input file icon="'$sico'"></input></pixmap>
  <text use-markup="true">
    <label>"<b>'$st'. '$ip'</b>
'$w'"
    </label>
  </text>
  </hbox>
  <hbox>
       <button can-default="true" has-default="true">
        <input file stock="'$ic'"></input>
        <label>'$act'</label>
       </button>

	'$btn'
  </hbox>
  <hbox>

       <button>
        <input file icon="startup_config"></input>
        <label>Автозапуск</label>
        <action>xfce4-session-settings ||lxsession-edit || wmstartups &</action>
       </button>

       <button cancel></button>
  </hbox>
 </vbox>
</window>
'
ret="`gtkdialog --program=DIALOG  --center`" 
eval "$ret"
#echo $ret; echo $EXIT;echo $f;exit
#[ "`echo "$EXIT" |egrep 'Запустить|Остановить'`" ] || exit
#service="service "
#[ "`which service`" = "" ] && service="sh /etc/init.d/"
	P(){ p="`pgrep -f "python2 /opt/aceproxy/acehttp.py"`" p2="`pidof $srv`" ; }

case "$EXIT" in
"Запустить" ) 
    if [ "$srv" = "ssh" ] ;then
# ssh keygen
#/etc/init.d/xinetd stop

`which sudo` rm -f /etc/ssh/ssh_host_*

#lsb_release -cs | grep -vqE '(lucid|maverick)' && ssh-keygen -q -f /etc/ssh/ssh_host_ecdsa_key -N '' -t ecdsa
`which sudo`     ssh-keygen -q -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa &&
`which sudo`     ssh-keygen -q -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa &&
     echo "New SSH keys have been generated"

#/etc/init.d/ssh stop
#update-rc.d -f ssh remove
#initctl stop ssh
#/etc/init.d/xinetd start
    fi

    if [ "$srv" = "x11vnc" ] ;then
	#ntf -i "x11vnc" "$w" &
        #msg="`$sudo $srv\ctl start`" 
        $sudo x11vnc --listen localhost &
        sleep 1 
        pidof x11vnc && msg=запущен || msg="не запущен"
	ntf -i "$srv" "$msg" &
	pidof $srv && yad --text="`printf "$srv запущен \n$ip\nНажмите для остановки"`" \
	    --notification --image=$sico   --command='bash -c "wt \"sudo pkill -9 '$srv'\" & kill $YAD_PID"' &
    fi
    
    if [ "$srv" = "dropbear" ] ;then
	ntf -i "SSH dropbear" "$w" &
        msg="`$sudo $srv\ctl start`" 
	ntf -i "$srv" "$msg" &
	pidof $srv && yad --text="`printf "$srv$ssh запущен \n$ip\nНажмите для остановки"`" \
	    --notification --image=$sico   --command='bash -c "wt \"sudo pkill -9 '$srv'\" & kill $YAD_PID"' &
    fi
#    [ "`which service`" = "" ] && msg="запущен"

    if [ "$srv" = "acestreamengine" ] ;then
	acetv 
	P
	[ "$p" ] && yad --text="`printf "<b>$srv запущен</b>\n\n<i>Левый клик</i> : остановка\n<i>Правый клик</i> : плейлист\n \n"`" \
	    --menu="$w!m3u-gui /home/live/TV/ttv.all.proxy.m3u!mpv" \
	    --notification --image=$sico   --command='bash -c "wt \"sudo kill '$p'\" & kill $YAD_PID"' &
    fi

    if [ "$srv" = "STM-Hypervisor" ] ;then
	noxbit
	#P
	srv1=Noxbit
	#[ "$p" ] && 
	for s in  vlc smplayer gnome-mpv  m3u-gui; do
	    which $s && break
	done
	yad --text="`printf "<b>$srv1 запущен</b>\n\n<i>Левый клик</i> : остановка\n<i>Правый клик</i> : плейлист\n \n"`" \
	    --menu="$w!$s /home/live/TV/ttv.all.nox.m3u!mpv" \
	    --notification --image=$sico --command='bash -c "wt \"sudo killall '$srv'\" & kill $YAD_PID"' &
    fi
    ;;
"Остановить" ) 
	KL(){ kill `pgrep -f "yad --text=$srv"` ; }
    [ "$srv" = "x11vnc" ] &&  wt "`$sudo killall $srv`" 

    if [ "$srv" = "dropbear" ] ;then
#        msg="`$sudo $srv\ctl stop`" 
        wt "`$sudo $srv\ctl stop`" 
    fi

    if [ "$srv" = "acestreamengine" ] ;then
	P ; wt "sudo kill $p"
	#wt "sudo pkill -f "python2 /opt/aceproxy/acehttp.py"" 
	#wt "sudo killall $srv" 
    fi
    
    [ "$srv" = "STM-Hypervisor" ] && wt "sudo killall $srv"
    KL
    ;;
*       ) exit;;
esac
