tinycm annotate plugins/dashboard/dashboard.cgi @ rev 60

Improve dashboard and plugin integration
author Christophe Lincoln <pankso@slitaz.org>
date Sat Feb 01 01:28:51 2014 +0100 (2014-02-01)
parents 8d24e0cbcdab
children b07b36203b8d
rev   line source
pankso@59 1 #!/bin/sh
pankso@59 2 #
pankso@59 3 # TinyCM Plugin - Users and admin Dashboard.
pankso@59 4 #
pankso@59 5 . /usr/lib/slitaz/httphelper
pankso@59 6
pankso@59 7 if [ "$(GET dashboard)" ]; then
pankso@60 8 d="Dashboard"
pankso@60 9 header
pankso@60 10 html_header
pankso@60 11 user_box
pankso@60 12 users=$(ls -1 $PEOPLE | wc -l)
pankso@60 13 docs=$(find $wiki -type f | wc -l)
pankso@60 14 wikisize="$(du -sh $wiki | awk '{print $1}')"
pankso@60 15 cachesize="$(du -sh $cache | awk '{print $1}')"
pankso@60 16 [ "$HG" != "yes" ] && hg=$(gettext "disabled")
pankso@60 17 [ "$HG" == "yes" ] && hg=$(gettext "enabled")
pankso@60 18 # Source all plugins.conf to get DASHBOARD_TOOLS and ADMIN_TOOLS
pankso@60 19 ADMIN_TOOLS=""
pankso@60 20 DASHBOARD_TOOLS=""
pankso@60 21 for p in $(ls $plugins)
pankso@60 22 do
pankso@60 23 . $plugins/$p/$p.conf
pankso@60 24 done
pankso@60 25 if check_auth && ! admin_user; then
pankso@59 26 ADMIN_TOOLS=""
pankso@60 27 fi
pankso@60 28 if check_auth; then
pankso@60 29 cat << EOT
pankso@59 30 <div id="tools">
pankso@59 31 <a href='$script?log'>Activity log</a>
pankso@59 32 <a href='$script?ls'>Pages list</a>
pankso@59 33 $DASHBOARD_TOOLS
pankso@59 34 $ADMIN_TOOLS
pankso@59 35 </div>
pankso@59 36
pankso@59 37 <h2>$d</h2>
pankso@59 38
pankso@59 39 <pre>
pankso@59 40 Users : $users
pankso@59 41 Wiki : $docs ($wikisize)
pankso@59 42 Cache : $cachesize
pankso@59 43 Mercurial : $hg
pankso@59 44 </pre>
pankso@59 45
pankso@59 46 <h3>Admin users</h3>
pankso@59 47 EOT
pankso@60 48 # Get the list of administrators
pankso@60 49 for u in $(ls $PEOPLE)
pankso@60 50 do
pankso@60 51 user=${u}
pankso@60 52 if admin_user; then
pankso@60 53 echo "<a href='?user=$u'>$u</a>"
pankso@60 54 fi
pankso@60 55 done
pankso@60 56 echo '</p>'
pankso@60 57
pankso@60 58 # Only for admins
pankso@60 59 if check_auth && admin_user; then
pankso@60 60 # List all plugins
pankso@59 61 cat << EOT
pankso@59 62 <h3>$(gettext "Plugins")</h3>
pankso@59 63 <pre>
pankso@59 64 EOT
pankso@59 65 for p in $(ls -1 $plugins)
pankso@59 66 do
pankso@59 67 . $plugins/$p/$p.conf
pankso@59 68 echo "<a href='?$p'>$PLUGIN</a> - $SHORT_DESC"
pankso@59 69 done
pankso@59 70 echo '</pre>'
pankso@60 71 fi
pankso@60 72 else
pankso@59 73 gettext "You must be logged in to view the dashboard."
pankso@60 74 fi
pankso@60 75 html_footer && exit 0
pankso@59 76 fi