From 10271ce404f0c9bef254b22ad4258ac6355e22cc Mon Sep 17 00:00:00 2001 From: Andreas Gohr <andi@splitbrain.org> Date: Sat, 6 Jun 2009 12:10:45 +0200 Subject: [PATCH] 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 '</body></html>'; } +/** + * List available Administration Tasks + * + * @author Andreas Gohr <andi@splitbrain.org> + * @author HÃ¥kan Sandell <hakan.sandell@home.se> + */ 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('<ul>'); + // check permissions + if($obj->forAdminOnly() && !$INFO['isadmin']) continue; - foreach ($menu as $item) { - if (!$item['prompt']) continue; - ptln(' <li><div class="li"><a href="'.wl($ID, 'do=admin&page='.$item['plugin']).'">'.$item['prompt'].'</a></div></li>'); - } + $menu[$p] = array('plugin' => $p, + 'prompt' => $obj->getMenuText($conf['lang']), + 'sort' => $obj->getMenuSort() + ); + } - ptln('</ul>'); + print p_locale_xhtml('admin'); + + // Admin Tasks + if($INFO['isadmin']){ + ptln('<ul class="admin_tasks">'); + + if($auth && $auth->canDo('getUsers')){ + ptln(' <li class="admin_usermanager"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'usermanager')).'">'. + $menu['usermanager']['prompt'].'</a></div></li>'); + } + unset($menu['usermanager']); + + ptln(' <li class="admin_acl"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'acl')).'">'. + $menu['acl']['prompt'].'</a></div></li>'); + unset($menu['acl']); + + ptln(' <li class="admin_plugin"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'plugin')).'">'. + $menu['plugin']['prompt'].'</a></div></li>'); + unset($menu['plugin']); + + ptln(' <li class="admin_config"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'config')).'">'. + $menu['config']['prompt'].'</a></div></li>'); + unset($menu['config']); + } + ptln('</ul>'); + + // Manager Tasks + ptln('<ul class="admin_tasks">'); + + ptln(' <li class="admin_revert"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'revert')).'">'. + $menu['revert']['prompt'].'</a></div></li>'); + unset($menu['revert']); + + ptln(' <li class="admin_popularity"><div class="li">'. + '<a href="'.wl($ID, array('do' => 'admin','page' => 'popularity')).'">'. + $menu['popularity']['prompt'].'</a></div></li>'); + unset($menu['popularity']); + + ptln('</ul>'); + + + // print the rest as sorted list + if(count($menu)){ + usort($menu, 'p_sort_modes'); + // output the menu + ptln('<div class="clearer"></div>'); + print p_locale_xhtml('adminplugins'); + ptln('<ul>'); + foreach ($menu as $item) { + if (!$item['prompt']) continue; + ptln(' <li><div class="li"><a href="'.wl($ID, 'do=admin&page='.$item['plugin']).'">'.$item['prompt'].'</a></div></li>'); + } + ptln('</ul>'); + } } /** 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 0000000000000000000000000000000000000000..96fb4cd5643fd43141cf32f776f5b81d596f4d89 GIT binary patch literal 1336 zcmV-81;_e{P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00004XF*Lt006JZ zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$%1J~)RCwBA z{Qv(y11$hR0I`6GUPC$DDj0$2_kRYKKmQn5fHdQ`zYOgE{~IWq|ET!I{ztZT)&HD- z41dqFFn}ERpMecXo@4mO01!Yd#Jb@BKL&>1KNv+trT=E>2Yyde^ZOyi%K4w+(?8Z_ zlh!as{$cok0ogEs03yoZe}5Sm*q9l-wEe%e7=?Z|<d*>o{02&JGcW{q|IzsSmwC~o z^$g)a(d#fh00Bgti~lp4SSEa4WE}KanBg;!55l}`4Ey@ozrVcq>vvG%Z(WYxj4L~~ zFoXbu;uc5?Kmaj;h`-E?IPuSKOk66KKbj4^zX&tD00$!jgCG!pQ(%}epYKf3n%|{2 zkFdP;Yx$>}X83Ob(A7#HB>({gHuyi#0Brd8KPCoYnLlZEaUVRGff2{R2~^Av2?7R* zFAO08@{&>FtU6-KjO+~h!3+tV3YHm$e-{8lNd_Q*z(K*zz=Xy73=Axc42ot!pX-HW zfJ)y3#RQ;+@&Ga0D~7OIUX`#osaytiWuSmN(9-)1{Ji&#{xC2Y0t67);AMASVWcsT zcmDoi_{4LP>4u&qlLfQjKZL;?Ky8e&3=FbTK&%K9ux4O*eVyUWl8X#&M;Q)&W%z#` zAb`M5W#VRKVB~^eCQeocW)5ZsRyHOEW){Y`JGQb-eR_eNfkBjk;mbD$hVMU^A%-%j z0I@m{n=vr_0fy0zl?)SB{&{fdFXIfL;2nSf0=w8lPZF3;fv)_|$iVaum=S*cWnlgZ zbm2D!T@&Z`rD9G$8NL96;@d?=27XIvpbk|aRsdohprL#W45#NZoLu_&-;7s`D}iCS z7i1<t0D%qu1<X~*2LA=}|9xXnwQ~Bn*tP7P-j`qh8Gc+~WDqr%WndK30_u<lVgq2Z z`^vy@pn>7ayju*#dztsVW%#=YlwLq)0t667ItCRTe||A3nK^u1?q2v-{~Ith{J6rz zAY>}Vz$gLq`kNmN40nN!5_!$=Xa5m~b#q>QZ9d7g<qE^!KA`q%FmnI`hy}yYA53z_ zW*?UN6umb73C#1~uCg$Qm`g&U^U6hr&u6|doZ0Y$K~>=n!-Ad6FS>3p&-u*ocMeed zLu9i60*D3K(4Rk<q|GefuL#Y1Y4MBcAH$E!z&JAmrmer<8LrRx#Bl2z!_Pf87#=OV z!LVGJot5Lv&p+4xGyGo%&5I}iAb{Wo{{kASXYhGhVAe~^-;6+)-eF-7Qf6j&d+aO2 zt)r|AHH%n|oq6+n^%sUew}CNo;N4GfSb|d3Uu>lSKmaj-%HvWeP4PK7ay!1?V*da2 zA;bSS2O0nW|044L|1<voZBD$eM48y91Jjs2DdjOh0D)aBCh@Z_H0`-N6Zc<+Z}%7( zg!vg6zMlTd@bVH9!`{1$S6~18*$h<nj1+?b0tjrdi1<%+R`%ZvUtTgZ2x+r3+}`}3 zp|Y9v`mMKruH5<beG^d08&Yc!fB*s;EG+m}gcBH2oRYvG118O7YuVqfz4NINSQ2kx z0E>_g00IbX@ZCHAKW<sU_46Mvef|2v!nEq-??XUC50Yyr2mk~SBPj9&IM{Um{9-f& uW;{^&!}RU%@0-8`coI~3kZUkNfB^vQY0HiP<@F>00000<MNUMnLSTZA@NR4X literal 0 HcmV?d00001 diff --git a/lib/images/admin/config.png b/lib/images/admin/config.png new file mode 100644 index 0000000000000000000000000000000000000000..e4d376d853915ec231b6f95135cb8743478e87f9 GIT binary patch literal 1761 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 DDYjz1 literal 0 HcmV?d00001 diff --git a/lib/images/admin/plugin.png b/lib/images/admin/plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..e2823bac78a00ec97e96bc4817aed6ed1dff37b1 GIT binary patch literal 1415 zcmV;21$g?2P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00004XF*Lt006JZ zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU%8A(JzRCwBA z{Qv(y11$hR0I`4w#&lK&hQEvq41d@d82&RtWd8ouWBmJnrLv&B8Y>Gc!~Z{w5V`+M z3=IDm81BD({_^MVzbOnX?Aw5X5V_w#<NgAfyB{zB1P}{W>;C;^WBK=QbyaY+T8dK& z11~!d!@qz3z*3Bij10g3{$^Nze2Zk+teRz?e*V&BU}kxYZUjI8F`@E+)`1-S=cl%u zu&i>nTLy!KkO;%|50@G4e7V7J_v<Z&8=tQ*FtYz+NcV_mFwr#QXZZ2ei2-EkUsR(2 z0tn5;Krb==1<^n!v;AjbVqrM?@F;`RA}0n8b`A!h7{kZk9~t^w`WOn03mLdLc|d;n z&G4TY5rj|x5I`(Q-e+O>`P&f~eyj{X7}UP}_`>-2?_UNcpx4=$*ua>TiIo9l88ag@ zSj)HXUl|y_e=}iVV0#CQBW4B`j^hlBtnWZ_009Is_}_mmW(MZXYO)%N?5vy&|9<>t zkQY{DWCKRpzyJTh;fjp^GeA<3x{NZz8%>h}CJx?$f4~1R+<tuj&G%n_5`a?M00Ib- zD*pUiT;^S_RNz*?AiyQS@b}+eu&dZufi8T<iWXS^8Q7WF!R$#X?F_#Xels#NF){r7 z^OIrezV)JIQ|cE0rNjUN2yCz<zm#UGLn?zPp9sUY8^F}V1d2mOU@$N-oO^K&Yzc@D zG87aXm)~Ay*z<4?!#`krFaizz3xt-E77R%qkqk38Efxlu2@pVFgIPi0#>C8U=gl1k zpSeB^48R~{WCj|=!pOi1bTt<{7bFOPnTeN`mtpy}<qS)%F9FLlF*7lI`~Qt$o!43h z7cmb8W@d;F0RjkYFh~O^oq}A*&dLrpl$n_stO=wU<Wfc`1iKoj85EgJEKFcEpdbhN z>OU|(Ko|r70th36FfsvM0rVaWGcqtTU?zShh&o0l1{g#K009JvJP-sb`uqPc!;f!2 zz(K(Pk^$1pY|IRNoP6+z1EwB^?|;67BManOkgGvK@%#U8uo<8r0|9^l0vil85NPs$ z1~~yahFRe=!L9*W$HKzGaP{?7h8gE(fFlj$!moe6G6ZV`Gq@_aGW-TYkgxs#4K)@v z0_p==4$b-i0R#?TmPD3oZCl#^fB*IUKRP(_@W_9TR*wGy-2(qbCy4%M>1O#q{lat% zb^rhU|G#wahX4E?D(^sM0t67)#ebOoB{i;ZTD$(tCP{7%KE|IvelREq$}&t(na1$z z|1W6Z!zf0EpMQUX*<}lw8ID{$#=yqG%kbydFNQ0(uYdUX^IJAZ4j_P7pfPsh=bs;{ zr*9s21qLG@!*>RyM-p;%KY#yZVrImQ7+8d!zI~qI_=%k}894b50h97?1{Tgkz(9Wq zk^=}JM5<tB`NqKUe<Q<xkkC&Z9!~BWVA^H^<-#AoelYxF0v00wSs8x+28Qgv-(W2~ z9Kb?|i+eu<2iHn)c@8R!{z9@lKmeg8H&7uCF_;rr05SdpmPn@3W(*snHh?n_D58D= z4b>Od2P+5q2&4&^d;WoP6axcNWdsmFXa=)FB$?SSKY9E3>B57H<x-rI7(A7{frSyM zmiP}&Qh)yaVOV*11H;+tr@k?;a{;~21TF@Er6SyLfB<3y#UNuUE2KPyS4|-HFB@P% zxlCO`Lz<O^16V>ss~-l4cke#A|MAoJ?}ZF3Yzq-ZFC(Ou+VX?}Ab=QYRha?=7yvzu V<>>zY)foT)002ovPDHLkV1gllY9{~y literal 0 HcmV?d00001 diff --git a/lib/images/admin/popularity.png b/lib/images/admin/popularity.png new file mode 100644 index 0000000000000000000000000000000000000000..4e22aaf0def484b2f5013ed715c8d73ea2fe828c GIT binary patch literal 1420 zcmV;71#|j|P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00004XF*Lt006JZ zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU%9!W$&RCwBA z{Qv(y11$hR0I|RrjEsy7_V$$wJUprlFw5lR1Xg|j{^#cX`yX1EnVEn7{{4^P?_UOn zA3q@UmoG0EUcOw*@b&9uxPdUe00G1V6HroeWDpkCgiEloF?;3a+Jv^Zd)9b)X&eFy z`TY3t2gOzF?2-(Ul35I_tXdc@1_&Uy!TS193_pKDH2(YdpUcfny<ba945*Qpp}gGA ztiRuTv!$inCZOR)zkdCNx(-DD2O6x7VK6`d!43ZRj}5E{<Y1s-C6N&ZYG7}F2YH!+ zK|@`Fp{>>1x3R(XxSE>K<Zs`8N&ort531)k11F~(iopN@1P|lizkh?nnTd%(Ei}}y zoQH>l;lq0dhCe`0{QU!={{byBF;-#I(v;8HvFmE+iWL{TpFH_IjggV%I}3{-10SCi z++ctJVnMbA7z7N4hSI$jW-44So`Wo707nwoP>ACgK7R&@vocti>WTC5a`#M|aU}G~ zliQx(zFmFK!XgVd3m||{4Cdis^$+kj@%iw9k>UF{m}LwMzkV?=eERf@;pMCM3{RfC zWO(}Q6~oh~uNV}RRTx~nt;|mxuXh0|UH$Ie7Pwge0fc1me?Dg?%}xn15r#LfLE-v` z;nnL83{RfE1moAQ-!pvu_8k&2!0_Va5n)J9GG@5<<U0copMk@dPmfn4I}#v(;0DXc z2y{w_ORBG5f0g0ci#I?+-vJH(26XX1239s!VA5h^5EK$%U}0fl`1X^PAu`&GK~0sJ zfr*WqL0Znl`sS6*AhY1<5g>rz2J;FEM!o&=pW)Jt$3PdqW8h$CVc_HE0~*N6z|73T zz{1K5OjfK6AAw=)?yJh+>c|U@ObJm&23<WPjhk0ERDfyd2FyHw0D>pCm(SiGwY8FB z=;-iZC@k}2uy@pE5E2#uW)yCqSNRx(fUf=dmz%-LT9zT)U!36|&}~0~Vb2D1nvJ;z zI|GBf1#(aT1Q6WCuU~!Ia_`PdPa7L421_GB1{*U$hBt41GF-X*hT+D|&kT=V{AW;5 zU}uO7kz@G#8<Ju`sRcyq=}I#2^XuAw{CIN#%shYqf*btf`=5QcZoT|wY$C-4N)arq z3=Dj{><o^M(hL^n{}^uE`UEUHxPW2K2u>w`plSOz5KBmLGpMMTSe!k(h7)KMIEDcN z2p$x`Bzo)Ct>-ts0ENH(0Lnsh+=mZ91O75GXlV*CaImp~#eV#NU{E6Y0;Cx^fUefp zR|dwE4$M4&0AfPU9}geAJM#A34~DP5AsW7dECIUy>sJPb_rP5E=`+NzuRt-713v!* ziUHLDQznC%wKgjglZG?QFn|C;HW(PD-}XOx_?iJ&D#A5^@plCN2%>>O@sp8(ff?v= zPHv!&fMUOa0xZlT8Zff}0tl%*272%3-&41*Kl>)5Da-X4Xdp0!F))D)U;-7RKtq6D zW(Tsr0$u*#=6i+<XYMkbJbwPg#S5n|JbiZV2m`~_wJ`Gl0tl%PVgwog?8dd{mmC8a zEWZDT7{&!Oi~;Dv*H1q)T)Xsu;nazXZ_k}Med*r4v&Vk_xpfpMa}lWG8G5k^5I}H) z|NaG;@Ri}-{jUdpef(m<@t2X|>bZvu=g(XL8g%B`&6{UVeENI?XwZxEz^HyisA>WT zAVye?AuAikAS&tvtZMeFNlHpje*NnH^GA;_>|tPdd<tmoU69?x)O9fP00M}SR+TA0 afB^t&I2#U=OO%BG0000<MNUMnLSTaDa+j(A literal 0 HcmV?d00001 diff --git a/lib/images/admin/revert.png b/lib/images/admin/revert.png new file mode 100644 index 0000000000000000000000000000000000000000..002d3a75bfa7ce3f1dc14819c43877fc5e656947 GIT binary patch literal 1598 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 literal 0 HcmV?d00001 diff --git a/lib/images/admin/usermanager.png b/lib/images/admin/usermanager.png new file mode 100644 index 0000000000000000000000000000000000000000..c5c8dc6d64e1d03f10f0a9f4352c5a2386bd921c GIT binary patch literal 1850 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 literal 0 HcmV?d00001 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 -- GitLab