Merge branch 'sprint/master_lanzongjun_fixbug' into 'master'
* Fix Task #77278#77266#77260#77262 See merge request easycorp/zentaopms!6299
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<script>
|
||||
<?php if(trim($config->visions, ',') == 'lite'): ?>
|
||||
$('#headerActions').css("right", '110px');
|
||||
$('#headerActions').css("right", '140px');
|
||||
<?php else: ?>
|
||||
$('#headerActions').css("right", '205px');
|
||||
$('#headerActions').css("right", '235px');
|
||||
<?php endif; ?>
|
||||
</script>
|
||||
|
||||
@@ -2129,7 +2129,7 @@ class execution extends control
|
||||
}
|
||||
|
||||
/* Set custom. */
|
||||
foreach(explode(',', $this->config->execution->customBatchEditFields) as $field) $customFields[$field] = $this->lang->execution->$field;
|
||||
foreach(explode(',', $this->config->execution->customBatchEditFields) as $field) $customFields[$field] = str_replace($this->lang->executionCommon, $this->lang->execution->common, $this->lang->execution->$field);
|
||||
$this->view->customFields = $customFields;
|
||||
$this->view->showFields = $this->config->execution->custom->batchEditFields;
|
||||
|
||||
|
||||
@@ -566,8 +566,8 @@ class executionModel extends model
|
||||
if($oldExecution->type == 'stage' and $field == 'name') $this->lang->project->name = str_replace($this->lang->executionCommon, $this->lang->project->stage, $this->lang->project->name);
|
||||
}
|
||||
|
||||
$relationExecutionsID = $this->getRelatedExecutions($executionID);
|
||||
$relationExecutionsID = !empty($relationExecutionsID) ? implode(',', array_keys($relationExecutionsID)) : '';
|
||||
$relatedExecutionsID = $this->getRelatedExecutions($executionID);
|
||||
$relatedExecutionsID = !empty($relatedExecutionsID) ? implode(',', array_keys($relatedExecutionsID)) : '';
|
||||
|
||||
/* Update data. */
|
||||
$this->lang->error->unique = $this->lang->error->repeat;
|
||||
@@ -578,7 +578,7 @@ class executionModel extends model
|
||||
->checkIF($execution->begin != '', 'begin', 'date')
|
||||
->checkIF($execution->end != '', 'end', 'date')
|
||||
->checkIF($execution->end != '', 'end', 'ge', $execution->begin)
|
||||
->checkIF(!empty($execution->name), 'name', 'unique', "id in ('$relationExecutionsID') and type in ('sprint','stage', 'kanban') and `project` = $executionProject and `deleted` = '0'")
|
||||
->checkIF(!empty($execution->name), 'name', 'unique', "id in ('$relatedExecutionsID') and type in ('sprint','stage', 'kanban') and `project` = $executionProject and `deleted` = '0'")
|
||||
->checkIF(!empty($execution->code), 'code', 'unique', "id != $executionID and type in ('sprint','stage', 'kanban') and `deleted` = '0'")
|
||||
->checkFlow()
|
||||
->where('id')->eq($executionID)
|
||||
|
||||
@@ -431,9 +431,13 @@ class product extends control
|
||||
|
||||
if($this->app->tab == 'doc') unset($this->lang->doc->menu->product['subMenu']);
|
||||
|
||||
$gobackLink = '';
|
||||
if(isset($output['from']) and $output['from'] == 'qa') $gobackLink = $this->createLink('qa', 'index');
|
||||
if(isset($output['from']) and $output['from'] == 'global') $gobackLink = $this->createLink('product', 'all');
|
||||
|
||||
$this->view->title = $this->lang->product->create;
|
||||
$this->view->position[] = $this->view->title;
|
||||
$this->view->gobackLink = (isset($output['from']) and $output['from'] == 'global') ? $this->createLink('product', 'all') : '';
|
||||
$this->view->gobackLink = $gobackLink;
|
||||
$this->view->groups = $this->loadModel('group')->getPairs();
|
||||
$this->view->programID = $programID;
|
||||
$this->view->poUsers = $poUsers;
|
||||
@@ -1190,7 +1194,8 @@ class product extends control
|
||||
elseif($moduleName == 'qa')
|
||||
{
|
||||
$this->loadModel('qa')->setMenu(array(), 0);
|
||||
$this->app->rawModule = $activeMenu;
|
||||
$this->app->rawModule = $activeMenu;
|
||||
$this->view->moduleName = $moduleName;
|
||||
|
||||
if($activeMenu == 'testcase') unset($this->lang->qa->menu->testcase['subMenu']);
|
||||
if($activeMenu == 'testsuite') unset($this->lang->qa->menu->testcase['subMenu']);
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
</div>
|
||||
<?php else:?>
|
||||
<div class="table-empty-tip">
|
||||
<p><span class="text-muted"><?php echo $lang->product->noProduct;?></span> <?php common::printLink('product', 'create', '', "<i class='icon icon-plus'></i> " . $lang->product->create, '', "class='btn btn-info' data-app='product'");?></p>
|
||||
<p><span class="text-muted"><?php echo $lang->product->noProduct;?></span> <?php common::printLink('product', 'create', "programID=0&extra=from=$moduleName", "<i class='icon icon-plus'></i> " . $lang->product->create, '', "class='btn btn-info' data-app='product'");?></p>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php include '../../common/view/footer.html.php';?>
|
||||
|
||||
@@ -1086,15 +1086,15 @@ class programplanModel extends model
|
||||
$this->lang->project->name = $this->lang->programplan->name;
|
||||
$this->lang->project->code = $this->lang->execution->code;
|
||||
|
||||
$relationExecutionsID = $this->loadModel('execution')->getRelatedExecutions($planID);
|
||||
$relationExecutionsID = !empty($relationExecutionsID) ? implode(',', array_keys($relationExecutionsID)) : '';
|
||||
$relatedExecutionsID = $this->loadModel('execution')->getRelatedExecutions($planID);
|
||||
$relatedExecutionsID = !empty($relatedExecutionsID) ? implode(',', array_keys($relatedExecutionsID)) : '';
|
||||
|
||||
$this->dao->update(TABLE_PROJECT)->data($plan)
|
||||
->autoCheck()
|
||||
->batchCheck($this->config->programplan->edit->requiredFields, 'notempty')
|
||||
->checkIF($plan->end != '0000-00-00', 'end', 'ge', $plan->begin)
|
||||
->checkIF($plan->percent != false, 'percent', 'float')
|
||||
->checkIF(!empty($plan->name), 'name', 'unique', "id in ('{$relationExecutionsID}') and type in ('sprint','stage') and `project` = {$oldPlan->project} and `deleted` = '0'" . ($parentStage ? " and `parent` = {$oldPlan->parent}" : ''))
|
||||
->checkIF(!empty($plan->name), 'name', 'unique', "id in ('{$relatedExecutionsID}') and type in ('sprint','stage') and `project` = {$oldPlan->project} and `deleted` = '0'" . ($parentStage ? " and `parent` = {$oldPlan->parent}" : ''))
|
||||
->checkIF(!empty($plan->code) and $setCode, 'code', 'unique', "id != $planID and type in ('sprint','stage','kanban') and `deleted` = '0'")
|
||||
->where('id')->eq($planID)
|
||||
->exec();
|
||||
|
||||
@@ -2015,7 +2015,7 @@ class story extends control
|
||||
*/
|
||||
public function batchToTask($executionID = 0, $projectID = 0)
|
||||
{
|
||||
if($executionID) $this->loadModel('execution')->setMenu($executionID);
|
||||
if($this->app->tab == 'execution' and $executionID) $this->loadModel('execution')->setMenu($executionID);
|
||||
|
||||
if(!empty($_POST['name']))
|
||||
{
|
||||
@@ -2414,7 +2414,11 @@ class story extends control
|
||||
$type = $story->type == 'story' ? 'linkRelateSR' : 'linkRelateUR';
|
||||
$method = $story->type == 'story' ? 'linkStories' : 'linkRequirements';
|
||||
|
||||
if(!empty($product->shadow)) unset($this->config->product->search['fields']['product']);
|
||||
if(!empty($product->shadow))
|
||||
{
|
||||
unset($this->config->product->search['fields']['product']);
|
||||
unset($this->config->product->search['fields']['plan']);
|
||||
}
|
||||
|
||||
/* Build search form. */
|
||||
$actionURL = $this->createLink('story', $method, "storyID=$storyID&browseType=bySearch&excludeStories=$excludeStories&queryID=myQueryID", '', true);
|
||||
|
||||
@@ -95,7 +95,7 @@ th.c-confirmed, th.c-confirm {text-align: center;}
|
||||
#headerActions .setting {border-color: transparent;}
|
||||
#headerActions .dropdown-menu {top: 35px; z-index: 2000;}
|
||||
#headerActions .dropdown-menu:before, #headerActions .dropdown-menu:hover:before {position: absolute; top: -9px; right: 50%; width: 0; height: 0; content: ' '; border-color: transparent transparent #fff transparent; border-style: solid; border-width: 0 10px 10px 10px;}
|
||||
[lang^='zh'] #headerActions {right: 230px;}
|
||||
[lang^='zh'] #headerActions {right: 235px;}
|
||||
|
||||
.icon-size-width:before {content: "\e9c5"; transform: rotate(90deg); -ms-transform: rotate(90deg); -moz-transform: rotate(90deg); -webkit-transform: rotate(90deg); -o-transform: rotate(90deg);}
|
||||
.checkbox-primary > label{overflow: hidden;}
|
||||
|
||||
Reference in New Issue
Block a user