From 10271ce404f0c9bef254b22ad4258ac6355e22cc Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 6 Jun 2009 12:10:45 +0200 Subject: Redesigned admin screen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ignore-this: a0d2db2839de9eacbd6a853c39ed592c This patch reorders the admin screen to make the main tasks better accessible. This was inspired by a similar plugin by Håkan Sandell [1] [1] http://www.dokuwiki.org/plugin:adminhomepage darcs-hash:20090606101045-7ad00-83fbb0dd3af288f66801b796387e4ec3d411d4c9.gz --- inc/html.php | 111 +++++++++++++++++++++++++++++---------- inc/lang/en/adminplugins.txt | 2 + lib/images/admin/README | 2 + lib/images/admin/acl.png | Bin 0 -> 1336 bytes lib/images/admin/config.png | Bin 0 -> 1761 bytes lib/images/admin/plugin.png | Bin 0 -> 1415 bytes lib/images/admin/popularity.png | Bin 0 -> 1420 bytes lib/images/admin/revert.png | Bin 0 -> 1598 bytes lib/images/admin/usermanager.png | Bin 0 -> 1850 bytes lib/tpl/default/_admin.css | 43 +++++++++++++++ lib/tpl/default/style.ini | 1 + 11 files changed, 130 insertions(+), 29 deletions(-) create mode 100644 inc/lang/en/adminplugins.txt create mode 100644 lib/images/admin/README create mode 100644 lib/images/admin/acl.png create mode 100644 lib/images/admin/config.png create mode 100644 lib/images/admin/plugin.png create mode 100644 lib/images/admin/popularity.png create mode 100644 lib/images/admin/revert.png create mode 100644 lib/images/admin/usermanager.png create mode 100644 lib/tpl/default/_admin.css diff --git a/inc/html.php b/inc/html.php index 8c555bbbe..72af8f18a 100644 --- a/inc/html.php +++ b/inc/html.php @@ -1332,40 +1332,93 @@ function html_debug(){ print ''; } +/** + * List available Administration Tasks + * + * @author Andreas Gohr + * @author Håkan Sandell + */ function html_admin(){ - global $ID; - global $INFO; - global $lang; - global $conf; - - print p_locale_xhtml('admin'); - - // build menu of admin functions from the plugins that handle them - $pluginlist = plugin_list('admin'); - $menu = array(); - foreach ($pluginlist as $p) { - if($obj =& plugin_load('admin',$p) === NULL) continue; - - // check permissions - if($obj->forAdminOnly() && !$INFO['isadmin']) continue; - - $menu[] = array('plugin' => $p, - 'prompt' => $obj->getMenuText($conf['lang']), - 'sort' => $obj->getMenuSort() - ); - } + global $ID; + global $INFO; + global $lang; + global $conf; + global $auth; - usort($menu, 'p_sort_modes'); + // build menu of admin functions from the plugins that handle them + $pluginlist = plugin_list('admin'); + $menu = array(); + foreach ($pluginlist as $p) { + if($obj =& plugin_load('admin',$p) === NULL) continue; - // output the menu - ptln('
    '); + // check permissions + if($obj->forAdminOnly() && !$INFO['isadmin']) continue; - foreach ($menu as $item) { - if (!$item['prompt']) continue; - ptln('
  • '); - } + $menu[$p] = array('plugin' => $p, + 'prompt' => $obj->getMenuText($conf['lang']), + 'sort' => $obj->getMenuSort() + ); + } - ptln('
'); + print p_locale_xhtml('admin'); + + // Admin Tasks + if($INFO['isadmin']){ + ptln(''); + + // Manager Tasks + ptln(''); + + + // print the rest as sorted list + if(count($menu)){ + usort($menu, 'p_sort_modes'); + // output the menu + ptln('
'); + print p_locale_xhtml('adminplugins'); + ptln('
    '); + foreach ($menu as $item) { + if (!$item['prompt']) continue; + ptln('
  • '); + } + ptln('
'); + } } /** diff --git a/inc/lang/en/adminplugins.txt b/inc/lang/en/adminplugins.txt new file mode 100644 index 000000000..3ec46cf4e --- /dev/null +++ b/inc/lang/en/adminplugins.txt @@ -0,0 +1,2 @@ +===== Additional Plugins ===== + diff --git a/lib/images/admin/README b/lib/images/admin/README new file mode 100644 index 000000000..90bab9578 --- /dev/null +++ b/lib/images/admin/README @@ -0,0 +1,2 @@ +These icons were taken from the nuvoX KDE icon theme and are GPL licensed +See http://www.kde-look.org/content/show.php/nuvoX?content=38467 diff --git a/lib/images/admin/acl.png b/lib/images/admin/acl.png new file mode 100644 index 000000000..96fb4cd56 Binary files /dev/null and b/lib/images/admin/acl.png differ diff --git a/lib/images/admin/config.png b/lib/images/admin/config.png new file mode 100644 index 000000000..e4d376d85 Binary files /dev/null and b/lib/images/admin/config.png differ diff --git a/lib/images/admin/plugin.png b/lib/images/admin/plugin.png new file mode 100644 index 000000000..e2823bac7 Binary files /dev/null and b/lib/images/admin/plugin.png differ diff --git a/lib/images/admin/popularity.png b/lib/images/admin/popularity.png new file mode 100644 index 000000000..4e22aaf0d Binary files /dev/null and b/lib/images/admin/popularity.png differ diff --git a/lib/images/admin/revert.png b/lib/images/admin/revert.png new file mode 100644 index 000000000..002d3a75b Binary files /dev/null and b/lib/images/admin/revert.png differ diff --git a/lib/images/admin/usermanager.png b/lib/images/admin/usermanager.png new file mode 100644 index 000000000..c5c8dc6d6 Binary files /dev/null and b/lib/images/admin/usermanager.png differ diff --git a/lib/tpl/default/_admin.css b/lib/tpl/default/_admin.css new file mode 100644 index 000000000..9e61547bf --- /dev/null +++ b/lib/tpl/default/_admin.css @@ -0,0 +1,43 @@ + +.dokuwiki ul.admin_tasks { + font-size: 115%; + float: left; + width: 40%; + list-style-type: none; +} + +.dokuwiki ul.admin_tasks li { + line-height: 22px; + padding-left: 35px; + margin: 1em 0; + background: transparent none no-repeat scroll 0 0; + text-align: left; +} + +.dokuwiki ul.admin_tasks li div.li{ + font-weight: bold; +} + +.dokuwiki ul.admin_tasks li.admin_acl { + background-image: url(../../images/admin/acl.png); +} + +.dokuwiki ul.admin_tasks li.admin_usermanager { + background-image: url(../../images/admin/usermanager.png); +} + +.dokuwiki ul.admin_tasks li.admin_plugin { + background-image: url(../../images/admin/plugin.png); +} + +.dokuwiki ul.admin_tasks li.admin_config { + background-image: url(../../images/admin/config.png); +} + +.dokuwiki ul.admin_tasks li.admin_revert { + background-image: url(../../images/admin/revert.png); +} + +.dokuwiki ul.admin_tasks li.admin_popularity { + background-image: url(../../images/admin/popularity.png); +} diff --git a/lib/tpl/default/style.ini b/lib/tpl/default/style.ini index 14ad5c6a1..7631a34b7 100644 --- a/lib/tpl/default/style.ini +++ b/lib/tpl/default/style.ini @@ -11,6 +11,7 @@ design.css = screen style.css = screen media.css = screen +_admin.css = screen rtl.css = rtl print.css = print -- cgit v1.2.3