From ed630903385ab3b86504e21851a3ca0c4dea2414 Mon Sep 17 00:00:00 2001 From: andi Date: Sun, 17 Apr 2005 22:20:12 +0200 Subject: tpl_actionlink added darcs-hash:20050417202012-9977f-c004f4a7f21c71f12532b7e9b86a1f51a2fd7631.gz --- inc/template.php | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/inc/template.php b/inc/template.php index 1f43c6b15..62f20c5e1 100644 --- a/inc/template.php +++ b/inc/template.php @@ -245,6 +245,85 @@ function tpl_button($type){ } } +/** + * Like the action buttons but links + * + * Available links are + * + * edit - edit/create/show button + * history - old revisions + * recent - recent changes + * login - login/logout button - if ACL enabled + * index - The index + * admin - admin page - if enough rights + * top - a back to top button + * + * @author Andreas Gohr + * @see tpl_button + */ +function tpl_actionlink($type,$pre='',$suf=''){ + global $ID; + global $INFO; + global $REV; + global $ACT; + global $conf; + global $lang; + + switch($type){ + case 'edit': + #most complicated type - we need to decide on current action + if($ACT == 'show' || $ACT == 'search'){ + if($INFO['writable']){ + if($INFO['exists']){ + tpl_link(wl($ID,'do=edit&rev='.$REV), + $pre.$lang['btn_edit'].$suf, + 'class="action" accesskey="e" rel="nofollow"'); + }else{ + tpl_link(wl($ID,'do=edit&rev='.$REV), + $pre.$lang['btn_create'].$suf, + 'class="action" accesskey="e" rel="nofollow"'); + } + }else{ + tpl_link(wl($ID,'do=edit&rev='.$REV), + $pre.$lang['btn_source'].$suf, + 'class="action" accesskey="v" rel="nofollow"'); + } + }else{ + tpl_link(wl($ID,'do=show'), + $pre.$lang['btn_show'].$suf, + 'class="action" accesskey="v" rel="nofollow"'); + } + break; + case 'history': + tpl_link(wl($ID,'do=revisions'),$pre.$lang['btn_revs'].$suf,'class="action" accesskey="o"'); + break; + case 'recent': + tpl_link(wl($ID,'do=recent'),$pre.$lang['btn_recent'].$suf,'class="action" accesskey="r"'); + break; + case 'index': + tpl_link(wl($ID,'do=index'),$pre.$lang['btn_index'].$suf,'class="action" accesskey="x"'); + break; + case 'top': + print ''.$pre.$lang['btn_top'].$suf.''; + break; + case 'login': + if($conf['useacl']){ + if($_SERVER['REMOTE_USER']){ + tpl_link(wl($ID,'do=logout'),$pre.$lang['btn_logout'].$suf,'class="action"'); + }else{ + tpl_link(wl($ID,'do=login'),$pre.$lang['btn_login'].$suf,'class="action"'); + } + } + break; + case 'admin': + if($INFO['perm'] == AUTH_ADMIN) + tpl_link(wl($ID,'do=admin'),$pre.$lang['btn_admin'].$suf,'class="action"'); + break; + default: + print '[unknown link type]'; + } +} + /** * Print the search form * -- cgit v1.2.3