#
#!/bin/sh
#
####################################################################################
####                           rezepte Version 0.21 
####                       Kochrezepte aus dem Internet
####                                
####					 nur fr FlexMen ab Version 2.02!                                
####
####              Das New-Tuxwetter-Team: SnowHead und Worschter
####################################################################################
#
# Anregung von barabas
#
# Installation: "rezepte" mit den Rechten 755 nach /var/plugins/ kopieren
#               in /var/tuxbox/config/shellexec.conf folgenden Eintrag einfuegen:
#
#               ACTION=&Rezepte online,/var/plugins/rezepte
#
#               Eine Internetverbindung muss selbstverstaendlich vorhanden sein
#
####################################################################################
# Wo liegen die Systemplugins? (bitte anpassen!)

flexmenu='/var/plugins/shellexec'
input='/var/bin/input'
msgbox='/var/bin/msgbox'
tuxwet='/var/plugins/tuxwet/tuxwetter'

####################################################################################
# Rezept-Menueoutfit (bitte VORSICHTIG anpassen! entspr. readme.txt des FlexMenues)

FONTSIZE=16
LINESPP=20
WIDTH=600
HIGHT=540

####################################################################################

# Globale Variablen
f0=/tmp/a.rez
f1=/tmp/x.rez
f2=/tmp/y.rez
f3=/tmp/z.rez
url='http://kochbuch.unix-ag.uni-kl.de'

# spezielle Slash-Notation fr "sed" erzeugen
twurl=`echo $url | sed -e s/'\/'/'\\\\\/'/g`
tuxwetter=`echo $tuxwet | sed -e s/'\/'/'\\\\\/'/g`
me=`echo "$0" | sed -e s/'\/'/@/g'`

# was soll gemacht werden?
case "$1" in

