* Task #5423
This commit is contained in:
@@ -200,6 +200,42 @@ $lang->action->label->deleteestimate = "删除了工时";
|
||||
$lang->action->label->linked2build = "关联了";
|
||||
$lang->action->label->linked2bug = "关联了";
|
||||
|
||||
/* 动态信息按照对象分组 */
|
||||
$lang->action->dynamicAction = new stdclass;
|
||||
$lang->action->dynamicAction->product['opened'] = '创建';
|
||||
$lang->action->dynamicAction->product['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->product['deleted'] = '删除';
|
||||
$lang->action->dynamicAction->product['closed'] = '关闭';
|
||||
$lang->action->dynamicAction->story['opened'] = '创建';
|
||||
$lang->action->dynamicAction->story['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->story['deleted'] = '删除';
|
||||
$lang->action->dynamicAction->story['changed'] = '变更';
|
||||
$lang->action->dynamicAction->story['changed'] = '变更';
|
||||
$lang->action->dynamicAction->story['linked2project'] = "关联{$lang->projectCommon}";
|
||||
$lang->action->dynamicAction->story['unlinkedfromproject'] = "移除{$lang->projectCommon}";
|
||||
$lang->action->dynamicAction->story['subdividestory'] = $lang->action->label->subdividestory;
|
||||
$lang->action->dynamicAction->story['unlinkchildstory'] = $lang->action->label->unlinkchildstory;
|
||||
$lang->action->dynamicAction->story['undeleted'] = '还原';
|
||||
$lang->action->dynamicAction->story['hidden'] = '隐藏';
|
||||
$lang->action->dynamicAction->project['opened'] = '创建';
|
||||
$lang->action->dynamicAction->project['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->project['deleted'] = '删除';
|
||||
$lang->action->dynamicAction->project['closed'] = '关闭';
|
||||
$lang->action->dynamicAction->project['activated'] = '激活';
|
||||
$lang->action->dynamicAction->task['opened'] = '创建';
|
||||
$lang->action->dynamicAction->task['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->task['deleted'] = '删除';
|
||||
$lang->action->dynamicAction->bug['opened'] = '创建';
|
||||
$lang->action->dynamicAction->bug['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->bug['deleted'] = '删除';
|
||||
$lang->action->dynamicAction->bug['resolved'] = '解决';
|
||||
$lang->action->dynamicAction->bug['bugconfirmed'] = '确认';
|
||||
$lang->action->dynamicAction->bug['assigned'] = '指派';
|
||||
$lang->action->dynamicAction->bug['activated'] = '激活';
|
||||
$lang->action->dynamicAction->doc['opened'] = '创建';
|
||||
$lang->action->dynamicAction->doc['edited'] = '编辑';
|
||||
$lang->action->dynamicAction->doc['deleted'] = '删除';
|
||||
|
||||
/* 用来生成相应对象的链接。*/
|
||||
$lang->action->label->product = $lang->productCommon . '|product|view|productID=%s';
|
||||
$lang->action->label->productplan = '计划|productplan|view|productID=%s';
|
||||
|
||||
+14
-5
@@ -602,7 +602,18 @@ class actionModel extends model
|
||||
$this->loadModel('doc');
|
||||
$libs = $this->doc->getLibs('all');
|
||||
$docs = $this->doc->getPrivDocs(array_keys($libs));
|
||||
|
||||
|
||||
$setDynamicActions = array();
|
||||
$actions = '';
|
||||
if(isset($this->config->global->setdynamic) and $this->config->global->setdynamic != 'false')
|
||||
{
|
||||
$setDynamicActions = json_decode($this->config->global->setdynamic, true);
|
||||
foreach($setDynamicActions as $moudle => $action)
|
||||
{
|
||||
$actions .= implode(',', $action) . ',';
|
||||
}
|
||||
}
|
||||
|
||||
/* Get actions. */
|
||||
$actions = $this->dao->select('*')->from(TABLE_ACTION)
|
||||
->where(1)
|
||||
@@ -620,6 +631,7 @@ class actionModel extends model
|
||||
->beginIF($this->config->global->flow == 'onlyStory')->andWhere('objectType')->notin('bug,build,project,task,taskcase,testreport,testsuite,testtask')->fi()
|
||||
->beginIF($this->config->global->flow == 'onlyTask')->andWhere('objectType')->notin('product,productplan,release,story,testcase,testreport,testsuite')->fi()
|
||||
->beginIF($this->config->global->flow == 'onlyTest')->andWhere('objectType')->notin('project,productplan,release,story,task')->fi()
|
||||
->beginIF(!empty($setDynamicActions))->andWhere('objectType')->in(array_keys($setDynamicActions))->andWhere('action')->in($actions)->fi()
|
||||
->orderBy($orderBy)
|
||||
->page($pager)
|
||||
->fetchAll();
|
||||
@@ -628,10 +640,7 @@ class actionModel extends model
|
||||
|
||||
$this->loadModel('common')->saveQueryCondition($this->dao->get(), 'action');
|
||||
|
||||
$actions = $this->transformActions($actions);
|
||||
$actioned = $this->loadModel('setting')->getItem("owner=system&module=common§ion=global&key=setdynamic");
|
||||
foreach($actions as $index => $action) if(strpos($actioned, $action->action) === false) unset($actions[$index]);
|
||||
return $actions;
|
||||
return $this->transformActions($actions);;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -331,20 +331,23 @@ class custom extends control
|
||||
*/
|
||||
public function setDynamic()
|
||||
{
|
||||
if($_POST)
|
||||
if($_SERVER['REQUEST_METHOD'] == 'POST')
|
||||
{
|
||||
$actions = $this->post->actions;
|
||||
$actions = implode(',', array_filter($actions));
|
||||
$actions = json_encode($actions);
|
||||
$this->loadModel('setting')->setItem('system.common.global.setdynamic', $actions);
|
||||
$this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'locate' => 'reload'));
|
||||
|
||||
}
|
||||
|
||||
$this->app->loadLang('action');
|
||||
$this->view->title = $this->lang->custom->setDynamic;
|
||||
$this->view->position[] = $this->lang->custom->common;
|
||||
$this->view->position[] = $this->view->title;
|
||||
$this->view->actions = $this->lang->action->search->label;
|
||||
$this->view->actioned = $this->loadModel('setting')->getItem("owner=system&module=common§ion=global&key=setdynamic");
|
||||
$this->app->loadLang('group');
|
||||
$this->view->title = $this->lang->custom->setDynamic;
|
||||
$this->view->position[] = $this->lang->custom->common;
|
||||
$this->view->position[] = $this->view->title;
|
||||
$this->view->objectTypes = $this->lang->action->objectTypes;
|
||||
$this->view->dynamicAction = $this->lang->action->dynamicAction;
|
||||
$this->view->actions = $this->lang->action->search->label;
|
||||
$this->view->setActions = json_decode($this->loadModel('setting')->getItem("owner=system&module=common§ion=global&key=setdynamic"), true);
|
||||
$this->display();
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,9 @@
|
||||
*/
|
||||
?>
|
||||
<?php include 'header.html.php';?>
|
||||
<style>
|
||||
.checkbox-primary{float:left;margin-left:5px;}
|
||||
</style>
|
||||
<div id='mainContent' class='main-content'>
|
||||
<form class="load-indicator main-form form-ajax" method='post'>
|
||||
<div class='main-header'>
|
||||
@@ -17,11 +20,29 @@
|
||||
<strong><?php echo $lang->custom->setDynamic?></strong>
|
||||
</div>
|
||||
</div>
|
||||
<table class='table table-form'>
|
||||
<table class='table table-hover table-striped table-bordered'>
|
||||
<thead>
|
||||
<tr class='text-center'>
|
||||
<th class='w-150px'><?php echo $lang->group->module;?></th>
|
||||
<th><?php echo $lang->action->action;?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<?php foreach($objectTypes as $objectKey => $objectTypeName):?>
|
||||
<tr>
|
||||
<th class='w-100px'><?php echo $lang->custom->setAction;?></th>
|
||||
<td><?php echo html::select("actions[]", $actions, $actioned, "class='form-control chosen' multiple");?></td>
|
||||
<th class='text-middle w-150px'>
|
||||
<div class="text-center check-all">
|
||||
<?php echo $objectTypeName?>
|
||||
</div>
|
||||
</th>
|
||||
<td class='pv-10px'>
|
||||
<?php if(isset($dynamicAction->$objectKey)):?>
|
||||
<div class='group-item'>
|
||||
<?php echo html::checkbox("actions[{$objectKey}]", $dynamicAction->$objectKey, isset($setActions[$objectKey]) ? $setActions[$objectKey] : '', '');?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
<tr>
|
||||
<th></th>
|
||||
<td class='form-actions'>
|
||||
|
||||
@@ -24,9 +24,9 @@ $lang->group->manageMember = '成员维护';
|
||||
$lang->group->confirmDelete = '您确定删除该用户分组吗?';
|
||||
$lang->group->successSaved = '成功保存';
|
||||
$lang->group->errorNotSaved = '没有保存,请确认选择了权限数据。';
|
||||
$lang->group->viewList = '允许访问视图';
|
||||
$lang->group->productList = '允许访问' . $lang->productCommon;
|
||||
$lang->group->projectList = '允许访问' . $lang->projectCommon;
|
||||
$lang->group->viewList = '可访问视图';
|
||||
$lang->group->productList = '可访问' . $lang->productCommon;
|
||||
$lang->group->projectList = '可访问' . $lang->projectCommon;
|
||||
$lang->group->noticeVisit = '空代表访问没有访问限制';
|
||||
|
||||
$lang->group->id = '编号';
|
||||
|
||||
@@ -318,7 +318,7 @@ class taskModel extends model
|
||||
$this->updateParentStatus($taskID);
|
||||
$this->computeBeginAndEnd($parentID);
|
||||
$this->dao->update(TABLE_TASK)->set('parent')->eq(-1)->where('id')->eq($parentID)->exec();
|
||||
$this->action->create('task', $parentID, 'batchCreate', $childTasks);
|
||||
$this->action->create('task', $parentID, 'batchCreate', '', $taskID);
|
||||
}
|
||||
return $mails;
|
||||
}
|
||||
@@ -750,7 +750,7 @@ class taskModel extends model
|
||||
if($oldTask->parent > 0)
|
||||
{
|
||||
if($task->parent == 0) $this->computeWorkingHours($oldTask->parent);
|
||||
$this->updateParentStatus($taskID, false);
|
||||
$this->updateParentStatus($taskID);
|
||||
$this->computeBeginAndEnd($oldTask->parent);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user