#!/bin/bash
v=161206 #sfs
SAVE(){ 
no="$HOME/.config/.nosave"
[ -f $no ] && return
if [ "$m2" != "" ] ;then
m3="Создать файл сохранения?"
	y=`yad --center --title "$TITLE" \
	--window-icon='gtk-save' --title="$m3" \
	--text="$m1 $m2 \n\n$m3" \
	--image='save' --image-on-top --fixed \
	--buttons-layout='center' --button gtk-yes:2 --button gtk-no:0 \
	--form --columns=1 \
	--field=':LBL' '' \
	--field='Больше не задавать этот вопрос:CHK'  \
	--Xfield=':LBL' '' \
	`
r="$?"
[ "$r" = "252" ] && exit
[ "`echo $y|grep TRUE`" ] && touch $no
[ "$r" = "2" ] || return
    sudo make-changes.sh ;exit
fi
}
SAVEXXX(){ 
if [ "$m2" != "" ] ;then
    ntf -q "$m1 $m2" "\nСоздать файл сохранения?"  ||return
    sudo make-changes.sh ;exit
    ntf  m2="-$m2-" ;exit
fi
}


if [ "$1" = "" ];then
	m="Завершение работы"
	m1="При перезагрузке без RW сохранения"
	m2="все сделанные Вами изменения будут утеряны!"
    else
	m=$1
	m1=$2
	m2=$3
fi
value() { egrep -o "(^| )$1=[^ ]+" /proc/cmdline | cut -d= -f2; } #sfs
[ "`value changes`" ] && m1="сессия сохранена в `value changes`" && m2=
#pfss="`losetup -a |egrep '^/dev/loop.*base/090-save-.*.pfs\)$'`" 
#[ "$pfss" ] && m1="сессия сохранена в `echo "$pfss" | awk '{print $3}'`" && m2=
#[ "`ps ax|grep "gxmessage -title $m" |wc -l`" = "2" ] && exit

#notify-send "$m1" "$m2" -i info &

GD() {
GTKDIALOG=gtkdialog

XML='
<window title="Выключение v.'$v'" resizable="false" decorated="true" border-width="15" window_position="1" icon-name="gtk-quit">
	<vbox>
		<frame>
			<hbox spacing="'$s'" space-expand="1" shadow-type="2">
				<pixmap>
					<input file stock="gtk-info"></input>
				</pixmap>
				<text width-chars="35" use-markup="true" justify="2">
			<label>"<span size='"'x-large'"' fgcolor='"'darkred'"'><b>'$m'</b></span>
'$m1' '$m2'"</label>
<label>"<span fgcolor='"'darkred'"'><b>This</b></span> <s>text</s> <i>includes</i> <span fgcolor='"'darkgreen'"'>XML</span> <u>markup</u>."</label>

				</text>
			</hbox>
		</frame>

 <hbox space-expand="1">

		<button>
			<input file icon="gtk-cancel"></input>
			<label>Отмена</label>
		</button>

		<button>
			<input file icon="gtk-refresh"></input>
			<label>Перезагрузка</label>
			<action type="exit">3</action>
		</button>

		<button>
			<input file icon="gtk-stop"></input>
			<label>Выключение</label>
			<action type="exit">4</action>
		</button>

</hbox>
 <hbox space-expand="1">
		<button>
			<input file icon="suspend"></input>
			<label>Ждущий режим</label>
			<action type="exit">5</action>
		</button>

		<button>
			<input file icon="hibernate"></input>
			<label>Спящий режим</label>
			<action type="exit">2</action>
		</button>

		<button>
			<input file icon="gtk-save"></input>
			<label>Сохранение</label>
			<action type="exit">8</action> 
		</button>
 </hbox>

 <hbox space-expand="1">
		<button>
			<input file icon="terminal"></input>
			<label>Выход в консоль</label>
			<action type="exit">6</action>
		</button>

		<button>
			<input file icon="graphics_restart"></input>
			<label>Перезагрузка X сервера</label>
			<action type="exit">7</action> ## sdsdsdsd sds
		</button>
 </hbox>
	</vbox>
	<variable>DIALOG</variable>
</window>
'
export GUI="`echo "$XML" | sed -e 's/##.*//'`"
ret="`gtkdialog --program=GUI --center`"
eval "$ret"
#echo "DLG2: $ret"; echo "EXIT=$EXIT";echo "$file www=$www" ;exit
}

GM() {
gxmessage  -title "$m" -fg red -wrap "$m" -center -font "Sans bold 10" \
-default "_Отмена" -buttons "_Отмена":1,"_Перезагрузка":3,"_Ждущий режим":5,"_Спящий режим":2,"_Выключение":4 >/dev/null 
EXIT=$?
}


[ "`which gtkdialog`" ] && GD || GM

if [ -f /etc/rc.d/PUPSTATE ] ;then

case "$EXIT" in
#1)
#echo "Exit";;
3)
wmreboot
        ;;
4)
wmpoweroff 
        ;;
5)
/etc/acpi/actions/suspend.sh
        ;;
2)
do_sleep
        ;;
*       ) exit;;
esac

else

case "$EXIT" in
#1)
#echo "Exit";;
3)	SAVE #&& sudo make-changes  
	sudo /sbin/shutdown -r now
	;;
4)	SAVE #&& sudo make-changes  
	sudo /sbin/shutdown -h now  
	;;
5)	. "/home/`sfsusr`/.config/pass.conf"
	if [ "$suspend" ];then
	    xlock -s &
	    sleep 1
	fi
	sudo pm-suspend        
	[ "$suspend" ] && ntf -i "Введите пароль" "пользователя '`sfsusr`'" &
	;;
2)	#sudo pm-hibernate
	ntf -q "В настоящее время 'спящий режим' не реализован" "Хотите узнать подробности?" && defaultbrowser "http://forum.puppyrus.ml/index.php?topic=17101.0" &
        ;;
6)	if [ "`pidof lightdm`" ] ;then
	    ntf -w "Будет открыт терминал tty2" "\nВернуться в Х: Ctrl+Alt+F7" 
	    xdotool key Ctrl+Alt+F2 
	    exit 
	else  restartcons 
	fi
	;;
#7)	sudo killall X ;;
7)	restartwm ;;
#7)	xlogin restart || sudo kill `pidof X Xorg.bin` ;;
8)	sudo make-changes.sh #create-save-pfs 
	$0 & 
	exit  
	;;
*       ) exit;;
esac
exit
fi
gxmessage  -title "$m" -fg red -wrap "$m" -center -font "Sans bold 10" \
-default "_Отмена" -buttons "_Отмена":1,"_Перезагрузка":3,"_Ждущий режим":5,"_Сохранение":2,"_Выключение":4 >/dev/null 