kategorie)
# Rezeptliste aus dem Kategoriefile erstellen
    if [ ! -s /tmp/"$3".rez ]; then
        echo FONT=/share/fonts/micron_bold.ttf > /tmp/"$3".rez
        echo FONTSIZE="$FONTSIZE" >> /tmp/"$3".rez
        echo LINESPP="$LINESPP" >> /tmp/"$3".rez
        echo HIGHT="$HIGHT" >> /tmp/"$3".rez
        echo WIDTH="$WIDTH" >> /tmp/"$3".rez
        echo MENU="$2" >> /tmp/"$3".rez
        wget -q -Y off -O - "$url"/kategorie.php?kat="$3"\&"$4" | sed -n -e s/','/';'/g -e s/\'//g -e /'<[Ll][Ii]><A'/s/'^[^\"]*\"\([^\"]*\)\">\([^\<]*\).*$'/ACTION=\\\&"\2","$tuxwetter \'TXTHTML=\2",$twurl"\1"\|\<PRE\>\|\<\\\/PRE\>\'/Igp >> /tmp/"$3".rez
        echo ENDMENU >> /tmp/"$3".rez
    fi
    if [ `grep -c "ACTION=" /tmp/"$3".rez` -gt 0 ]; then
        $flexmenu /tmp/"$3".rez
    else
        $msgbox size=32 title="Rezepte auflisten" msg="~c~YFehler beim Erstellen der Rezeptliste~n~n~cBitte ~uberpr~ufen Sie Ihre Internetverbindung!"
        rm /tmp/"$3".rez
    fi
;;

searchtext)
# Suchen nach dem Vorkommen eines Wortes im Rezepttext
    tosearch=`$input t="Suchen im Rezepttext" l="@@@@@@@@@@@@@@@@@@@@@@@@@" k=1 | sed -e s/' '*$//g`
    if [ `expr length "$tosearch"` -gt 3 ]; then 
        tosearchconf=`echo "$tosearch" | sed -e s/' '/'+'/g -e s/'~A'/'%C4'/g -e s/'~O'/'%D6'/g -e s/'~U'/'%DC'/g -e s/'~a'/'%E4'/g -e s/'~o'/'%F6'/g -e s/'~u'/'%FC'/g -e s/'~z'/'%DF'/g`
        wget -q -Y off -O "$f1" "$url"/bin/suche.php?suche1=Titel\&str1=\&suche2=Rezept\&str2="$tosearchconf"\&"$2"
        if [ -s "$f1" ]; then
            echo FONT=/share/fonts/micron_bold.ttf > $f0
            echo FONTSIZE="$FONTSIZE" >> $f0
	        echo LINESPP="$LINESPP" >> $f0
    	    echo HIGHT="$HIGHT" >> $f0
        	echo WIDTH="$WIDTH" >> $f0
            echo MENU=Rezepte mit "$tosearch" >> $f0
            sed -n -e /'<[Ll][Ii]><A'/s/','/';'/g -e s/\'//g -e /'<[Ll][Ii]><A'/s/'^[^\"]*\"\([^\"]*\)\">\([^\<]*\).*$'/ACTION=\\\&"\2","$tuxwetter \'TXTHTML=\2",$twurl"\1"\|\<PRE\>\|\<\\\/PRE\>\'/Igp "$f1" >> $f0            echo ENDMENU >> $f0
            echo ENDMENU >> $f0
            if [ `grep -c "ACTION=" "$f0"` -gt 0 ]; then
                $flexmenu $f0
            else
                if [ `grep -c "Zu viele Treffer" "$f1"` -gt 0 ]; then
                    $msgbox size=32 title="Suche nach $tosearch" msg="~c~YZu viele Fundstellen!~n~n~cBitte versuchen Sie eine neue Suche!"
                else
                    if [ `grep -c "Anzahl Treffer: 0" "$f1"` -gt 0 ]; then
                        $msgbox size=32 title="Suche nach $tosearch" msg="~c~YNichts gefunden!~n~n~cBitte versuchen Sie eine neue Suche!"
                    else
                        $msgbox size=32 title="Suche nach $tosearch" msg="~c~YFehler bei der Rezeptsuche!"
                    fi
                fi
            fi
        fi
    fi
;;

searchtitle)
# Suchen nach dem Vorkommen eines Wortes im Rezeptnamen
    tosearch=`$input t="Suchen im Rezeptnamen" l="@@@@@@@@@@@@@@@@@@@@@@@@@" k=1 | sed -e s/' '*$//g`
    if [ `expr length "$tosearch"` -gt 3 ]; then 
        tosearchconf=`echo "$tosearch" | sed -e s/' '/'+'/g -e s/'~A'/'%C4'/g -e s/'~O'/'%D6'/g -e s/'~U'/'%DC'/g -e s/'~a'/'%E4'/g -e s/'~o'/'%F6'/g -e s/'~u'/'%FC'/g -e s/'~z'/'%DF'/g`
        wget -q -Y off -O "$f1" "$url"/bin/suche.php?suche1=Titel\&str1="$tosearchconf"\&"$2"
        if [ -s "$f1" ]; then
            echo FONT=/share/fonts/micron_bold.ttf > $f0
            echo FONTSIZE="$FONTSIZE" >> $f0
	        echo LINESPP="$LINESPP" >> $f0
    	    echo HIGHT="$HIGHT" >> $f0
        	echo WIDTH="$WIDTH" >> $f0
            echo MENU=Rezepte f~ur "$tosearch" >> $f0
            sed -n -e /'<[Ll][Ii]><A'/s/','/';'/g -e s/\'//g -e /'<[Ll][Ii]><A'/s/'^[^\"]*\"\([^\"]*\)\">\([^\<]*\).*$'/ACTION=\\\&"\2","$tuxwetter \'TXTHTML=\2",$twurl"\1"\|\<PRE\>\|\<\\\/PRE\>\'/Igp "$f1" >> $f0            
            echo ENDMENU >> $f0
            if [ `grep -c "ACTION=" "$f0"` -gt 0 ]; then
                $flexmenu $f0
            else
                if [ `grep -c "Zu viele Treffer" "$f1"` -gt 0 ]; then
                    $msgbox size=32 title="Suche nach $tosearch" msg="~c~YZu viele Fundstellen!~n~n~cBitte versuchen Sie eine neue Suche!"
                else
                    if [ `grep -c "Anzahl Treffer: 0" "$f1"` -gt 0 ]; then
                        $msgbox size=32 title="Suche nach $tosearch" msg="~c~YNichts gefunden!~n~n~cBitte versuchen Sie eine neue Suche!"
                    else
                        $msgbox size=32 title="Suche nach $tosearch" msg="~c~YFehler bei der Rezeptsuche!"
                    fi
                fi
            fi
        fi
    fi
;;

*)
# PHP-Session-ID zuweisen lassen und Kategorieliste erstellen
    sessionid=`wget -Y off -O - "$url" | sed -n -e /Einloggen/s/'^[^?]*?\([^\"]*\).*$'/"\1"/gp`
    if [ `expr length "$sessionid"` -lt 25 ]; then
        $msgbox size=32 title="Verbindung herstellen" msg="~c~YKonnte keine Session-ID erhalten~n~cBitte ~uberpr~ufen Sie Ihre Internetverbindung!"
        exit 1
    fi
    echo FONT=/share/fonts/micron_bold.ttf > $f2
    echo FONTSIZE=16 >> $f2
    echo LINESPP=14 >> $f2
    echo MENU=Rezept-Kategorien >> $f2
    echo DEPENDON=\&Suchen im Rezeptnamen,"$0 searchtitle $sessionid","$input" >> $f2
    echo DEPENDON=\&*Suchen im Rezepttext,"$0 searchtext $sessionid","$input" >> $f2
    wget -q -Y off -O - "$url"/kategorie.php?"$sessionid" | grep -i '<[Ll][Ii]><A' | sed -e s/','/';'/g -e s/'^[^\"]*\"[^\=]*\=\([^\&]*\)\&[^\"]*\">\([^\<]*\)[^(]*(\([^)]*\).*$'/ACTION=\\\&"\2~Y~T255(\3 Rezepte)","$me kategorie '\2\' \'\1\' $sessionid"/Ig -e s/'@'/'\/'/g >> $f2
    echo ENDMENU='rm /tmp/*.rez,[ 1 ]' >> $f2
    if [ `grep -c "ACTION=" "$f2"` -gt 0 ]; then
        $flexmenu "$f2"
    else
        $msgbox size=32 title="Kategorien erstellen" msg="~c~YFehler beim Erstellen der Kategorien~n~n~cBitte ~uberpr~ufen Sie Ihre Internetverbindung!"
    fi

;;

esac

exit 0
