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