tazbug view web/plugins/dashboard/dashboard.cgi @ rev 63

Add online users in dashboard and misc changes
author Christophe Lincoln <pankso@slitaz.org>
date Tue Jan 07 22:22:25 2014 +0100 (2014-01-07)
parents f005632d7c8b
children 41de444b2aa3
line source
1 #!/bin/sh
2 #
3 # TinyCM/TazBug Plugin - Dashboard
4 #
5 . /usr/lib/slitaz/httphelper
7 case " $(GET) " in
8 *\ users\ *)
9 d="Users"
10 header
11 html_header
12 user_box
13 if check_auth && ! admin_user; then
14 gettext "You must be admin to manage users."
15 exit 0
16 fi
17 users=$(ls -1 $PEOPLE | wc -l)
18 cat << EOT
19 <h2>Users: $users</h2>
20 <div id="tools">
21 <a href="$script?dashboard">Dashboard</a>
22 </div>
23 <pre>
24 EOT
25 for u in $(ls $PEOPLE)
26 do
27 . "${PEOPLE}/${u}/account.conf"
28 cat << EOT
29 $(get_gravatar $MAIL 24) <a href="?user=$USER">$USER</a> | $NAME | $MAIL
30 EOT
31 # deluser link
32 #: <a href="?users&amp;deluser=$USER">$(gettext "delete")</a>
33 unset NAME USER
34 done
35 echo "</pre>" && exit 0 ;;
37 *\ online\ *)
38 # Show online users based on sessions files.
39 d="Online users"
40 header
41 html_header
42 user_box
43 cat << EOT
44 <h2>Online users</h2>
45 <pre>
46 EOT
47 for u in $(ls $sessions)
48 do
49 . "${PEOPLE}/${u}/account.conf"
50 cat << EOT
51 $(get_gravatar $MAIL 24) <a href="?user=$USER">$USER</a> | $NAME
52 EOT
53 done
54 echo "</pre>"
55 html_footer && exit 0 ;;
57 *\ dashboard\ *)
58 d="Dashboard"
59 users=$(ls -1 $PEOPLE | wc -l)
60 bugs=$(ls -1 $bugdir | wc -l)
61 bugsize=$(du -sh $bugdir | awk '{print $1}')
62 header
63 html_header
64 user_box
65 if ! check_auth; then
66 gettext "You must be logged in to view the dashboard."
67 exit 0
68 fi
69 if check_auth && admin_user; then
70 # Online users should not be public ?
71 admintools="<a href='?users'>List users</a>"
72 fi
73 cat << EOT
74 <h2>Dashboard</h2>
75 <pre>
76 Users : $users
77 Bugs : $bugs
78 Bugsize : $bugsize
79 </pre>
80 <div id="tools">
81 <a href='?online'>Online users</a>
82 $admintools
83 </div>
84 <h3>Admin users</h3>
85 EOT
86 # Get the list of administrators
87 for u in $(ls $PEOPLE)
88 do
89 user=${u}
90 if admin_user; then
91 echo "<a href='?user=$u'>$u</a>"
92 fi
93 done
94 cat << EOT
95 <h3>$(gettext "Plugins")</h3>
96 <pre>
97 EOT
98 for p in $(ls -1 $plugins)
99 do
100 . $plugins/$p/$p.conf
101 echo "<a href='?$p'>$PLUGIN</a> - $SHORT_DESC"
102 done
103 echo '</pre>'
104 html_footer
105 exit 0 ;;
106 esac