Merge branch 'sprint/205_hufangzhou_57882' into 'master'
* Finish task #57882, #57874, #57873, #57855. See merge request easycorp/zentaopms!4047
This commit is contained in:
@@ -90,7 +90,7 @@ $lang->block->remove = '移除';
|
||||
$lang->block->refresh = '刷新';
|
||||
$lang->block->nbsp = '';
|
||||
$lang->block->hidden = '隐藏';
|
||||
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s <em>%s</em> %s <a href='%s' title='%s'>%s</a></span>";
|
||||
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s <span class='label-action'>%s</span> %s <a href='%s' title='%s'>%s</a></span>";
|
||||
$lang->block->noLinkDynamic = "<span class='timeline-tag'>%s</span> <span class='timeline-text' title='%s'>%s <em>%s</em> %s %s</span>";
|
||||
$lang->block->cannotPlaceInLeft = '此区块无法放置在左侧。';
|
||||
$lang->block->cannotPlaceInRight = '此区块无法放置在右侧。';
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
<style>
|
||||
.block-dynamic .timeline > li .timeline-text {max-width: 600px; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-height: 20px;}
|
||||
.block-dynamic .panel-body {padding-top: 0;}
|
||||
.block-dynamic .label-action {margin-left: 12px;}
|
||||
.block-dynamic .label-action + a {color: #838A9D;}
|
||||
</style>
|
||||
<div class='panel-body scrollbar-hover'>
|
||||
<ul class="timeline timeline-tag-left no-margin">
|
||||
|
||||
@@ -15,3 +15,7 @@ th.c-pri{width:50px;}
|
||||
.closed-story {color: #e5e5e5;}
|
||||
.stageBox {height: 180px; overflow: scroll; background: #ffffff;}
|
||||
#executionStoryForm tbody tr td .label {max-width: 100px; text-overflow: unset;}
|
||||
|
||||
.panel-actions {position: relative; padding: 0;}
|
||||
.switchBtn {background-color: #fff !important;}
|
||||
.switchBtn > i {padding-left: 7px;}
|
||||
|
||||
@@ -42,3 +42,7 @@
|
||||
|
||||
.table-grouped > tbody > tr,
|
||||
.table-grouped > tbody > tr:hover {background: #fff !important;}
|
||||
|
||||
.panel-actions {position: relative; padding: 0;}
|
||||
.switchBtn {background-color: #fff !important;}
|
||||
.switchBtn > i {padding-left: 7px;}
|
||||
|
||||
@@ -10,3 +10,6 @@
|
||||
|
||||
.block-dynamic .panel-body {height: 230px; overflow: auto; position: relative;}
|
||||
.block-team div.col-xs-6 {white-space: nowrap; overflow: hidden;}
|
||||
|
||||
.block-dynamic .label-action {margin-left: 12px;}
|
||||
.block-dynamic .label-action + a {color: #838A9D;}
|
||||
|
||||
@@ -72,6 +72,13 @@ $(function()
|
||||
});
|
||||
|
||||
$('.sorter-false a').unwrap();
|
||||
|
||||
/* The display of the adjusting sidebarHeader is synchronized with the sidebar. */
|
||||
$(".sidebar-toggle").click(function()
|
||||
{
|
||||
$("#sidebarHeader").toggle("fast");
|
||||
});
|
||||
if($("main").is(".hide-sidebar")) $("#sidebarHeader").hide();
|
||||
});
|
||||
|
||||
/**
|
||||
|
||||
@@ -133,6 +133,7 @@ $lang->execution->sortColumn = 'Kanban Card Sorting';
|
||||
$lang->execution->batchCreateStory = "Batch create {$lang->SRCommon}";
|
||||
$lang->execution->batchCreateTask = 'Batch create task';
|
||||
$lang->execution->kanbanNoLinkProduct = "Kanban not linked {$lang->productCommon}";
|
||||
$lang->execution->list = 'List';
|
||||
|
||||
/* Fields of zt_team. */
|
||||
$lang->execution->root = 'Root';
|
||||
|
||||
@@ -133,6 +133,7 @@ $lang->execution->sortColumn = '看板列卡片排序';
|
||||
$lang->execution->batchCreateStory = "批量新建{$lang->SRCommon}";
|
||||
$lang->execution->batchCreateTask = '批量建任务';
|
||||
$lang->execution->kanbanNoLinkProduct = "看板没有关联{$lang->productCommon}";
|
||||
$lang->execution->list = '列表';
|
||||
|
||||
/* Fields of zt_team. */
|
||||
$lang->execution->root = '源ID';
|
||||
|
||||
@@ -28,32 +28,42 @@
|
||||
.btn-group a.btn-secondary, .btn-group a.btn-primary {border-right: 1px solid rgba(255,255,255,0.2);}
|
||||
.btn-group button.dropdown-toggle.btn-secondary, .btn-group button.dropdown-toggle.btn-primary {padding:6px;}
|
||||
</style>
|
||||
<?php $isAllModules = (!empty($module->name) or !empty($product->name) or !empty($branch)) ? false : true;?>
|
||||
<?php $sidebarName = $lang->tree->all;?>
|
||||
<?php $removeBtn = '';?>
|
||||
<div id="mainMenu" class="clearfix">
|
||||
<?php if(!empty($module->name) or !empty($product->name) or !empty($branch)):?>
|
||||
<div id="sidebarHeader">
|
||||
<?php
|
||||
$sidebarName = isset($product) ? $product->name : (isset($branch) ? $branch : $module->name);
|
||||
$removeType = isset($product) ? 'byproduct' : (isset($branch) ? 'bybranch' : 'bymodule');
|
||||
$removeLink = inlink('story', "executionID=$execution->id&orderBy=$orderBy&type=$removeType¶m=0&recTotal=0&recPerPage={$pager->recPerPage}");
|
||||
if(!$isAllModules)
|
||||
{
|
||||
$sidebarName = isset($product) ? $product->name : (isset($branch) ? $branch : $module->name);
|
||||
$removeType = isset($product) ? 'byproduct' : (isset($branch) ? 'bybranch' : 'bymodule');
|
||||
$removeLink = inlink('story', "executionID=$execution->id&orderBy=$orderBy&type=$removeType¶m=0&recTotal=0&recPerPage={$pager->recPerPage}");
|
||||
$removeBtn = html::a($removeLink, "<i class='icon icon-sm icon-close'></i>", '', "class='text-muted'");
|
||||
}
|
||||
?>
|
||||
<div class="title" title='<?php echo $sidebarName;?>'>
|
||||
<?php echo $sidebarName;?>
|
||||
<?php echo html::a($removeLink, "<i class='icon icon-sm icon-close'></i>", '', "class='text-muted'");?>
|
||||
<?php echo $removeBtn;?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<div class="btn-toolbar pull-left">
|
||||
<?php
|
||||
if(common::hasPriv('execution', 'story'))
|
||||
{
|
||||
echo html::a($this->createLink('execution', 'story', "executionID=$execution->id&orderBy=order_desc&type=all"), "<span class='text'>{$lang->story->allStories}</span>" . ($type == 'all' ? " <span class='label label-light label-badge'>{$pager->recTotal}</span>" : ''), '', "class='btn btn-link" . ($type == 'all' ? " btn-active-text" : '') . "'");
|
||||
echo html::a($this->createLink('execution', 'story', "executionID=$execution->id&orderBy=order_desc&type=all"), "<span class='text'>{$lang->all}</span>" . ($type == 'all' ? " <span class='label label-light label-badge'>{$pager->recTotal}</span>" : ''), '', "class='btn btn-link" . ($type == 'all' ? " btn-active-text" : '') . "'");
|
||||
echo html::a($this->createLink('execution', 'story', "executionID=$execution->id&orderBy=order_desc&type=unclosed"), "<span class='text'>{$lang->story->unclosed}</span>" . ($type == 'unclosed' ? " <span class='label label-light label-badge'>{$pager->recTotal}</span>" : ''), '', "class='btn btn-link" . ($type == 'unclosed' ? " btn-active-text" : '') . "'");
|
||||
}
|
||||
if(common::hasPriv('execution', 'storykanban')) echo html::a($this->createLink('execution', 'storykanban', "executionID=$execution->id"), "<span class='text'>{$lang->execution->kanban}</span>", '', "class='btn btn-link'");
|
||||
?>
|
||||
<a class="btn btn-link querybox-toggle" id='bysearchTab'><i class="icon icon-search muted"></i> <?php echo $lang->product->searchStory;?></a>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-right">
|
||||
<?php if(common::hasPriv('execution', 'storykanban')):?>
|
||||
<div class="btn-group panel-actions">
|
||||
<?php echo html::a($this->createLink('execution', 'story', "executionID=$execution->id&orderBy=order_desc&type=all"), "<i class='icon-list'></i> ", '', "class='btn btn-icon text-primary switchBtn' title='{$lang->execution->list}' data-type='bylist'");?>
|
||||
<?php echo html::a($this->createLink('execution', 'storykanban', "executionID=$execution->id"), "<i class='icon-kanban'></i> ", '', "class='btn btn-icon switchBtn' title='{$lang->execution->kanban}' data-type='bykanban'");?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php
|
||||
common::printLink('story', 'export', "productID=$productID&orderBy=id_desc&executionID=$execution->id", "<i class='icon icon-export muted'></i> " . $lang->story->export, '', "class='btn btn-link export iframe' data-app='execution'");
|
||||
|
||||
|
||||
@@ -25,10 +25,15 @@ $account = $this->app->user->account;
|
||||
$total += count($colStories);
|
||||
}
|
||||
?>
|
||||
<?php if(common::hasPriv('execution', 'story')) echo html::a($this->createLink('execution', 'story', "executionID=$execution->id"), "<span class='text'>{$lang->story->allStories}</span>", '', "class='btn btn-link'");?>
|
||||
<?php if(common::hasPriv('execution', 'storykanban')) echo html::a($this->createLink('execution', 'storykanban', "executionID=$execution->id"), "<span class='text'>{$lang->execution->kanban}</span> <span class='label label-light label-badge'>{$total}</span>", '', "class='btn btn-link btn-active-text'");?>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-right">
|
||||
<?php if(common::hasPriv('execution', 'story')):?>
|
||||
<div class="btn-group panel-actions">
|
||||
<?php echo html::a($this->createLink('execution', 'story', "executionID=$execution->id"), "<i class='icon-list'></i> ", '', "class='btn btn-icon switchBtn' title='{$lang->execution->list}' data-type='bylist'");?>
|
||||
<?php echo html::a($this->createLink('execution', 'storykanban', "executionID=$execution->id"), "<i class='icon-kanban'></i> ", '', "class='btn btn-icon text-primary switchBtn' title='{$lang->execution->kanban}' data-type='bykanban'");?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<div class='btn-group'>
|
||||
<?php
|
||||
common::printIcon('story', 'export', "productID=$productID&orderBy=id_desc", '', 'button', '', '', 'export', '', "data-group='execution'");
|
||||
|
||||
@@ -2,3 +2,6 @@
|
||||
.block-release .panel-body {padding-bottom: 50px;}
|
||||
.block-release .panel-body > .btn.pull-right {position: absolute; right: 20px; bottom: 20px;}
|
||||
.release-line li .title {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
|
||||
.block-dynamic .label-action {margin-left: 12px;}
|
||||
.block-dynamic .label-action + a {color: #838A9D;}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
.block-dynamic .panel-body {height: 230px; overflow: auto; position: relative;}
|
||||
.block-team div.col-xs-6 {white-space: nowrap; overflow: hidden;}
|
||||
.cell .detail .row-grid {display: block;}
|
||||
|
||||
.block-dynamic .label-action {margin-left: 12px;}
|
||||
.block-dynamic .label-action + a {color: #838A9D;}
|
||||
|
||||
@@ -148,7 +148,6 @@ $lang->story->colorTag = 'Color';
|
||||
$lang->story->files = 'Files';
|
||||
$lang->story->copy = "Copy Story";
|
||||
$lang->story->total = "Total Stories";
|
||||
$lang->story->allStories = 'All Stories';
|
||||
$lang->story->draft = 'Draft';
|
||||
$lang->story->unclosed = 'Unclosed';
|
||||
$lang->story->deleted = 'Deleted';
|
||||
|
||||
@@ -148,7 +148,6 @@ $lang->story->colorTag = '颜色标签';
|
||||
$lang->story->files = '附件';
|
||||
$lang->story->copy = "复制{$lang->SRCommon}";
|
||||
$lang->story->total = "总{$lang->SRCommon}";
|
||||
$lang->story->allStories = "所有{$lang->SRCommon}";
|
||||
$lang->story->draft = '草稿';
|
||||
$lang->story->unclosed = '未关闭';
|
||||
$lang->story->deleted = '已删除';
|
||||
|
||||
@@ -1743,6 +1743,7 @@ class testcaseModel extends model
|
||||
$class .= $case->status;
|
||||
$title = "title='" . $this->processStatus('testcase', $case) . "'";
|
||||
}
|
||||
if(strpos(',bugs,results,stepNumber,', ",$id,") !== false) $title = "title='{$case->$id}'";
|
||||
if($id == 'actions') $class .= ' c-actions';
|
||||
if($id == 'lastRunResult') $class .= " {$case->lastRunResult}";
|
||||
if(strpos(',stage,precondition,keywords,story,', ",{$id},") !== false) $class .= ' text-ellipsis';
|
||||
|
||||
Reference in New Issue
Block a user