slitaz-pizza annotate web/lib/libpizza @ rev 7

Add the web interface
author Christophe Lincoln <pankso@slitaz.org>
date Sat Mar 24 23:12:44 2012 +0100 (2012-03-24)
parents
children 2ea0527e3c3d
rev   line source
pankso@7 1 #!/bin/sh
pankso@7 2 #
pankso@7 3 # Common functions for Pizza CGI/SHell web interface.
pankso@7 4 #
pankso@7 5
pankso@7 6 [ -f "/etc/slitaz/pizza.conf" ] && . /etc/slitaz/pizza.conf
pankso@7 7 [ -f "../pizza.conf" ] && . ../pizza.conf
pankso@7 8 . ./db.conf
pankso@7 9 . /usr/lib/slitaz/httphelper
pankso@7 10 header
pankso@7 11
pankso@7 12 # xHTML header.
pankso@7 13 cat lib/header.html || exit 1
pankso@7 14
pankso@7 15 # Status function.
pankso@7 16 status() {
pankso@7 17 if [ $? = 0 ]; then
pankso@7 18 echo " <span class="span-ok">OK</span>"
pankso@7 19 else
pankso@7 20 echo " <span class="span-red">Failed</span>"
pankso@7 21 fi
pankso@7 22 }
pankso@7 23
pankso@7 24 # Put some colors in log and DB files.
pankso@7 25 highlighter() {
pankso@7 26 case $1 in
pankso@7 27 log)
pankso@7 28 sed -e 's#OK#<span class="span-ok">OK</span>#g' \
pankso@7 29 -e 's#Failed#<span class="span-red">Failed</span>#g' ;;
pankso@7 30 activity)
pankso@7 31 sed s"#^\([^']* : \)#<span class='log-date'>\0</span>#"g ;;
pankso@7 32 esac
pankso@7 33 }
pankso@7 34
pankso@7 35 # Log activities, we want first letter capitalized.
pankso@7 36 log() {
pankso@7 37 grep ^[A-Z] | \
pankso@7 38 sed s"#^[A-Z]\([^']*\)#$(date '+%Y-%m-%d %H:%M') : \0#" >> $activity
pankso@7 39 }
pankso@7 40
pankso@7 41 # Usage: error string
pankso@7 42 error() {
pankso@7 43 echo "<span class="span-red">ERROR: $@</span>"
pankso@7 44 }
pankso@7 45
pankso@7 46 # Pizza notification function: notify "message" "icon"
pankso@7 47 notify() {
pankso@7 48 img=info
pankso@7 49 [ "$2" ] && img=$2
pankso@7 50 cat << EOT
pankso@7 51 <script type="text/javascript">
pankso@7 52 document.write('<div id="notify"><img src="images/$img.png" />$1</div>');
pankso@7 53 fadeNotify('notify', 100, 0, 300);
pankso@7 54 setTimeout('hideNotify()', 6200);
pankso@7 55 </script>
pankso@7 56 EOT
pankso@7 57 }