tazpanel annotate index.cgi @ rev 28

Small fix in index.cgi (form not closed and clean up)
author Christophe Lincoln <pankso@slitaz.org>
date Tue Apr 05 03:34:47 2011 +0200 (2011-04-05)
parents 79c49d85215d
children 253219c1f9fe
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@25 30 TITLE="- Boot"
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@25 89 <td>`gettext "Login"`</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@25 124 <h3>`gettext "Add a new user"`</h3>
pankso@13 125 <form method="get" action="$SCRIPT_NAME">
pankso@28 126 <input type="hidden" name="user" />
pankso@25 127 <p>`gettext "User login:"`</p>
pankso@28 128 <p><input type="text" name="adduser" size="30" /></p>
pankso@25 129 <p>`gettext "User password:"`</p>
pankso@28 130 <p><input type="password" name="passwd" size="30" /></p>
pankso@25 131 <input type="submit" value="`gettext "Create user"`" />
pankso@28 132 </form>
pankso@13 133 EOT
pankso@13 134 ;;
pankso@2 135 network)
pankso@14 136 #
pankso@13 137 # Network configuration
pankso@14 138 #
pankso@8 139 TITLE="- Network"
pankso@8 140 xhtml_header
pankso@13 141 cat << EOT
pankso@13 142 <div id="wrapper">
pankso@14 143 <h2>`gettext "Networking`</h2>
pankso@14 144 <p>`gettext "Manage network connection and services`</p>
pankso@14 145 </div>
pankso@14 146
pankso@14 147 <h3>Output of: ifconfig -a</h3>
pankso@14 148 <pre>
pankso@14 149 `ifconfig -a`
pankso@14 150 </pre>
pankso@13 151 EOT
pankso@14 152 ;;
pankso@2 153 hardware)
pankso@14 154 #
pankso@14 155 # Hardware drivers, devices, filesystem, screen
pankso@14 156 #
pankso@8 157 TITLE="- Hardware"
pankso@8 158 xhtml_header
pankso@13 159 cat << EOT
pankso@13 160 <div id="wrapper">
pankso@14 161 <h2>`gettext "Drivers &amp; Devices"`</h2>
pankso@14 162 <p>`gettext "Manage your computer hardware`</p>
pankso@14 163 </div>
pankso@13 164 EOT
pankso@2 165 echo '<pre>'
pankso@14 166 fdisk -l | fgrep Disk
pankso@13 167 echo '</pre>'
pankso@14 168 echo '<pre>'
pankso@14 169 df -h | grep ^/dev
pankso@14 170 echo '</pre>'
pankso@14 171 echo '<pre>'
pankso@14 172 lspci
pankso@14 173 echo '</pre>'
pankso@14 174 ;;
pankso@2 175 *)
pankso@14 176 #
pankso@2 177 # Default xHTML content
pankso@14 178 #
pankso@8 179 xhtml_header
pankso@2 180 cat << EOT
pankso@13 181 <div id="wrapper">
pankso@14 182 <h2>`gettext "Host:"` `hostname`</h2>
pankso@14 183 <p>`gettext "SliTaz administration et configuration Panel"`<p>
pankso@14 184 </div>
pankso@14 185
pankso@14 186 <h3>`gettext "Summary"`</h3>
pankso@14 187 <div id="summary">
pankso@14 188
pankso@2 189 <p>
pankso@14 190 `gettext "Uptime:"` `uptime`
pankso@2 191 </p>
pankso@14 192 <p>
pankso@25 193 `gettext "Memory in Mb"`
pankso@14 194 `free -m | grep Mem: | awk \
pankso@14 195 '{print "| Total:", $2, "| Used:", $3, "| Free:", $4}'`
pankso@14 196 </p>
pankso@14 197 <p>
pankso@14 198 `gettext "Filesystem usage statistics:"`
pankso@14 199 </p>
pankso@14 200 <pre>
pankso@14 201 `df -h | grep ^/dev`
pankso@14 202 </pre>
pankso@14 203
pankso@14 204 <!-- Close summary -->
pankso@14 205 </div>
pankso@2 206 EOT
pankso@2 207 ;;
pankso@2 208 esac
pankso@2 209
pankso@14 210 xhtml_footer
pankso@14 211 exit 0