tazpanel annotate index.cgi @ rev 22

*.cgi clean up and update for last CSS style
author Christophe Lincoln <pankso@slitaz.org>
date Tue Apr 05 01:34:37 2011 +0200 (2011-04-05)
parents 2ea20065417a
children 79c49d85215d
rev   line source
pankso@2 1 #!/bin/sh
pankso@2 2 #
pankso@14 3 # Main CGI interface for TazPanel. In on word: KISS. Use the main cas form
pankso@14 4 # command so we are faster and dont load unneeded function. If nececarry
pankso@14 5 # you can use the lib/ dir to handle external resources.
pankso@2 6 #
pankso@2 7 echo "Content-Type: text/html"
pankso@2 8 echo ""
pankso@2 9
pankso@14 10 # Common functions from libtazpanel
pankso@14 11 . lib/libtazpanel
pankso@14 12 get_config
pankso@2 13
pankso@22 14 # Include gettext helper script.
pankso@22 15 . /usr/bin/gettext.sh
pankso@22 16
pankso@22 17 # Export package name for gettext.
pankso@22 18 TEXTDOMAIN='tazpanel-cgi'
pankso@22 19 export TEXTDOMAIN
pankso@22 20
pankso@2 21 #
pankso@2 22 # Commands
pankso@2 23 #
pankso@2 24
pankso@2 25 case "$QUERY_STRING" in
pankso@13 26 boot)
pankso@14 27 #
pankso@13 28 # Everything until user login
pankso@14 29 #
pankso@13 30 TITLE="- Network"
pankso@13 31 xhtml_header
pankso@13 32 cat << EOT
pankso@13 33 <div id="wrapper">
pankso@14 34 <h2>`gettext "Boot &amp; startup"`</h2>
pankso@14 35 <p>
pankso@14 36 `gettext "Everything that appends before user login."`
pankso@14 37 </p>
pankso@14 38 </div>
pankso@13 39
pankso@13 40 <h3>`gettext "Kernel cmdline"`</h3>
pankso@13 41 <pre>
pankso@13 42 `cat /proc/cmdline`
pankso@13 43 </pre>
pankso@13 44 EOT
pankso@14 45 ;;
pankso@13 46 users|user=*)
pankso@14 47 #
pankso@13 48 # Manage system user accounts
pankso@14 49 #
pankso@8 50 TITLE="- Users"
pankso@8 51 xhtml_header
pankso@13 52 cmdline=`echo ${QUERY_STRING#user*=} | sed s'/&/ /g'`
pankso@13 53 # Parse cmdline
pankso@13 54 for opt in $cmdline
pankso@2 55 do
pankso@13 56 case $opt in
pankso@13 57 adduser=*)
pankso@13 58 user=${opt#adduser=}
pankso@13 59 cmd=adduser ;;
pankso@13 60 deluser=*)
pankso@13 61 user=${opt#deluser=}
pankso@13 62 deluser $user ;;
pankso@13 63 passwd=*)
pankso@13 64 pass=${opt#passwd=} ;;
pankso@13 65 esac
pankso@2 66 done
pankso@13 67 case "$cmd" in
pankso@13 68 adduser)
pankso@13 69 echo "$user"
pankso@13 70 echo $pass
pankso@13 71 adduser -D $user
pankso@13 72 echo "$pass" | chpasswd
pankso@13 73 for g in audio cdrom floppy video
pankso@13 74 do
pankso@13 75 addgroup $user $g
pankso@13 76 done ;;
pankso@13 77 *) continue ;;
pankso@13 78 esac
pankso@13 79 cat << EOT
pankso@13 80 <div id="wrapper">
pankso@14 81 <h2>`gettext "Manage users"`</h2>
pankso@14 82 <p>`gettext "Manage human users on your SliTaz system"`</p>
pankso@14 83 </div>
pankso@13 84 <form method="get" action="$SCRIPT_NAME">
pankso@13 85 EOT
pankso@13 86 table_start
pankso@13 87 cat << EOT
pankso@13 88 <tr id="thead">
pankso@13 89 <td>`gettext "Name"`</td>
pankso@13 90 <td>`gettext "User ID"`</td>
pankso@13 91 <td>`gettext "Name"`</td>
pankso@13 92 <td>`gettext "Home"`</td>
pankso@13 93 <td>`gettext "SHell"`</td>
pankso@13 94 </tr>
pankso@13 95 EOT
pankso@13 96 for i in `cat /etc/passwd | cut -d ":" -f 1`
pankso@13 97 do
pankso@13 98 if [ -d /home/$i ]; then
pankso@13 99 login=$i
pankso@13 100 uid=`cat /etc/passwd | grep $i | cut -d ":" -f 3`
pankso@13 101 gid=`cat /etc/passwd | grep $i | cut -d ":" -f 4`
pankso@13 102 name=`cat /etc/passwd | grep $i | cut -d ":" -f 5 | \
pankso@13 103 sed s/,,,//`
pankso@13 104 home=`cat /etc/passwd | grep $i | cut -d ":" -f 6`
pankso@13 105 shell=`cat /etc/passwd | grep $i | cut -d ":" -f 7`
pankso@13 106 echo '<tr>'
pankso@13 107 echo "<td><input type='hidden' name='user' />
pankso@13 108 <input type='checkbox' name='deluser' value='$login' />
pankso@13 109 <img src='$IMAGES/user.png' />$login</td>"
pankso@13 110 echo "<td>$uid:$gid</td>"
pankso@13 111 echo "<td>$name</td>"
pankso@13 112 echo "<td>$home</td>"
pankso@13 113 echo "<td>$shell</td>"
pankso@13 114 echo '</tr>'
pankso@13 115 fi
pankso@13 116 done
pankso@13 117 table_end
pankso@13 118 cat << EOT
pankso@14 119 <div>
pankso@14 120 <input type="submit" value="`gettext "Delete selected user"`" />
pankso@14 121 </div>
pankso@13 122 </form>
pankso@13 123
pankso@13 124 <h3>`gettext "Add a user"`</h3>
pankso@13 125 <form method="get" action="$SCRIPT_NAME">
pankso@14 126 <input type="hidden" name="user" size="30" />
pankso@14 127 <p>
pankso@14 128 `gettext ""`
pankso@14 129 <input type="text" name="adduser" size="30" />
pankso@14 130 </p>
pankso@14 131 <p>
pankso@14 132 `gettext ""`
pankso@14 133 <input type="password" name="passwd" size="30" />
pankso@14 134 </p>
pankso@14 135 <input type="submit" value="`gettext ""`Create user" />
pankso@13 136 </form
pankso@13 137 EOT
pankso@13 138 ;;
pankso@2 139 network)
pankso@14 140 #
pankso@13 141 # Network configuration
pankso@14 142 #
pankso@8 143 TITLE="- Network"
pankso@8 144 xhtml_header
pankso@13 145 cat << EOT
pankso@13 146 <div id="wrapper">
pankso@14 147 <h2>`gettext "Networking`</h2>
pankso@14 148 <p>`gettext "Manage network connection and services`</p>
pankso@14 149 </div>
pankso@14 150
pankso@14 151 <h3>Output of: ifconfig -a</h3>
pankso@14 152 <pre>
pankso@14 153 `ifconfig -a`
pankso@14 154 </pre>
pankso@13 155 EOT
pankso@14 156 ;;
pankso@2 157 hardware)
pankso@14 158 #
pankso@14 159 # Hardware drivers, devices, filesystem, screen
pankso@14 160 #
pankso@8 161 TITLE="- Hardware"
pankso@8 162 xhtml_header
pankso@13 163 cat << EOT
pankso@13 164 <div id="wrapper">
pankso@14 165 <h2>`gettext "Drivers &amp; Devices"`</h2>
pankso@14 166 <p>`gettext "Manage your computer hardware`</p>
pankso@14 167 </div>
pankso@13 168 EOT
pankso@2 169 echo '<pre>'
pankso@14 170 fdisk -l | fgrep Disk
pankso@13 171 echo '</pre>'
pankso@14 172 echo '<pre>'
pankso@14 173 df -h | grep ^/dev
pankso@14 174 echo '</pre>'
pankso@14 175 echo '<pre>'
pankso@14 176 lspci
pankso@14 177 echo '</pre>'
pankso@14 178 ;;
pankso@2 179 *)
pankso@14 180 #
pankso@2 181 # Default xHTML content
pankso@14 182 #
pankso@8 183 xhtml_header
pankso@2 184 cat << EOT
pankso@13 185 <div id="wrapper">
pankso@14 186 <h2>`gettext "Host:"` `hostname`</h2>
pankso@14 187 <p>`gettext "SliTaz administration et configuration Panel"`<p>
pankso@14 188 </div>
pankso@14 189
pankso@14 190 <h3>`gettext "Summary"`</h3>
pankso@14 191 <div id="summary">
pankso@14 192
pankso@2 193 <p>
pankso@14 194 `gettext "Uptime:"` `uptime`
pankso@2 195 </p>
pankso@14 196 <p>
pankso@14 197 `gettext "Memory in Mb:"`
pankso@14 198 `free -m | grep Mem: | awk \
pankso@14 199 '{print "| Total:", $2, "| Used:", $3, "| Free:", $4}'`
pankso@14 200 </p>
pankso@14 201 <p>
pankso@14 202 `gettext "Filesystem usage statistics:"`
pankso@14 203 </p>
pankso@14 204 <pre>
pankso@14 205 `df -h | grep ^/dev`
pankso@14 206 </pre>
pankso@14 207
pankso@14 208 <!-- Close summary -->
pankso@14 209 </div>
pankso@2 210 EOT
pankso@2 211 ;;
pankso@2 212 esac
pankso@2 213
pankso@14 214 xhtml_footer
pankso@14 215 exit 0