tazpanel annotate index.cgi @ rev 58
index.cgi: Add some colors to config file
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Mon Apr 11 19:23:25 2011 +0200 (2011-04-11) |
parents | 769f91a0718d |
children | 294029941298 |
rev | line source |
---|---|
pankso@2 | 1 #!/bin/sh |
pankso@2 | 2 # |
paul@52 | 3 # Main CGI interface for TazPanel. In on word: KISS. Use the main css form |
paul@52 | 4 # command so we are faster and do not load unneeded functions. If necessary |
pankso@14 | 5 # you can use the lib/ dir to handle external resources. |
pankso@2 | 6 # |
pankso@42 | 7 # Copyright (C) 2011 SliTaz GNU/Linux - GNU gpl v3 |
pankso@42 | 8 # |
pankso@2 | 9 echo "Content-Type: text/html" |
pankso@2 | 10 echo "" |
pankso@2 | 11 |
pankso@14 | 12 # Common functions from libtazpanel |
pankso@14 | 13 . lib/libtazpanel |
pankso@14 | 14 get_config |
pankso@56 | 15 query_string_parser |
pankso@2 | 16 |
pankso@22 | 17 # Include gettext helper script. |
pankso@22 | 18 . /usr/bin/gettext.sh |
pankso@22 | 19 |
pankso@22 | 20 # Export package name for gettext. |
pankso@39 | 21 TEXTDOMAIN='tazpanel' |
pankso@22 | 22 export TEXTDOMAIN |
pankso@22 | 23 |
pankso@2 | 24 # |
pankso@49 | 25 # Things to do before displaying the page |
pankso@49 | 26 # |
pankso@49 | 27 |
pankso@49 | 28 case "$QUERY_STRING" in |
pankso@49 | 29 panel-pass=*) |
pankso@49 | 30 new=${QUERY_STRING#*=} |
pankso@49 | 31 sed -i s@/:root:.*@/:root:$new@ $HTTPD_CONF ;; |
pankso@49 | 32 *) continue ;; |
pankso@49 | 33 esac |
pankso@49 | 34 |
pankso@49 | 35 # |
pankso@2 | 36 # Commands |
pankso@2 | 37 # |
pankso@2 | 38 |
pankso@2 | 39 case "$QUERY_STRING" in |
pankso@56 | 40 file=*) |
pankso@56 | 41 # |
pankso@56 | 42 # Handle files (may have an edit function, will see) |
pankso@56 | 43 # |
pankso@56 | 44 TITLE="- File" |
pankso@56 | 45 xhtml_header |
pankso@56 | 46 echo "<h2>$WANT</h2>" |
pankso@56 | 47 echo '<pre>' |
pankso@58 | 48 # Handle file type by extension as a Web Server does it. |
pankso@58 | 49 # HTML entities: -e 's|&|\&|g' -e 's|<|\<|g' -e 's|>|\>|g' |
pankso@58 | 50 case "$WANT" in |
pankso@58 | 51 *.conf|*.lst) |
pankso@58 | 52 cat $WANT | sed \ |
pankso@58 | 53 -e s"#^\#\([^']*\)#<span style='color: \#555;'>\0</span>#"g \ |
pankso@58 | 54 -e s"#^[A-Z]\([^']*\)=#<span style='color: \#000073;'>\0</span>#"g \ |
pankso@58 | 55 -e s"#^[a-z]\([^']*\)#<span style='color: \#730c00;'>\0</span>#"g \ |
pankso@58 | 56 -e s"#\"\([^']*\)\"#<span style='color: \#730c00;'>\0</span>#"g ;; |
pankso@58 | 57 *) |
pankso@58 | 58 cat $WANT ;; |
pankso@58 | 59 esac |
pankso@56 | 60 echo '</pre>' ;; |
pankso@53 | 61 debug*) |
pankso@53 | 62 TITLE="- Debug" |
pankso@53 | 63 xhtml_header |
pankso@53 | 64 cat << EOT |
pankso@55 | 65 <h2>QUERY_STRING</h2> |
pankso@53 | 66 <pre> |
pankso@53 | 67 QUERY_STRING="$QUERY_STRING" |
pankso@53 | 68 |
pankso@53 | 69 Fuction: query_string_parser (<a href="?debug=test=var1=var2">test</a>) |
pankso@53 | 70 |
pankso@53 | 71 CASE="$CASE" |
pankso@53 | 72 WANT="$WANT" |
pankso@53 | 73 VAR_1="$VAR_1" |
pankso@53 | 74 VAR_2="$VAR_2" |
pankso@53 | 75 </pre> |
pankso@53 | 76 EOT |
pankso@55 | 77 echo '<h2>HTTP Environment</h2>' |
pankso@55 | 78 local var |
pankso@55 | 79 local info |
pankso@55 | 80 echo '<pre>' |
pankso@55 | 81 for var in SERVER_SOFTWARE SERVER_NAME SERVER_PORT GATEWAY_INTERFACE \ |
pankso@55 | 82 AUTH_TYPE REMOTE_ADDR REMOTE_PORT HTTP_HOST HTTP_USER_AGENT \ |
pankso@55 | 83 HTTP_ACCEPT_LANGUAGE REQUEST_METHOD REQUEST_URI QUERY_STRING \ |
pankso@55 | 84 CONTENT_LENGTH CONTENT_TYPE SCRIPT_NAME SCRIPT_FILENAME PWD |
pankso@55 | 85 do |
pankso@55 | 86 eval info=\$$var |
pankso@55 | 87 echo "$var=\"$info\"" |
pankso@55 | 88 done |
pankso@55 | 89 echo '</pre>' ;; |
pankso@2 | 90 *) |
pankso@14 | 91 # |
pankso@2 | 92 # Default xHTML content |
pankso@14 | 93 # |
pankso@8 | 94 xhtml_header |
pankso@49 | 95 debug_info |
pankso@42 | 96 case "$QUERY_STRING" in |
pankso@42 | 97 gen-locale=*) |
pankso@42 | 98 new_locale=${QUERY_STRING#gen-locale=} ;; |
pankso@42 | 99 rdate) |
pankso@42 | 100 echo "" ;; |
pankso@42 | 101 esac |
pankso@2 | 102 cat << EOT |
pankso@13 | 103 <div id="wrapper"> |
pankso@14 | 104 <h2>`gettext "Host:"` `hostname`</h2> |
paul@52 | 105 <p>`gettext "SliTaz administration and configuration Panel"`<p> |
pankso@14 | 106 </div> |
pankso@14 | 107 |
pankso@14 | 108 <h3>`gettext "Summary"`</h3> |
pankso@14 | 109 <div id="summary"> |
pankso@33 | 110 <p> |
pankso@33 | 111 `gettext "Uptime:"` `uptime` |
pankso@33 | 112 </p> |
pankso@33 | 113 <p> |
pankso@33 | 114 `gettext "Memory in Mb"` |
pankso@33 | 115 `free -m | grep Mem: | awk \ |
pankso@33 | 116 '{print "| Total:", $2, "| Used:", $3, "| Free:", $4}'` |
pankso@33 | 117 </p> |
pankso@33 | 118 <!-- Close summary --> |
pankso@33 | 119 </div> |
pankso@14 | 120 |
pankso@33 | 121 <h4>`gettext "Network status"`</h4> |
pankso@33 | 122 `list_network_interfaces` |
pankso@33 | 123 |
pankso@33 | 124 <h4>`gettext "Filesystem usage statistics"`</h4> |
pankso@14 | 125 <pre> |
pankso@14 | 126 `df -h | grep ^/dev` |
pankso@14 | 127 </pre> |
pankso@49 | 128 |
pankso@49 | 129 <h3>`gettext "Panel settings"`</h3> |
pankso@49 | 130 <form method="get" action="$SCRIPT_NAME"> |
pankso@49 | 131 <div> |
pankso@54 | 132 `gettext "Panel password:"` |
pankso@49 | 133 <input type="password" name="panel-pass"/> |
pankso@54 | 134 <input type="submit" value="`gettext "Change"`" /> |
pankso@49 | 135 </div> |
pankso@49 | 136 </form> |
pankso@53 | 137 <p> |
pankso@54 | 138 $(gettext "TazPanel provide a debuging mode and page:") |
pankso@54 | 139 <a href='$SCRIPT_NAME?debug'>debug</a> |
pankso@53 | 140 </p> |
pankso@49 | 141 |
pankso@2 | 142 EOT |
pankso@2 | 143 ;; |
pankso@2 | 144 esac |
pankso@2 | 145 |
pankso@14 | 146 xhtml_footer |
pankso@14 | 147 exit 0 |