fixed typo at switch.cgi (rec
[svn42.git] / powersensordaemon / switch.cgi
1 #!/bin/sh
2
3 for QUERY in `echo $QUERY_STRING | tr '&' ' '`; do
4   for VALUE in `echo $QUERY | tr '=' ' '`; do
5     if [ "$VALUE" == "id" ]; then
6       ID='?'
7     elif [ "$ID" == "?" ]; then
8       ID=$VALUE
9     elif [ "$VALUE" == "power" ]; then
10       POWER='?'
11     elif [ "$POWER" == "?" ]; then
12       POWER=$VALUE
13     elif [ "$VALUE" == "ajax" ]; then
14       AJAX='?'
15     elif [ "$AJAX" == "?" ]; then
16       AJAX=$VALUE
17     fi
18     i=$i+1
19   done
20 done
21
22 UNIXSOCK=/var/run/powersensordaemon/cmd.sock
23 VALID_ONOFF_IDS="decke ambientlights lichter all werkzeug labor dart logo idee deckehinten deckevorne"
24 VALID_SEND_IDS="ymhpoweron ymhpoweroff ymhpower ymhvolup ymhvoldown ymhcd ymhwdtv ymhtuner ymhvolmute ymhmenu ymhplus ymhminus ymhtest ymhtimelevel ymheffect ymhprgup ymhprgdown ymhtunplus ymhtunminus ymhtunabcde ymhtape ymhvcr ymhextdec panicled"
25
26
27 [ "$POWER" == "send" ] && POWER=on
28 if [ "$POWER" == "on" -o "$POWER" == "off" ]; then
29   for CHECKID in $VALID_ONOFF_IDS $VALID_SEND_IDS; do 
30     if [ "$CHECKID" == "$ID" ]; then
31       echo "power $POWER $ID" | usocket $UNIXSOCK
32       echo "Content-type: text/html"
33       echo ""
34       echo "<html>"
35       echo "<head>"
36       echo "<title>Realraum rf433ctl</title>"
37       echo '<script type="text/javascript">window.location="http://slug.realraum.at/cgi-bin/switch.cgi";</script>'
38       echo "</head></html>"
39       exit 0
40     fi
41   done
42 fi
43
44 DESC_werkzeug="Werkzeug LEDs"
45 DESC_stereo="Receiver On/Off"
46 DESC_ambientlights="Ambient Lichter"
47 DESC_labor="Labor Licht"
48 DESC_dart="Dart Scheibe"
49 DESC_logo="Logo"
50 DESC_idee="Idee"
51 DESC_deckehinten="Decke Hinten"
52 DESC_deckevorne="Decke Vorne"
53 DESC_decke="Deckenlichter"
54 DESC_lichter="Alle Lichter"
55 DESC_all="Alles"
56 DESC_ymhpoweron="Receiver On"
57 DESC_ymhpoweroff="Receiver Off"
58 DESC_ymhpower="Receiver On/Off"
59 DESC_ymhvolup="VolumeUp"
60 DESC_ymhvoldown="VolumeDown"
61 DESC_ymhcd="Input CD"
62 DESC_ymhwdtv="Input WDlxTV"
63 DESC_ymhtuner="Input Tuner"
64 DESC_ymhvolmute="Mute"
65 DESC_ymhmenu="Menu"
66 DESC_ymhplus="+"
67 DESC_ymhminus="-"
68 DESC_ymhtest="Test"
69 DESC_ymhtimelevel="Time/Levels"
70 DESC_ymheffect="DSP Effect Toggle"
71 DESC_ymhprgup="DSP Up"
72 DESC_ymhprgdown="DSP Down"
73 DESC_ymhtunplus="Tuner +"
74 DESC_ymhtunminus="Tuner -"
75 DESC_ymhtunabcde="Tuner ABCDE"
76 DESC_ymhtape="Tape"
77 DESC_ymhvcr="VCR"
78 DESC_ymhextdec="ExtDec Toggle"
79 DESC_panicled="HAL9000 says hi"
80 echo "Content-type: text/html"
81 echo ""
82 echo "<html>"
83 echo "<head>"
84 echo "<title>Realraum rf433ctl</title>"
85 echo '<script type="text/javascript">'
86 echo 'function sendButton( onoff, btn )'
87 echo '{'
88 echo ' var req = new XMLHttpRequest();'
89 echo ' url = "http://slug.realraum.at/cgi-bin/switch.cgi?power="+onoff+"&id="+btn;'
90 echo ' req.open("GET", url ,false);'
91 echo ' //google chrome workaround'
92 echo ' req.setRequestHeader("googlechromefix","");'
93 echo ' req.send(null);'
94 echo '}'
95 echo '</script>'
96 echo "</head>"
97 echo "<body>"
98 #echo "<h1>Realraum rf433ctl</h1>"
99 echo "<div style=\"float:left; border:1px solid black;\">"
100 for DISPID in $VALID_ONOFF_IDS; do
101   NAME="$(eval echo \$DESC_$DISPID)"
102   [ -z "$NAME" ] && NAME=$DISPID
103   if [ -z "$AJAX" ]; then
104
105   echo "<form action=\"/cgi-bin/switch.cgi\">"
106   echo "<input type=\"hidden\" name=\"id\" value=\"$DISPID\" />"
107   echo "<div style=\"float:left; margin:2px; padding:1px; max-width:236px; font-size:10pt; border:1px solid black;\"><div style='width:10em; display:inline-block; vertical-align:middle;'>$NAME</div><span style='float:right; text-align:right;'>"
108   echo " <input type='submit' name='power' value='on' />"
109   echo " <input type='submit' name='power' value='off' />"
110   echo "</span></div>"
111   echo "</form>"
112   
113   else
114   
115   echo "<div style=\"float:left; margin:2px; padding:1px; max-width:236px; font-size:10pt; border:1px solid black;\"><div style='width:10em; display:inline-block; vertical-align:middle;'>$NAME</div><span style='float:right; text-align:right;'>"
116   echo " <button onClick='sendButton(\"on\",\"$DISPID\");'>On</button>"
117   echo " <button onClick='sendButton(\"off\",\"$DISPID\");'>Off</button>"
118   echo "</span></div>"
119   
120   fi
121 done
122 echo "</div>"
123 echo "<div style=\"float:left; border:1px solid black;\">"
124 for DISPID in $VALID_SEND_IDS; do
125   NAME="$(eval echo \$DESC_$DISPID)"
126   [ -z "$NAME" ] && NAME=$DISPID
127   if [ -z "$AJAX" ]; then
128
129   echo "<form action=\"/cgi-bin/switch.cgi\">"
130   echo "<input type=\"hidden\" name=\"id\" value=\"$DISPID\" />"
131   echo "<div style=\"float:left; margin:2px; padding:1px; max-width:236px; font-size:10pt; border:1px solid black;\"><div style='width:10em; display:inline-block; vertical-align:middle;'>$NAME</div><span style='float:right; text-align:right;'>"
132   echo " <input type='submit' name='power' value='send' />"
133   echo "</span></div>"
134   echo "</form>"
135
136   else
137   
138   echo "<div style=\"float:left; margin:2px; padding:1px; max-width:236px; font-size:10pt; border:1px solid black;\"><div style='width:10em; display:inline-block; vertical-align:middle;'>$NAME</div><span style='float:right; text-align:right;'>"
139   echo " <button onClick='sendButton(\"on\",\"$DISPID\");'>Send</button>"
140   echo "</span></div>"
141   
142   fi
143 done
144 echo "</div>"
145 echo "</body>"
146 echo "</html>"