tazpanel annotate lib/libtazpanel @ rev 40
Move network shared function (used by summary) to libtazpanel and include libtazpanel in POT file
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Wed Apr 06 06:17:23 2011 +0200 (2011-04-06) |
parents | b4e001e85045 |
children | 167a97495e1c |
rev | line source |
---|---|
pankso@15 | 1 #!/bin/sh |
pankso@15 | 2 # |
pankso@15 | 3 # Common functions for TazPanel CGI and cmdline interface |
pankso@15 | 4 # |
pankso@15 | 5 |
pankso@40 | 6 # Include gettext helper script. |
pankso@40 | 7 . /usr/bin/gettext.sh |
pankso@40 | 8 |
pankso@40 | 9 # Export package name for gettext. |
pankso@40 | 10 TEXTDOMAIN='tazpanel' |
pankso@40 | 11 export TEXTDOMAIN |
pankso@40 | 12 |
pankso@15 | 13 # We need a config file first |
pankso@15 | 14 get_config() { |
pankso@15 | 15 CONFIG="/etc/slitaz/tazpanel.conf" |
pankso@15 | 16 [ -f $CONFIG ] && . $CONFIG |
pankso@15 | 17 [ -f tazpanel.conf ] && . tazpanel.conf |
pankso@15 | 18 [ ! -f $PANEL/lib/libtazpanel ] && \ |
pankso@15 | 19 echo "No config file or libtazpanel found: $CONFIG" && \ |
pankso@15 | 20 exit 1 |
pankso@15 | 21 } |
pankso@15 | 22 |
pankso@40 | 23 # Network interface status |
pankso@40 | 24 interface_status() { |
pankso@40 | 25 if ifconfig | grep -A 1 $i | grep -q inet; then |
pankso@40 | 26 ip=`ifconfig | grep -A 1 $i | grep inet | \ |
pankso@40 | 27 awk '{ print $2 }' | cut -d ":" -f 2` |
pankso@40 | 28 echo "<td>connected</td><td>$ip</td>" |
pankso@40 | 29 else |
pankso@40 | 30 echo "<td>----</td><td>----</td>" |
pankso@40 | 31 fi |
pankso@40 | 32 } |
pankso@40 | 33 |
pankso@40 | 34 # Catch network interface (used in summary and network main page) |
pankso@40 | 35 list_network_interfaces() { |
pankso@40 | 36 table_start |
pankso@40 | 37 cat << EOT |
pankso@40 | 38 <tr id="thead"> |
pankso@40 | 39 <td>`gettext "Interface"`</td> |
pankso@40 | 40 <td>`gettext "Name"`</td> |
pankso@40 | 41 <td>`gettext "Status"`</td> |
pankso@40 | 42 <td>`gettext "IP Address"`</td> |
pankso@40 | 43 </tr> |
pankso@40 | 44 EOT |
pankso@40 | 45 for i in `ls /sys/class/net` |
pankso@40 | 46 do |
pankso@40 | 47 case $i in |
pankso@40 | 48 eth*) |
pankso@40 | 49 echo "<tr><td><img src='$IMAGES/ethernet.png' />$i</td> |
pankso@40 | 50 <td>Ethernet</td> `interface_status`</tr>" ;; |
pankso@40 | 51 wlan*|ath*|ra*) |
pankso@40 | 52 echo "<tr><td><img src='$IMAGES/wireless.png' />$i</td> |
pankso@40 | 53 <td>Wireless</td> `interface_status`</tr>" ;; |
pankso@40 | 54 lo) |
pankso@40 | 55 echo "<tr><td><img src='$IMAGES/loopback.png' />$i</td> |
pankso@40 | 56 <td>Loopback</td> `interface_status`</tr>" ;; |
pankso@40 | 57 *) |
pankso@40 | 58 continue ;; |
pankso@40 | 59 esac |
pankso@40 | 60 done |
pankso@40 | 61 table_end |
pankso@40 | 62 } |
pankso@40 | 63 |
pankso@15 | 64 # |
pankso@15 | 65 # xHTML 5 (header and footer skel are from the style) |
pankso@15 | 66 # |
pankso@15 | 67 |
pankso@15 | 68 xhtml_header() { |
pankso@32 | 69 cat ${PANEL}$HEADER | sed s/'- %TITLE%'/"$TITLE"/ |
pankso@15 | 70 } |
pankso@15 | 71 |
pankso@15 | 72 xhtml_footer() { |
pankso@32 | 73 cat ${PANEL}$FOOTER |
pankso@15 | 74 } |
pankso@15 | 75 |
pankso@15 | 76 table_start() { |
pankso@15 | 77 cat << EOT |
pankso@15 | 78 <table> |
pankso@15 | 79 <tbody> |
pankso@15 | 80 EOT |
pankso@15 | 81 } |
pankso@15 | 82 |
pankso@15 | 83 table_end () { |
pankso@15 | 84 cat << EOT |
pankso@15 | 85 </tbody> |
pankso@15 | 86 </table> |
pankso@15 | 87 EOT |
pankso@15 | 88 } |