summaryrefslogtreecommitdiff
path: root/inc
diff options
context:
space:
mode:
authorAndreas Gohr <andi@splitbrain.org>2010-08-27 10:37:07 +0200
committerAndreas Gohr <andi@splitbrain.org>2010-08-27 10:37:07 +0200
commit396c218f61d8626a516941cd6cd66f09e528e32c (patch)
tree1855c14144dd7c32e7e9a6c7edfe8b944cefc4a0 /inc
parenta6bc56d03c064a1d747ccba79705cbac0e2bd453 (diff)
downloadrpg-396c218f61d8626a516941cd6cd66f09e528e32c.tar.gz
rpg-396c218f61d8626a516941cd6cd66f09e528e32c.tar.bz2
make use of tpl_get_action in tpl_actiondropdown FS#2005
Diffstat (limited to 'inc')
-rw-r--r--inc/actions.php2
-rw-r--r--inc/template.php71
2 files changed, 27 insertions, 46 deletions
diff --git a/inc/actions.php b/inc/actions.php
index 914ff1ce6..3e0cb1207 100644
--- a/inc/actions.php
+++ b/inc/actions.php
@@ -185,6 +185,8 @@ function act_clean($act){
if($act == 'export_html') $act = 'export_xhtml';
if($act == 'export_htmlbody') $act = 'export_xhtmlbody';
+ if($act === '') $act = 'show';
+
// check if action is disabled
if(!actionOK($act)){
msg('Command disabled: '.htmlspecialchars($act),-1);
diff --git a/inc/template.php b/inc/template.php
index f1995b6ba..003febe46 100644
--- a/inc/template.php
+++ b/inc/template.php
@@ -491,7 +491,7 @@ function tpl_actionlink($type,$pre='',$suf='',$inner='',$return=false){
return true;
}
- /**
+/**
* Check the actions and get data for buttons and links
*
* Available actions are
@@ -1147,7 +1147,7 @@ function tpl_actiondropdown($empty='',$button='&gt;'){
global $auth;
echo '<form method="post" accept-charset="utf-8">'; #FIXME action
- echo '<input type="hidden" name="id" value="'.$ID.'" />';
+ echo '<input type="hidden" name="id" value="'.$ID.'" />';
if($REV) echo '<input type="hidden" name="rev" value="'.$REV.'" />';
echo '<input type="hidden" name="sectok" value="'.getSecurityToken().'" />';
@@ -1155,60 +1155,39 @@ function tpl_actiondropdown($empty='',$button='&gt;'){
echo '<option value="">'.$empty.'</option>';
echo '<optgroup label=" &mdash; ">';
- // 'edit' - most complicated type, we need to decide on current action
- if($ACT == 'show' || $ACT == 'search'){
- if($INFO['writable']){
- if(!empty($INFO['draft'])) {
- echo '<option value="edit">'.$lang['btn_draft'].'</option>';
- } else {
- if($INFO['exists']){
- echo '<option value="edit">'.$lang['btn_edit'].'</option>';
- }else{
- echo '<option value="edit">'.$lang['btn_create'].'</option>';
- }
- }
- }else if(actionOK('source')) { //pseudo action
- echo '<option value="edit">'.$lang['btn_source'].'</option>';
- }
- }else{
- echo '<option value="show">'.$lang['btn_show'].'</option>';
- }
+ $act = tpl_get_action('edit');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
- echo '<option value="revisions">'.$lang['btn_revs'].'</option>';
- if($INFO['ismanager'] && $REV && $INFO['writable'] && actionOK('revert')){
- echo '<option value="revert">'.$lang['btn_revert'].'</option>';
- }
- echo '<option value="backlink">'.$lang['btn_backlink'].'</option>';
+ $act = tpl_get_action('revisions');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
+
+ $act = tpl_get_action('revert');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
+
+ $act = tpl_get_action('backlink');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
echo '</optgroup>';
echo '<optgroup label=" &mdash; ">';
- echo '<option value="recent">'.$lang['btn_recent'].'</option>';
- echo '<option value="index">'.$lang['btn_index'].'</option>';
+ $act = tpl_get_action('recent');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
+
+ $act = tpl_get_action('index');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
echo '</optgroup>';
echo '<optgroup label=" &mdash; ">';
- if($conf['useacl'] && $auth){
- if($_SERVER['REMOTE_USER']){
- echo '<option value="logout">'.$lang['btn_logout'].'</option>';
- }else{
- echo '<option value="login">'.$lang['btn_login'].'</option>';
- }
- }
+ $act = tpl_get_action('login');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
- if($conf['useacl'] && $auth && $_SERVER['REMOTE_USER'] &&
- $auth->canDo('Profile') && ($ACT!='profile')){
- echo '<option value="profile">'.$lang['btn_profile'].'</option>';
- }
+ $act = tpl_get_action('profile');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
- if($conf['useacl'] && $auth && $ACT == 'show' && $conf['subscribers']){
- if($_SERVER['REMOTE_USER']){
- echo '<option value="subscribe">'.$lang['btn_subscribe'].'</option>';
- }
- }
+ $act = tpl_get_action('subscribe');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
- if($INFO['ismanager']){
- echo '<option value="admin">'.$lang['btn_admin'].'</option>';
- }
+ $act = tpl_get_action('admin');
+ if($act) echo '<option value="'.$act['params']['do'].'">'.$lang['btn_'.$act['type']].'</option>';
echo '</optgroup>';
echo '</select>';