You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

64 lines
1.4 KiB

<?php
// (c) Copyright by authors of the Tiki Wiki CMS Groupware Project
//
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
// $Id$
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*
*/
/***
* Test if user can view/edit/delete a tracker item
*
* @param $params array
* itemId = int required
* mode = string view|edit|delete (view is default)
*
* @param $content string Content to display if allowed
* @param $smarty Smarty
* @param $repeat bool
*
* @return string Content to display if allowed
*/
function smarty_block_trackeritemcheck($params, $content, $smarty, $repeat)
{
if ($repeat) {
return;
}
if (empty($params['itemId'])) {
return tra('itemId required');
}
if (empty($params['mode'])) {
$params['mode'] = ''; // default is to view
}
$item = Tracker_Item::fromId($params['itemId']);
$allowed = false;
switch ($params['mode']) {
case 'edit':
$allowed = $item->canModify();
break;
case 'delete':
$allowed = $item->canRemove();
break;
case 'view':
$allowed = $item->canView();
default:
break;
}
if ($allowed) {
return $content;
} else {
return '';
}
}