* Finish task #75690.

This commit is contained in:
tianshujie
2022-11-14 10:37:21 +08:00
parent 3f45e2e6b6
commit 1a097d73eb
10 changed files with 101 additions and 16 deletions
+7 -7
View File
@@ -43,14 +43,14 @@ $config->program->search['params']['name'] = array('operator' => 'incl
$config->program->search['params']['status'] = array('operator' => '=', 'control' => 'select', 'values' => array('' => '') + $lang->program->statusList);
$config->program->search['params']['desc'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
$config->program->search['params']['PM'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->program->search['params']['openedDate'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['begin'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['end'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['openedDate'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['begin'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['end'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['openedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->program->search['params']['lastEditedDate'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['realBegan'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['realEnd'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['closedDate'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->program->search['params']['lastEditedDate'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['realBegan'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['realEnd'] = array('operator' => '=', 'control' => 'date', 'values' => '');
$config->program->search['params']['closedDate'] = array('operator' => '=', 'control' => 'date', 'values' => '');
/* Data table field config. */
global $lang;
+7
View File
@@ -120,6 +120,13 @@ $lang->program->beyondParentBudget = 'The remaining budget of the owned program
$lang->program->checkedProjects = 'Seleted %s items';
$lang->program->budgetOverrun = "The program's budget exceeds the remaining budget of the parent program:";
$lang->program->tip = new stdclass();
$lang->program->tip->closed = 'The program has been closed. Re-close is not available.';
$lang->program->tip->notSuspend = 'The program has been closed. Suspend is not available.';
$lang->program->tip->suspended = 'The program has been suspended. Re-suspended is not available.';
$lang->program->tip->actived = 'The program has been activated. Re-activated is not available.';
$lang->program->tip->notCreate = 'The program has been closed. Adding sub-programs is not available.';
$lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half year';
+7
View File
@@ -120,6 +120,13 @@ $lang->program->beyondParentBudget = 'The remaining budget of the owned program
$lang->program->checkedProjects = 'Seleted %s items';
$lang->program->budgetOverrun = "The program's budget exceeds the remaining budget of the parent program:";
$lang->program->tip = new stdclass();
$lang->program->tip->closed = 'The program has been closed. Re-close is not available.';
$lang->program->tip->notSuspend = 'The program has been closed. Suspend is not available.';
$lang->program->tip->suspended = 'The program has been suspended. Re-suspended is not available.';
$lang->program->tip->actived = 'The program has been activated. Re-activated is not available.';
$lang->program->tip->notCreate = 'The program has been closed. Adding sub-programs is not available.';
$lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half year';
+7
View File
@@ -120,6 +120,13 @@ $lang->program->beyondParentBudget = 'The remaining budget of the owned program
$lang->program->checkedProjects = "Pour s électionner l'élément% s";
$lang->program->budgetOverrun = "Le budget du programme a dépassé le budget restant du programme parent:";
$lang->program->tip = new stdclass();
$lang->program->tip->closed = 'The program has been closed. Re-close is not available.';
$lang->program->tip->notSuspend = 'The program has been closed. Suspend is not available.';
$lang->program->tip->suspended = 'The program has been suspended. Re-suspended is not available.';
$lang->program->tip->actived = 'The program has been activated. Re-activated is not available.';
$lang->program->tip->notCreate = 'The program has been closed. Adding sub-programs is not available.';
$lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half year';
+7
View File
@@ -120,6 +120,13 @@ $lang->program->beyondParentBudget = '已超出所属项目集的剩余预算';
$lang->program->checkedProjects = '已选择%s项';
$lang->program->budgetOverrun = '项目集的预算超出了父项目集的剩余预算:';
$lang->program->tip = new stdclass();
$lang->program->tip->closed = '该项目集已是关闭状态,无须关闭。';
$lang->program->tip->notSuspend = '该项目集已关闭,不可进行挂起操作。';
$lang->program->tip->suspended = '该项目集已是挂起状态,无须挂起。';
$lang->program->tip->actived = '该项目集已是激活状态,无须激活。';
$lang->program->tip->notCreate = '该项目集已关闭,不可进行添加子项目集的操作。';
$lang->program->endList[31] = '一个月';
$lang->program->endList[93] = '三个月';
$lang->program->endList[186] = '半年';
+27 -9
View File
@@ -1794,6 +1794,10 @@ class programModel extends model
$item->name = $action;
$item->text = $this->lang->program->$action;
if(!$this->isClickable($program, $action)) $item->disabled = true;
if($action == 'close' and $program->status == 'closed') $item->hint = $this->lang->program->tip->closed;
if($action == 'suspend' and $program->status == 'closed') $item->hint = $this->lang->program->tip->notSuspend;
if($action == 'suspend' and $program->status == 'suspended') $item->hint = $this->lang->program->tip->suspended;
if($action == 'activate' and $program->status == 'doing') $item->hint = $this->lang->program->tip->actived;
$other->items[] = $item;
}
@@ -1808,7 +1812,11 @@ class programModel extends model
$item = new stdclass();
$item->name = $action;
$item->hint = $this->lang->program->$action;
if($action == 'create' and $program->status == 'closed') $item->disabled = true;
if($action == 'create' and $program->status == 'closed')
{
$item->disabled = true;
$item->hint = $this->lang->program->tip->notCreate;
}
$actionsMap[] = $item;
}
@@ -1843,6 +1851,10 @@ class programModel extends model
$item->name = $action;
$item->text = $this->lang->project->$action;
if(!$this->project->isClickable($program, $action)) $item->disabled = true;
if($action == 'close' and $program->status == 'closed') $item->hint = $this->lang->project->tip->closed;
if($action == 'suspend' and $program->status == 'closed') $item->hint = $this->lang->project->tip->notSuspend;
if($action == 'suspend' and $program->status == 'suspended') $item->hint = $this->lang->project->tip->suspended;
if($action == 'activate' and $program->status == 'doing') $item->hint = $this->lang->project->tip->actived;
$other->items[] = $item;
}
@@ -1855,28 +1867,34 @@ class programModel extends model
{
$item = new stdclass();
$item->name = 'group';
if($program->type == 'kanban') $item->disabled = true;
if($program->model == 'kanban')
{
$item->disabled = true;
$item->hint = $this->lang->project->tip->group;
}
$actionsMap[] = $item;
}
if(common::hasPriv('project', 'manageProducts') || common::hasPriv('project', 'whitelist') || common::hasPriv('project', 'delete'))
{
$more = new stdclass();
$more->name = 'more';
$more->dropdown = new stdclass();
$more->dropdown->items = array();
$more->name = 'more';
$more->items = array();
$moreActions = array('manageProducts', 'whitelist', 'delete');
foreach($moreActions as $action)
{
if(!common::hasPriv('project', $action)) continue;
$item = new stdclass();
$item->name = $action;
$item->name = $action == 'manageProducts' ? 'link' : $action;
$item->text = $this->lang->project->$action;
if($action == 'whitelist' and $program->acl == 'open') $item->disabled = true;
if($action == 'whitelist' and $program->acl == 'open')
{
$item->disabled = true;
$item->hint = $this->lang->project->tip->whitelist;
}
$more->dropdown->items[] = $item;
$more->items[] = $item;
}
$actionsMap[] = $more;
+15
View File
@@ -224,6 +224,14 @@ $lang->project->allSummary = 'Total projects: <strong>%s</strong>, W
$lang->project->checkedSummary = 'Seleted: <strong>%total%</strong>.';
$lang->project->checkedAllSummary = 'Seleted: <strong>%total%</strong>, Wait: <strong>%wait%</strong>, Doing: <strong>%doing%</strong>, Suspended: <strong>%suspended%</strong>, Closed: <strong>%closed%</strong>.';
$lang->project->tip = new stdclass();
$lang->project->tip->closed = 'The project has been closed. Re-close is not available.';
$lang->project->tip->notSuspend = 'The project has been closed. Suspend is not available.';
$lang->project->tip->suspended = 'The project has been suspended. Re-suspend is not available.';
$lang->project->tip->actived = 'The project has been activated. Re-activated is not available.';
$lang->project->tip->group = "It's a Kanban project. Editing privilege group is not available.";
$lang->project->tip->whitelist = "It's a public project with open permissions. No need to edit whitelists.";
$lang->project->tenThousand = '';
$lang->project->hundredMillion = 'Hundred Million';
@@ -297,6 +305,13 @@ $lang->project->kanbanSubAclList['private'] = "Private (Only the project leader,
$lang->project->kanbanSubAclList['open'] = "Open (accessible with project view permissions)";
$lang->project->kanbanSubAclList['program'] = 'Open in the program (all upper-level program team leaders and stakeholders, the project leader, team members can access)';
global $config;
if($config->systemMode == 'light')
{
unset($lang->project->subAclList['program']);
unset($lang->project->kanbanSubAclList['program']);
}
$lang->project->authList['extend'] = 'Inherit (system privilege and project privilege)';
$lang->project->authList['reset'] = 'Reset (project privilege only)';
+8
View File
@@ -224,6 +224,14 @@ $lang->project->allSummary = 'Total projects: <strong>%s</strong>, W
$lang->project->checkedSummary = 'Seleted: <strong>%total%</strong>.';
$lang->project->checkedAllSummary = 'Seleted: <strong>%total%</strong>, Wait: <strong>%wait%</strong>, Doing: <strong>%doing%</strong>, Suspended: <strong>%suspended%</strong>, Closed: <strong>%closed%</strong>.';
$lang->project->tip = new stdclass();
$lang->project->tip->closed = 'The project has been closed. Re-close is not available.';
$lang->project->tip->notSuspend = 'The project has been closed. Suspend is not available.';
$lang->project->tip->suspended = 'The project has been suspended. Re-suspend is not available.';
$lang->project->tip->actived = 'The project has been activated. Re-activated is not available.';
$lang->project->tip->group = "It's a Kanban project. Editing privilege group is not available.";
$lang->project->tip->whitelist = "It's a public project with open permissions. No need to edit whitelists.";
$lang->project->tenThousand = 'Ten Thousand';
$lang->project->hundredMillion = 'Hundred Million';
+8
View File
@@ -224,6 +224,14 @@ $lang->project->allSummary = 'Total projects: <strong>%s</strong>, W
$lang->project->checkedSummary = 'Seleted: <strong>%total%</strong>.';
$lang->project->checkedAllSummary = 'Seleted: <strong>%total%</strong>, Wait: <strong>%wait%</strong>, Doing: <strong>%doing%</strong>, Suspended: <strong>%suspended%</strong>, Closed: <strong>%closed%</strong>.';
$lang->project->tip = new stdclass();
$lang->project->tip->closed = 'The project has been closed. Re-close is not available.';
$lang->project->tip->notSuspend = 'The project has been closed. Suspend is not available.';
$lang->project->tip->suspended = 'The project has been suspended. Re-suspend is not available.';
$lang->project->tip->actived = 'The project has been activated. Re-activated is not available.';
$lang->project->tip->group = "It's a Kanban project. Editing privilege group is not available.";
$lang->project->tip->whitelist = "It's a public project with open permissions. No need to edit whitelists.";
$lang->project->tenThousand = '';
$lang->project->hundredMillion = 'Hundred Million';
+8
View File
@@ -224,6 +224,14 @@ $lang->project->allSummary = '本页共 <strong>%s</strong> 个项
$lang->project->checkedSummary = '选中 <strong>%total%</strong> 个项目。';
$lang->project->checkedAllSummary = '选中 <strong>%total%</strong> 个项目,未开始 <strong>%wait%</strong>,进行中 <strong>%doing%</strong>,已挂起 <strong>%suspended%</strong>,已关闭 <strong>%closed%</strong> 。';
$lang->project->tip = new stdclass();
$lang->project->tip->closed = '该项目已是关闭状态,无须关闭。';
$lang->project->tip->notSuspend = '该项目已关闭,不可进行挂起操作。';
$lang->project->tip->suspended = '该项目已是挂起状态,无须挂起。';
$lang->project->tip->actived = '该项目已是激活状态,无须激活。';
$lang->project->tip->group = '该项目是看板项目,无法进行项目权限分组。';
$lang->project->tip->whitelist = '该项目是公开项目,无须维护白名单。';
$lang->project->tenThousand = '万';
$lang->project->hundredMillion = '亿';