Files
EasySoft-ZenTaoPMS/module/my/model.php
2020-12-23 14:22:45 +08:00

89 lines
2.7 KiB
PHP

<?php
/**
* The model file of dashboard module of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package dashboard
* @version $Id: model.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
?>
<?php
class myModel extends model
{
/**
* Set menu.
*
* @access public
* @return void
*/
public function setMenu()
{
/* Adjust the menu order according to the user role. */
$flowModule = $this->config->global->flow . '_my';
$customMenu = isset($this->config->customMenu->$flowModule) ? $this->config->customMenu->$flowModule : array();
if(empty($customMenu))
{
$role = $this->app->user->role;
if($role == 'qa')
{
$taskOrder = '15';
$bugOrder = '20';
unset($this->lang->my->menuOrder[$taskOrder]);
$this->lang->my->menuOrder[32] = 'task';
$this->lang->my->dividerMenu = str_replace(',task,', ',' . $this->lang->my->menuOrder[$bugOrder] . ',', $this->lang->my->dividerMenu);
}
elseif($role == 'po')
{
$requirementOrder = 29;
unset($this->lang->my->menuOrder[$requirementOrder]);
$this->lang->my->menuOrder[15] = 'story';
$this->lang->my->menuOrder[16] = 'requirement';
$this->lang->my->menuOrder[30] = 'task';
$this->lang->my->dividerMenu = str_replace(',task,', ',story,', $this->lang->my->dividerMenu);
}
elseif($role == 'pm')
{
$projectOrder = 35;
unset($this->lang->my->menuOrder[$projectOrder]);
$this->lang->my->menuOrder[17] = 'myProject';
}
}
}
/**
* Show the task summary of the current page.
*
* @param array $tasks
* @access public
* @return string
*/
public function taskSummary($tasks)
{
$taskSum = 0;
$totalLeft = 0.0;
foreach($tasks as $task)
{
if($task->status != 'cancel' and $task->status != 'closed') $totalLeft += $task->left;
if(isset($task->children))
{
foreach($task->children as $children)
{
$taskSum ++;
}
}
$taskSum ++;
}
return sprintf($this->lang->my->taskSummary, $taskSum, round($totalLeft, 1));
}
}