#!/bin/sh
v=240401 #sfs
yad --version |grep -E '^0' && gtk=gtk || gtk=yad
#http://ptspts.blogspot.ru/2009/10/screen-blanking-dpms-screen-saver.html
#date +"%M %H %d" --date="@3601 1 days ago" -u ;exit
#d="`date +"%d" -d @$s -u`" #;exit
t1="Управление электропитанием"
t="<b>Гашение экрана</b> при простое (DPMS)."

#which cbatticon && cb="--button=Батарея!battery!\\\"Настройка\ cbattery\ -\ мониторинг\ батареи\ в\ трее\\\":1"
which cbatticon-gui && cb="--button=Батарея!battery!cbatticon:1"
Y(){
yad --title="`basename "$0"` v.$v" --f1-action=power-hlp --uri-handler=xdg-open \
    --text=" <big>$t1</big>" \
    --image="battery" \
    --window-icon="battery" \
    --fixed --image-on-top --center \
    --form \
	--field=":LBL"  \
    --field="$t:LBL"  \
    --field="минут:!0=не гасить. Актуально при просмотре фильмов в браузере и т.п.:NUM" \
    --field="Хранитель экрана:!Например: slimlock i3lock csxlock xlock slock. Если нужно указать ключи - создайте скрипт:FL" \
    --field="запрос пароля для возобновления работы:CHK" \
	--field=":LBL"  \
    --field="<b>Ждущий режим</b> (suspend):LBL"  \
    --field="запрос пароля для возобновления работы:CHK" \
    --field="suspend вместо гашения экрана:CHK" \
	--field=":LBL"  \
    --Xfield="Документация":link  \
    --Xfield="Принцип работы, кнопки питания, сна, крышка!gtk-help!:FBTN" \
    --button=Помощь!gtk-help!"Принцип работы, кнопки питания, сна, крышка":3  $cb \
    --button=$gtk-ok:0  \
    --button=$gtk-cancel:2  \
    -- \
    1 \
    2 \
	"$min" \
    "$ssaver" \
	"$pdpms" \
    7 \
    8 \
	"$psus" \
	"$ss" \
    11 \
    'bash -c "power-hlp &"' 
}

p="$HOME/.config/power-man.conf"

#i3lock -n -k --indicator -c 000000  --time-color ffffff --date-color ffffff --greeter-color ffffff --time-str=%H:%M --date-str=%A:%d.%m.%y --keylayout 2 --layout-color ffffff
if [ ! -f "$p" ] ;then
    for i in slimlock i3lock csxlock xlock slock ;do
	i3lock="`which $i`" && break
    done
    mkdir -p "`dirname "$p"`" &&
    printf "dpms=`xset -q |awk '/timeout: / {print $2}'`\nssaver=\"$i3lock\"\npdpms=0\npsus=0\nss=0\nsudo=\n" >"$p"
fi
. "$p"

min="`echo $dpms |awk '{print int($1/60)}'`"
y="$(Y)"
r="$?"
echo "$p: $y $r"

    PARSE(){
d="`echo $y |awk -F"|" '{print int($3*60)}'`"
sed -i 's/^dpms=.*//' "$p"
echo "dpms=$d" >>"$p"

sed -i 's/^ssaver=.*//' "$p"
echo $y |awk -F"|" '{print "ssaver=\""$4"\""}' >>"$p"

sed -i 's/^pdpms=.*//' "$p"
[ "`echo $y |awk -F"|" '{print $5}'`" = "TRUE" ] && echo "pdpms=true" >> $p || echo "pdpms=false" >> $p 

sed -i 's/psus=.*//' "$p"
if [ "`echo $y |awk -F"|" '{print $8}'`" = "TRUE" ] ;then
    echo "---systemctl enable  suspend@`whoami` "
    echo "psus=true" >>"$p"
    #[ "$sudo" ] && sudo systemctl enable  suspend@`whoami` 
else
    echo "---systemctl disable  suspend@`whoami` "
    echo "psus=false" >>"$p"
    #[ "$sudo" ] && sudo  systemctl disable suspend@`whoami` 
fi

sed -i 's/^ss=.*//' "$p" 
[ "`echo $y |awk -F"|" '{print $9}'`" = "TRUE" ] && echo "ss=true" >>"$p" || echo "ss=false" >>"$p"

sed -i '/^$/d' "$p"
. "$p"
power-exe --start
    }
    
case $r in
    0) PARSE	;;
    1) cbatticon-gui & ;;
    3)	power-hlp & 
	"$0" & ;;
    *) exit ;;
esac
