Merge branch 'sprint/253_tianshujie_dashboard' into 'master'
Sprint/253 tianshujie dashboard See merge request easycorp/zentaopms!5899
This commit is contained in:
@@ -253,20 +253,20 @@ $lang->action->desc->unlinkbug = '$date, 由 <strong>$actor</strong> 从计划
|
||||
|
||||
/* 用来显示动态信息。*/
|
||||
$lang->action->label = new stdclass();
|
||||
$lang->action->label->install = '安装';
|
||||
$lang->action->label->revert = '还原';
|
||||
$lang->action->label->created = '创建';
|
||||
$lang->action->label->opened = '创建';
|
||||
$lang->action->label->openedbysystem = '系统创建';
|
||||
$lang->action->label->closedbysystem = '系统关闭';
|
||||
$lang->action->label->added = '添加';
|
||||
$lang->action->label->install = '安装了';
|
||||
$lang->action->label->revert = '还原了';
|
||||
$lang->action->label->created = '创建了';
|
||||
$lang->action->label->opened = '创建了';
|
||||
$lang->action->label->openedbysystem = '系统创建了';
|
||||
$lang->action->label->closedbysystem = '系统关闭了';
|
||||
$lang->action->label->added = '添加了';
|
||||
$lang->action->label->changed = '变更了';
|
||||
$lang->action->label->edited = '编辑了';
|
||||
$lang->action->label->assigned = '指派了';
|
||||
$lang->action->label->closed = '关闭了';
|
||||
$lang->action->label->deleted = '删除了';
|
||||
$lang->action->label->deletedfile = '删除附件';
|
||||
$lang->action->label->editfile = '编辑附件';
|
||||
$lang->action->label->deletedfile = '删除了附件';
|
||||
$lang->action->label->editfile = '编辑了附件';
|
||||
$lang->action->label->erased = '删除了';
|
||||
$lang->action->label->undeleted = '还原了';
|
||||
$lang->action->label->hidden = '隐藏了';
|
||||
@@ -276,30 +276,30 @@ $lang->action->label->activated = '激活了';
|
||||
$lang->action->label->blocked = '阻塞了';
|
||||
$lang->action->label->resolved = '解决了';
|
||||
$lang->action->label->reviewed = '评审了';
|
||||
$lang->action->label->recalled = '撤销评审';
|
||||
$lang->action->label->recalledchange = '撤销变更';
|
||||
$lang->action->label->recalled = '撤销了评审';
|
||||
$lang->action->label->recalledchange = '撤销了变更';
|
||||
$lang->action->label->moved = '移动了';
|
||||
$lang->action->label->confirmed = "确认了{$lang->SRCommon}";
|
||||
$lang->action->label->bugconfirmed = '确认了';
|
||||
$lang->action->label->tostory = "转{$lang->SRCommon}";
|
||||
$lang->action->label->frombug = "转{$lang->SRCommon}";
|
||||
$lang->action->label->tostory = "转了{$lang->SRCommon}";
|
||||
$lang->action->label->frombug = "转了{$lang->SRCommon}";
|
||||
$lang->action->label->fromlib = '从用例库导入';
|
||||
$lang->action->label->totask = '转任务';
|
||||
$lang->action->label->converttotask = '转任务';
|
||||
$lang->action->label->svncommited = '提交代码';
|
||||
$lang->action->label->gitcommited = '提交代码';
|
||||
$lang->action->label->linked2plan = "关联计划";
|
||||
$lang->action->label->unlinkedfromplan = "移除计划";
|
||||
$lang->action->label->changestatus = '修改状态';
|
||||
$lang->action->label->totask = '转了任务';
|
||||
$lang->action->label->converttotask = '转了任务';
|
||||
$lang->action->label->svncommited = '提交了代码';
|
||||
$lang->action->label->gitcommited = '提交了代码';
|
||||
$lang->action->label->linked2plan = "关联了计划";
|
||||
$lang->action->label->unlinkedfromplan = "移除了计划";
|
||||
$lang->action->label->changestatus = '修改了状态';
|
||||
$lang->action->label->marked = '编辑了';
|
||||
$lang->action->label->linked2execution = "关联{$lang->executionCommon}";
|
||||
$lang->action->label->unlinkedfromexecution = "移除{$lang->executionCommon}";
|
||||
$lang->action->label->linked2kanban = '关联看板';
|
||||
$lang->action->label->linked2project = "关联项目";
|
||||
$lang->action->label->unlinkedfromproject = "移除项目";
|
||||
$lang->action->label->unlinkedfrombuild = "移除版本";
|
||||
$lang->action->label->linked2release = "关联发布";
|
||||
$lang->action->label->unlinkedfromrelease = "移除发布";
|
||||
$lang->action->label->linked2execution = "关联了{$lang->executionCommon}";
|
||||
$lang->action->label->unlinkedfromexecution = "移除了{$lang->executionCommon}";
|
||||
$lang->action->label->linked2kanban = '关联了看板';
|
||||
$lang->action->label->linked2project = "关联了项目";
|
||||
$lang->action->label->unlinkedfromproject = "移除了项目";
|
||||
$lang->action->label->unlinkedfrombuild = "移除了版本";
|
||||
$lang->action->label->linked2release = "关联了发布";
|
||||
$lang->action->label->unlinkedfromrelease = "移除了发布";
|
||||
$lang->action->label->linkrelatedbug = "关联了相关Bug";
|
||||
$lang->action->label->unlinkrelatedbug = "移除了相关Bug";
|
||||
$lang->action->label->linkrelatedcase = "关联了相关用例";
|
||||
@@ -316,8 +316,8 @@ $lang->action->label->canceled = '取消了';
|
||||
$lang->action->label->finished = '完成了';
|
||||
$lang->action->label->paused = '暂停了';
|
||||
$lang->action->label->verified = '验收了';
|
||||
$lang->action->label->delayed = '延期';
|
||||
$lang->action->label->suspended = '挂起';
|
||||
$lang->action->label->delayed = '延期了';
|
||||
$lang->action->label->suspended = '挂起了';
|
||||
$lang->action->label->login = '登录系统';
|
||||
$lang->action->label->logout = "退出登录";
|
||||
$lang->action->label->notified = "通知了";
|
||||
@@ -326,31 +326,31 @@ $lang->action->label->linked2build = "关联了";
|
||||
$lang->action->label->linked2bug = "关联了";
|
||||
$lang->action->label->linked2testtask = "关联了";
|
||||
$lang->action->label->unlinkedfromtesttask = "移除了";
|
||||
$lang->action->label->linkchildtask = "关联子任务";
|
||||
$lang->action->label->unlinkchildrentask = "取消关联子任务";
|
||||
$lang->action->label->linkparenttask = "关联到父任务";
|
||||
$lang->action->label->unlinkparenttask = "从父任务取消关联";
|
||||
$lang->action->label->batchcreate = "批量创建任务";
|
||||
$lang->action->label->createchildren = "创建子任务";
|
||||
$lang->action->label->managed = "维护";
|
||||
$lang->action->label->linkchildtask = "关联了子任务";
|
||||
$lang->action->label->unlinkchildrentask = "取消关联了子任务";
|
||||
$lang->action->label->linkparenttask = "关联到了父任务";
|
||||
$lang->action->label->unlinkparenttask = "从父任务取消关联了";
|
||||
$lang->action->label->batchcreate = "批量创建了任务";
|
||||
$lang->action->label->createchildren = "创建了子任务";
|
||||
$lang->action->label->managed = "维护了";
|
||||
$lang->action->label->managedteam = "维护了";
|
||||
$lang->action->label->managedwhitelist = "维护了";
|
||||
$lang->action->label->deletechildrentask = "删除子任务";
|
||||
$lang->action->label->createchildrenstory = "创建子需求";
|
||||
$lang->action->label->linkchildstory = "关联子需求";
|
||||
$lang->action->label->unlinkchildrenstory = "取消关联子需求";
|
||||
$lang->action->label->linkparentstory = "关联到父需求";
|
||||
$lang->action->label->unlinkparentstory = "从父需求取消关联";
|
||||
$lang->action->label->deletechildrenstory = "删除子需求";
|
||||
$lang->action->label->deletechildrentask = "删除了子任务";
|
||||
$lang->action->label->createchildrenstory = "创建了子需求";
|
||||
$lang->action->label->linkchildstory = "关联了子需求";
|
||||
$lang->action->label->unlinkchildrenstory = "取消关联了子需求";
|
||||
$lang->action->label->linkparentstory = "关联到了父需求";
|
||||
$lang->action->label->unlinkparentstory = "从父需求取消关联了";
|
||||
$lang->action->label->deletechildrenstory = "删除了子需求";
|
||||
$lang->action->label->tracked = '跟踪了';
|
||||
$lang->action->label->hangup = '挂起了';
|
||||
$lang->action->label->run = '执行了';
|
||||
$lang->action->label->estimated = '估算了';
|
||||
$lang->action->label->reviewpassed = '确认通过';
|
||||
$lang->action->label->reviewrejected = '拒绝';
|
||||
$lang->action->label->reviewpassed = '确认了通过';
|
||||
$lang->action->label->reviewrejected = '拒绝了';
|
||||
$lang->action->label->reviewclarified = '有待明确';
|
||||
$lang->action->label->commitsummary = '提交培训总结';
|
||||
$lang->action->label->updatetrainee = '更新培训人员';
|
||||
$lang->action->label->commitsummary = '提交了培训总结';
|
||||
$lang->action->label->updatetrainee = '更新了培训人员';
|
||||
$lang->action->label->setdefaultbranch = '设置了默认分支';
|
||||
$lang->action->label->syncprogram = '开始了';
|
||||
$lang->action->label->syncproject = '开始了';
|
||||
@@ -362,13 +362,13 @@ $lang->action->label->deletemr = '合并请求取消了';
|
||||
$lang->action->label->mergedmr = '合并请求合并了';
|
||||
$lang->action->label->compilepass = '构建成功';
|
||||
$lang->action->label->compilefail = '构建失败';
|
||||
$lang->action->label->reopen = '重新打开';
|
||||
$lang->action->label->reopen = '重新打开了';
|
||||
$lang->action->label->approve = '通过了';
|
||||
$lang->action->label->reject = '拒绝了';
|
||||
$lang->action->label->importfromgitlab = '从Gitlab关联创建了';
|
||||
$lang->action->label->archived = '归档了';
|
||||
$lang->action->label->restore = '还原了';
|
||||
$lang->action->label->mergedbranch = '合并分支';
|
||||
$lang->action->label->mergedbranch = '合并了分支';
|
||||
$lang->action->label->startedbychild = '开始了';
|
||||
$lang->action->label->finishedbychild = '完成了';
|
||||
$lang->action->label->closedbychild = '关闭了';
|
||||
@@ -381,13 +381,13 @@ $lang->action->label->importedrelease = '导入了';
|
||||
$lang->action->label->importedexecution = '导入了';
|
||||
$lang->action->label->importedbuild = '导入了';
|
||||
$lang->action->label->importedticket = '导入了';
|
||||
$lang->action->label->fromsonarqube = '由SonarQube问题创建';
|
||||
$lang->action->label->fromsonarqube = '由SonarQube问题创建了';
|
||||
$lang->action->label->bind = '绑定了';
|
||||
$lang->action->label->unbind = '取消绑定了';
|
||||
$lang->action->label->linkstory = '关联需求到';
|
||||
$lang->action->label->linkbug = '关联BUG到';
|
||||
$lang->action->label->unlinkstory = '移除需求从';
|
||||
$lang->action->label->unlinkbug = '移除BUG从';
|
||||
$lang->action->label->linkstory = '关联需求到了';
|
||||
$lang->action->label->linkbug = '关联BUG到了';
|
||||
$lang->action->label->unlinkstory = '移除了需求从';
|
||||
$lang->action->label->unlinkbug = '移除了BUG从';
|
||||
$lang->action->label->tolib = '导入了';
|
||||
$lang->action->label->updatetolib = '更新了';
|
||||
$lang->action->label->ganttmove = '排序了';
|
||||
|
||||
@@ -94,8 +94,8 @@ $lang->block->remove = 'Entfernen';
|
||||
$lang->block->refresh = 'Aktualisieren';
|
||||
$lang->block->nbsp = '';
|
||||
$lang->block->hidden = 'Verstecken';
|
||||
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s<em class='label-action'>%s</em>%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 class='label-action'>%s</em>%s<span class='label-name'>%s</span></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<span class='label-action'>%s</span>%s<span class='label-name'>%s</span></span>";
|
||||
$lang->block->cannotPlaceInLeft = 'Kann den Block nicht auf der linken Seite platzieren.';
|
||||
$lang->block->cannotPlaceInRight = 'Kann den Block nicht auf der rechten Seite platzieren.';
|
||||
|
||||
|
||||
@@ -94,8 +94,8 @@ $lang->block->remove = 'Remove';
|
||||
$lang->block->refresh = 'Refresh';
|
||||
$lang->block->nbsp = ' ';
|
||||
$lang->block->hidden = 'Hide';
|
||||
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s<em class='label-action'>%s</em>%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 class='label-action'>%s</em>%s<span class='label-name'>%s</span></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<span class='label-action'>%s</span>%s<span class='label-name'>%s</span></span>";
|
||||
$lang->block->cannotPlaceInLeft = 'Cannot place the block at left side.';
|
||||
$lang->block->cannotPlaceInRight = 'Cannot place the block at right side.';
|
||||
|
||||
|
||||
@@ -94,8 +94,8 @@ $lang->block->remove = 'Supprimer';
|
||||
$lang->block->refresh = 'Rafraichir';
|
||||
$lang->block->nbsp = ' ';
|
||||
$lang->block->hidden = 'Masquer';
|
||||
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s<em class='label-action'>%s</em>%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 class='label-action'>%s</em>%s<span class='label-name'>%s</span></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<span class='label-action'>%s</span>%s<span class='label-name'>%s</span></span>";
|
||||
$lang->block->cannotPlaceInLeft = 'Impossible de placer le bloc à gauche.';
|
||||
$lang->block->cannotPlaceInRight = 'Impossible de placer le bloc à droite.';
|
||||
|
||||
|
||||
@@ -94,8 +94,8 @@ $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 class='label-action'>%s</em>%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 class='label-action'>%s</em>%s<span class='label-name'>%s</span></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<span class='label-action'>%s</span>%s<span class='label-name'>%s</span></span>";
|
||||
$lang->block->cannotPlaceInLeft = '此区块无法放置在左侧。';
|
||||
$lang->block->cannotPlaceInRight = '此区块无法放置在右侧。';
|
||||
|
||||
@@ -303,7 +303,7 @@ $lang->block->default['full']['my']['7']['block'] = 'recentproject';
|
||||
$lang->block->default['full']['my']['7']['source'] = 'project';
|
||||
$lang->block->default['full']['my']['7']['grid'] = 8;
|
||||
|
||||
$lang->block->default['full']['my']['8']['title'] = '待处理';
|
||||
$lang->block->default['full']['my']['8']['title'] = '我的待处理';
|
||||
$lang->block->default['full']['my']['8']['block'] = 'assigntome';
|
||||
$lang->block->default['full']['my']['8']['source'] = '';
|
||||
$lang->block->default['full']['my']['8']['grid'] = 8;
|
||||
|
||||
@@ -38,7 +38,7 @@ $useGuest = $this->app->user->account == 'guest';
|
||||
<div class='panel-title'><?php echo $block->title;?></div>
|
||||
<?php endif;?>
|
||||
<nav class='panel-actions nav nav-default'>
|
||||
<?php if(!empty($block->moreLink)) echo '<li>' . html::a($block->moreLink, '<i class="icon icon-more"></i>', '', "title='{$lang->more}'") . '</li>'; ?>
|
||||
<?php if(!empty($block->moreLink)) echo '<li>' . html::a($block->moreLink, strtoupper($lang->more), '', "title='{$lang->more}'") . '</li>'; ?>
|
||||
<li class='dropdown'>
|
||||
<a href='javascript:;' data-toggle='dropdown' class='panel-action'><i class='icon icon-ellipsis-v'></i></a>
|
||||
<ul class='dropdown-menu pull-right'>
|
||||
@@ -73,7 +73,7 @@ $useGuest = $this->app->user->account == 'guest';
|
||||
<div class='panel-title'><?php echo $block->title;?></div>
|
||||
<?php endif;?>
|
||||
<nav class='panel-actions nav nav-default'>
|
||||
<?php if(!empty($block->moreLink)) echo '<li>' . html::a($block->moreLink, '<i class="icon icon-more"></i>', '', "title='{$lang->more}'") . '</li>';?>
|
||||
<?php if(!empty($block->moreLink)) echo '<li>' . html::a($block->moreLink, strtoupper($lang->more), '', "title='{$lang->more}'") . '</li>';?>
|
||||
<li class='dropdown'>
|
||||
<a href='javascript:;' data-toggle='dropdown' class='panel-action'><i class='icon icon-ellipsis-v'></i></a>
|
||||
<ul class='dropdown-menu pull-right'>
|
||||
|
||||
@@ -4,13 +4,15 @@
|
||||
<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;}
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.block-dynamic .label-action {padding: 0 6px;}
|
||||
.block-dynamic .label-action + a {padding-left: 6px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
</style>
|
||||
<div class='panel-body scrollbar-hover'>
|
||||
<ul class="timeline timeline-tag-left no-margin">
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*/
|
||||
?>
|
||||
<style>
|
||||
#assigntomeBlock .nav>li>a {padding: 8px 12px;}
|
||||
#assigntomeBlock .nav > li:not(.active) > a {padding: 8px 12px; color: #838A9D;}
|
||||
</style>
|
||||
<div id='assigntomeBlock'>
|
||||
<ul class="nav nav-secondary">
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
*/
|
||||
?>
|
||||
<style>
|
||||
.block-overview .status-list li + li {margin-top: 5px;}
|
||||
.block-overview .status-list li > strong {font-size: 16px;}
|
||||
.progress-pie {position: relative;}
|
||||
.progress-pie .progress-info {position: absolute; width: 100%; height: 100%; left: 0; top: 0; text-align: center; padding-top: 25px;}
|
||||
.progress-pie .progress-info > small {display: block; color: #A6AAB8; line-height: 14px;}
|
||||
.progress-pie .progress-info > strong {display: block; font-size: 36px; line-height: 40px;}
|
||||
.block-overview .status-list li + li {margin-top: 5px;}
|
||||
.block-overview .status-list li > strong {font-size: 16px;}
|
||||
.progress-pie {position: relative;}
|
||||
.progress-pie .progress-info {position: absolute; width: 100%; height: 100%; left: 0; top: 0; text-align: center; padding-top: 25px;}
|
||||
.progress-pie .progress-info > small {display: block; color: #A6AAB8; line-height: 14px;}
|
||||
.progress-pie .progress-info > strong {display: block; font-size: 32px; line-height: 40px;}
|
||||
</style>
|
||||
<div class="panel-body table-row">
|
||||
<div class="col-6 text-middle text-center">
|
||||
@@ -24,14 +24,14 @@
|
||||
<canvas width="100" height="100" style="width: 100px; height: 100px;"></canvas>
|
||||
<div class="progress-info">
|
||||
<small><?php echo $lang->product->all;?></small>
|
||||
<strong><?php echo empty($total) ? 0 : html::a($this->createLink('product', 'all', "browseType=all"), $total);?></strong>
|
||||
<strong class='text-primary'><?php echo empty($total) ? 0 : html::a($this->createLink('product', 'all', "browseType=all"), $total, '', "class='text-primary'");?></strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 text-middle">
|
||||
<ul class="list-unstyled status-list">
|
||||
<li><span class="status-product status-unclosed"><?php echo $lang->product->statusList['normal'];?></span> <strong><?php echo empty($normal) ? 0 : html::a($this->createLink('product', 'all', "browseType=noclosed"), $normal);?></strong></li>
|
||||
<li><span class="status-product status-closed"><?php echo $lang->product->statusList['closed'];?></span> <strong><?php echo empty($closed) ? 0 : html::a($this->createLink('product', 'all', "browseType=closed"), $closed);?></strong></li>
|
||||
<li><span class="status-product status-unclosed"><?php echo $lang->product->statusList['normal'];?></span> <strong class='text-primary'><?php echo empty($normal) ? 0 : html::a($this->createLink('product', 'all', "browseType=noclosed"), $normal, '', "class='text-primary'");?></strong></li>
|
||||
<li><span class="status-product status-closed"><?php echo $lang->product->statusList['closed'];?></span> <strong class='text-primary'><?php echo empty($closed) ? 0 : html::a($this->createLink('product', 'all', "browseType=closed"), $closed, '', "class='text-primary'");?></strong></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -33,8 +33,8 @@ html[lang="en"] .product-info .type-info {color: #A6AAB8; text-align: center; po
|
||||
.block-statistic .panel-body {padding-top: 0;}
|
||||
.block-statistic .panel-body {padding-top: 0;}
|
||||
.block-statistic .tile {margin-bottom: 30px;}
|
||||
.block-statistic .tile-title {font-size: 18px; color: #A6AAB8;}
|
||||
.block-statistic .tile-amount {font-size: 48px; margin-bottom: 10px;}
|
||||
.block-statistic .tile-title {font-size: 18px; margin-bottom: 10px;}
|
||||
.block-statistic .tile-amount {font-size: 44px; margin-bottom: 10px;}
|
||||
.block-statistic .col-nav {border-right: 1px solid #EBF2FB; width: 220px; padding: 0;}
|
||||
.block-statistic .nav-secondary > li {position: relative}
|
||||
.block-statistic .nav-secondary > li:hover {background: #f5f5f5;}
|
||||
@@ -126,10 +126,10 @@ $(function()
|
||||
<div class="tile">
|
||||
<div class="tile-title"><?php echo $lang->SRCommon;?></div>
|
||||
<?php if($product->stories):?>
|
||||
<div class="tile-amount"><?php echo array_sum($product->stories);?></div>
|
||||
<div class="tile-amount text-primary"><?php echo array_sum($product->stories);?></div>
|
||||
<?php common::printLink('product', 'browse', "productID={$product->id}&branch=&type=allstory", $lang->story->viewAll . '<span class="label label-badge label-icon"><i class="icon icon-arrow-right"></i></span>', '', 'class="btn btn-primary btn-circle btn-icon-right btn-sm" data-app="product"');?>
|
||||
<?php else:?>
|
||||
<div class="tile-amount">0</div>
|
||||
<div class="tile-amount text-primary">0</div>
|
||||
<?php common::printLink('story', 'create', "productID={$product->id}", '<span class="label label-badge label-icon"><i class="icon icon-plus"></i></span>' . $lang->story->create, '', 'class="btn btn-primary btn-circle btn-icon-left btn-sm" data-app="product"');?>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
|
||||
@@ -5,14 +5,16 @@
|
||||
.timeline > li .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; max-height: 20px; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
|
||||
.panel-body {padding-top: 0;}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline >li:before {left: -26px;}
|
||||
.timeline >li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.block-projectdynamic .label-action {padding: 0 6px;}
|
||||
.block-projectdynamic .label-action + a {padding-left: 6px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
</style>
|
||||
<div class='panel-body scrollbar-hover'>
|
||||
<ul class="timeline timeline-tag-left no-margin">
|
||||
|
||||
@@ -28,12 +28,13 @@
|
||||
<table class='table table-borderless table-hover table-fixed table-fixed-head tablesorter block-stories <?php if(!$longBlock) echo 'block-sm'?>'>
|
||||
<thead>
|
||||
<tr>
|
||||
<?php $title = str_replace($lang->SRCommon, $lang->URCommon, $lang->story->title);?>
|
||||
<th class="c-id"><?php echo $lang->idAB?></th>
|
||||
<th class="c-name"><?php echo $title;?></th>
|
||||
<th class="c-pri"><?php echo $lang->priAB?></th>
|
||||
<th class="c-name"><?php echo $lang->URCommon;?></th>
|
||||
<?php if($longBlock):?>
|
||||
<th class='c-estimate'><?php echo $lang->story->estimateAB;?></th>
|
||||
<th class="c-status"><?php echo $lang->statusAB;?></th>
|
||||
<th class='c-estimate'><?php echo $lang->story->estimateAB;?></th>
|
||||
<th class='c-stage'><?php echo $lang->story->stageAB;?></th>
|
||||
<?php endif;?>
|
||||
</tr>
|
||||
@@ -46,14 +47,14 @@
|
||||
?>
|
||||
<tr <?php echo $appid?>>
|
||||
<td class="c-id-xs"><?php echo sprintf('%03d', $story->id);?></td>
|
||||
<td class="c-pri"><span class="label-pri label-pri-<?php echo $story->pri?>" title="<?php echo zget($lang->story->priList, $story->pri, $story->pri);?>"><?php echo zget($lang->story->priList, $story->pri, $story->pri)?></span></td>
|
||||
<td class="c-name" style='color: <?php echo $story->color?>' title='<?php echo $story->title?>'><?php echo html::a($viewLink, $story->title);?></td>
|
||||
<td class="c-pri"><span class="label-pri label-pri-<?php echo $story->pri?>" title="<?php echo zget($lang->story->priList, $story->pri, $story->pri);?>"><?php echo zget($lang->story->priList, $story->pri, $story->pri)?></span></td>
|
||||
<?php if($longBlock):?>
|
||||
<td class='c-estimate text-center' title="<?php echo $story->estimate . ' ' . $lang->hourCommon;?>"><?php echo $story->estimate . $config->hourUnit?></td>
|
||||
<?php $status = $this->processStatus('story', $story);?>
|
||||
<td class='c-status' title='<?php echo $status;?>'>
|
||||
<span class="status-story status-<?php echo $story->status?>"><?php echo $status;?></span>
|
||||
</td>
|
||||
<td class='c-estimate text-center' title="<?php echo $story->estimate . ' ' . $lang->hourCommon;?>"><?php echo $story->estimate . $config->hourUnit?></td>
|
||||
<td class='c-stage'>
|
||||
<span class='story-stage-<?php echo $story->stage?>'>
|
||||
<?php echo zget($lang->story->stageList, $story->stage, $story->stage);?>
|
||||
|
||||
@@ -29,11 +29,11 @@
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="c-id"><?php echo $lang->idAB?></th>
|
||||
<th class="c-name"><?php echo $lang->story->title;?></th>
|
||||
<th class="c-pri"><?php echo $lang->priAB?></th>
|
||||
<th class="c-name"><?php echo $lang->SRCommon;?></th>
|
||||
<?php if($longBlock):?>
|
||||
<th class='c-estimate'><?php echo $lang->story->estimateAB;?></th>
|
||||
<th class="c-status"><?php echo $lang->statusAB;?></th>
|
||||
<th class='c-estimate'><?php echo $lang->story->estimateAB;?></th>
|
||||
<th class='c-stage'><?php echo $lang->story->stageAB;?></th>
|
||||
<?php endif;?>
|
||||
</tr>
|
||||
@@ -46,14 +46,14 @@
|
||||
?>
|
||||
<tr <?php echo $appid?>>
|
||||
<td class="c-id-xs"><?php echo sprintf('%03d', $story->id);?></td>
|
||||
<td class="c-pri"><span class="label-pri label-pri-<?php echo $story->pri?>" title="<?php echo zget($lang->story->priList, $story->pri, $story->pri);?>"><?php echo zget($lang->story->priList, $story->pri, $story->pri)?></span></td>
|
||||
<td class="c-name" style='color: <?php echo $story->color?>' title='<?php echo $story->title?>'><?php echo html::a($viewLink, $story->title);?></td>
|
||||
<td class="c-pri"><span class="label-pri label-pri-<?php echo $story->pri?>" title="<?php echo zget($lang->story->priList, $story->pri, $story->pri);?>"><?php echo zget($lang->story->priList, $story->pri, $story->pri)?></span></td>
|
||||
<?php if($longBlock):?>
|
||||
<td class='c-estimate text-center' title="<?php echo $story->estimate . ' ' . $lang->hourCommon;?>"><?php echo $story->estimate . $config->hourUnit?></td>
|
||||
<?php $status = $this->processStatus('story', $story);?>
|
||||
<td class='c-status' title='<?php echo $status;?>'>
|
||||
<span class="status-story status-<?php echo $story->status?>"><?php echo $status;?></span>
|
||||
</td>
|
||||
<td class='c-estimate text-center' title="<?php echo $story->estimate . ' ' . $lang->hourCommon;?>"><?php echo $story->estimate . $config->hourUnit?></td>
|
||||
<td class='c-stage'>
|
||||
<span class='story-stage-<?php echo $story->stage?>'>
|
||||
<?php echo zget($lang->story->stageList, $story->stage, $story->stage);?>
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
<thead>
|
||||
<tr>
|
||||
<th class='c-id'><?php echo $lang->idAB;?></th>
|
||||
<th class='c-pri <?php if($longBlock) echo "c-pri-long"?>'><?php echo $lang->priAB?></th>
|
||||
<th class='c-name'> <?php echo $lang->task->name;?></th>
|
||||
<th class='c-pri <?php if($longBlock) echo "c-pri-long"?>'><?php echo $lang->priAB?></th>
|
||||
<th class='c-status'><?php echo $lang->statusAB;?></th>
|
||||
<?php if($longBlock):?>
|
||||
<th class='c-deadline'><?php echo $lang->task->deadlineAB;?></th>
|
||||
<th class='c-estimate'><?php echo $lang->task->estimateAB;?></th>
|
||||
<th class='c-deadline'><?php echo $lang->task->deadline;?></th>
|
||||
<?php endif;?>
|
||||
<th class='c-status text-center'><?php echo $lang->statusAB;?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -43,20 +43,20 @@
|
||||
?>
|
||||
<tr>
|
||||
<td class='c-id-xs'><?php echo sprintf('%03d', $task->id);?></td>
|
||||
<td class='c-pri <?php if($longBlock) echo "c-pri-long"?>'><span class='label-pri label-pri-<?php echo $task->pri;?>' title='<?php echo zget($lang->task->priList, $task->pri, $task->pri)?>'><?php echo zget($lang->task->priList, $task->pri, $task->pri)?></span></td>
|
||||
<?php
|
||||
$onlybody = $task->executionType == 'kanban' ? true : '';
|
||||
$class = $task->executionType == 'kanban' ? "class='iframe' data-toggle='modal'" : '';
|
||||
?>
|
||||
<td class='c-name' style='color: <?php echo $task->color?>' title='<?php echo $task->name?>'><?php echo html::a($this->createLink('task', 'view', "taskID=$task->id", '', $onlybody, $task->project), $task->name, null, "$class data-width='80%'")?></td>
|
||||
<?php if($longBlock):?>
|
||||
<td class='c-estimate text-center' title="<?php echo $task->estimate . ' ' . $lang->execution->workHour;?>"><?php echo $task->estimate . $lang->execution->workHourUnit;?></td>
|
||||
<td class='c-deadline'><?php if(substr($task->deadline, 0, 4) > 0) echo $task->deadline;?></td>
|
||||
<?php endif;?>
|
||||
<td class='c-pri <?php if($longBlock) echo "c-pri-long"?>'><span class='label-pri label-pri-<?php echo $task->pri;?>' title='<?php echo zget($lang->task->priList, $task->pri)?>'><?php echo zget($lang->task->priList, $task->pri)?></span></td>
|
||||
<?php $status = $this->processStatus('task', $task);?>
|
||||
<td class='c-status' title='<?php echo $status;?>'>
|
||||
<span class="status-task status-<?php echo $task->status?>"><?php echo $status;?></span>
|
||||
</td>
|
||||
<?php if($longBlock):?>
|
||||
<td class='c-deadline'><?php if(substr($task->deadline, 0, 4) > 0) echo $task->deadline;?></td>
|
||||
<td class='c-estimate text-center' title="<?php echo $task->estimate . ' ' . $lang->execution->workHour;?>"><?php echo $task->estimate . $lang->execution->workHourUnit;?></td>
|
||||
<?php endif;?>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
|
||||
@@ -39,11 +39,14 @@ if(!$selfCall) die(include('./todolist.html.php'));
|
||||
.block-todoes .label-todo {width: 50px; min-width: 50px!important; border: none; color: #43A047;}
|
||||
.block-todoes .todo-title.text-ellipsis {text-overflow: unset;}
|
||||
[lang^='en'] .block-todoes .todo-pri {width: 60px; min-width: 60px;}
|
||||
.block-todoes .todoes-input .todo-form-trigger > .btn-info {width: 100%; opacity: 0.8; margin-left: 10px;}
|
||||
</style>
|
||||
<div class='block-todoes'>
|
||||
<div class='panel-body'>
|
||||
<div class="todoes-input">
|
||||
<div class="todo-form-trigger"><input type="text" placeholder="<?php echo $lang->todo->lblClickCreate?>" autocomplete="off" class="form-control"></div>
|
||||
<div class="todo-form-trigger">
|
||||
<button class='btn btn-info'><i class='icon icon-plus'></i> <?php echo $lang->todo->create;?></button>
|
||||
</div>
|
||||
<form class="form-horizontal todoes-form layer not-watch" method='post' target='hiddenwin' action='<?php echo $this->createLink('todo', 'create', 'date=today&userID=&from=block');?>'>
|
||||
<h3><?php echo $lang->todo->create;?></h3>
|
||||
<?php $leftWidth = common::checkNotCN() ? 'col-sm-3' : 'col-sm-2';?>
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
<div class="row tiles">
|
||||
<div class="col tile">
|
||||
<div class="tile-title"><?php echo $lang->block->myTask?></div>
|
||||
<div class="tile-amount"><?php echo empty($tasks) ? 0 : html::a($this->createLink('my', 'work', 'mode=task'), (int)$tasks);?></div>
|
||||
<div class="tile-amount text-primary"><?php echo empty($tasks) ? 0 : html::a($this->createLink('my', 'work', 'mode=task'), (int)$tasks, '', "class='text-primary'");?></div>
|
||||
<?php if(!empty($delay['task'])):?>
|
||||
<div class="tile-info">
|
||||
<span class="label label-danger label-outline welcome-label"><?php echo $lang->block->delayed . ' ' . $delay['task']?></span>
|
||||
@@ -68,7 +68,7 @@
|
||||
</div>
|
||||
<div class="col tile">
|
||||
<div class="tile-title"><?php echo $lang->block->myBug?></div>
|
||||
<div class="tile-amount"><?php echo empty($bugs) ? 0 : html::a($this->createLink('my', 'work', 'mode=bug'), (int)$bugs);?></div>
|
||||
<div class="tile-amount text-primary"><?php echo empty($bugs) ? 0 : html::a($this->createLink('my', 'work', 'mode=bug'), (int)$bugs, '', "class='text-primary'");?></div>
|
||||
<?php if(!empty($delay['bug'])):?>
|
||||
<div class="tile-info">
|
||||
<span class="label label-danger label-outline welcome-label"><?php echo $lang->block->delayed . ' ' . $delay['bug']?></span>
|
||||
@@ -77,7 +77,7 @@
|
||||
</div>
|
||||
<div class="col tile">
|
||||
<div class="tile-title"><?php echo $lang->block->myStory?></div>
|
||||
<div class="tile-amount"><?php echo empty($stories) ? 0 : html::a($this->createLink('my', 'work', 'mode=story'), (int)$stories);?></div>
|
||||
<div class="tile-amount text-primary"><?php echo empty($stories) ? 0 : html::a($this->createLink('my', 'work', 'mode=story'), (int)$stories, '', "class='text-primary'");?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -22,11 +22,13 @@
|
||||
.c-user, .c-order {width: 96px !important; overflow: unset;}
|
||||
.c-date {width: 200px;}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -20,11 +20,13 @@
|
||||
.dynamic.collapsed .timeline > li + li {display: none;}
|
||||
.dynamic.collapsed .dynamic-btn > .icon:before {content: '\f0d8';}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -12,14 +12,16 @@
|
||||
.block-dynamic .panel-body {height: 230px; overflow: auto; position: relative;}
|
||||
.block-team div.col-xs-6 {white-space: nowrap; overflow: hidden;}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.block-dynamic .label-action {padding: 0 6px;}
|
||||
.block-dynamic .label-action + a {padding-left: 6px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
#cfdChart {margin-top: -20px;}
|
||||
|
||||
|
||||
@@ -19,11 +19,13 @@
|
||||
.dynamic.collapsed .timeline > li + li {display: none;}
|
||||
.dynamic.collapsed .dynamic-btn > .icon:before {content: '\f0d8';}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -3,11 +3,13 @@
|
||||
.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;}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.block-dynamic .label-action {padding: 0 6px;}
|
||||
.block-dynamic .label-action + a {padding-left: 6px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -20,11 +20,13 @@
|
||||
.dynamic.collapsed .timeline > li + li {display: none;}
|
||||
.dynamic.collapsed .dynamic-btn > .icon:before {content: '\f0d8';}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline >li.active:before {left: -30px;}
|
||||
.timeline >li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
.table td.content div {height: 25px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; float: left; max-width: calc(100% - 20px);}
|
||||
.table td.content .more {height: 25px; float: left;}
|
||||
.table td.content .more {position: absolute; right: 16px;}
|
||||
.table td.content .more .icon {color: #838a9d;}
|
||||
td.c-branch {overflow: hidden; text-align: left !important; text-overflow: ellipsis; white-space: nowrap;}
|
||||
|
||||
.table-children {border-left: 2px solid #cbd0db; border-right: 2px solid #cbd0db;}
|
||||
@@ -8,10 +9,10 @@ td.c-branch {overflow: hidden; text-align: left !important; text-overflow: ellip
|
||||
.table td.has-child > a {max-width: 90%; max-width: calc(100% - 30px); display: inline-block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.table td.has-child > .plan-name > .task-toggle {color: #838a9d; position: relative; top: 1px; line-height: 16px;}
|
||||
.table td.has-child > .plan-name > .task-toggle:hover {color: #006af1; cursor: pointer;}
|
||||
.table td.has-child > .plan-name > .task-toggle > .icon {font-size: 16px; display: inline-block; transition: transform .2s; -ms-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -o-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); transform: rotate(-90deg);}
|
||||
.table td.has-child > .plan-name > .task-toggle > .icon, .table td.content .more .icon {font-size: 16px; display: inline-block; transition: transform .2s; -ms-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -o-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); transform: rotate(-90deg);}
|
||||
.table td.has-child > .plan-name > .task-toggle > .icon:before {text-align: left;}
|
||||
.table td.has-child > .plan-name > .task-toggle.collapsed {top: 0;}
|
||||
.table td.has-child > .plan-name > .task-toggle.collapsed > .icon {-ms-transform: rotate(90deg); -moz-transform: rotate(90deg); -o-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg);}
|
||||
.table td.has-child > .plan-name > .task-toggle.collapsed > .icon, .table td.content .more .icon.rotate-down {-ms-transform: rotate(90deg); -moz-transform: rotate(90deg); -o-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg);}
|
||||
.main-table tbody > tr.table-children > td:first-child::before {width: 3px;}
|
||||
@-moz-document url-prefix() {.main-table tbody > tr.table-children > td:first-child::before {width: 4px;};}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ $(function()
|
||||
var content = $content.find('div').html();
|
||||
if(content.indexOf('<br') >= 0 || content.indexOf('<img') >= 0)
|
||||
{
|
||||
$content.append("<a href='###' class='more'><i class='icon icon-chevron-double-down'></i></a>");
|
||||
$content.append("<a href='###' class='more'><i class='icon icon-angle-right'></i></a>");
|
||||
}
|
||||
});
|
||||
|
||||
@@ -192,14 +192,14 @@ $(document).on('click', 'td.content .more', function(e)
|
||||
$toggle.removeClass('open');
|
||||
$toggle.closest('.content').find('div').css('height', '25px');
|
||||
$toggle.css('padding-top', 0);
|
||||
$toggle.find('i').removeClass('icon-chevron-double-up').addClass('icon-chevron-double-down');
|
||||
$toggle.find('i').removeClass('rotate-down');
|
||||
}
|
||||
else
|
||||
{
|
||||
$toggle.addClass('open');
|
||||
$toggle.closest('.content').find('div').css('height', 'auto');
|
||||
$toggle.css('padding-top', ($toggle.closest('.content').find('div').height() - $toggle.height()) / 2);
|
||||
$toggle.find('i').removeClass('icon-chevron-double-down').addClass('icon-chevron-double-up');
|
||||
$toggle.find('i').addClass('rotate-down');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -20,11 +20,13 @@
|
||||
.dynamic.collapsed .timeline > li + li {display: none;}
|
||||
.dynamic.collapsed .dynamic-btn > .icon:before {content: '\f0d8';}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -2,11 +2,13 @@
|
||||
.block-team div.col-xs-6 {white-space: nowrap; overflow: hidden;}
|
||||
.cell .detail .row-grid {display: block;}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.block-dynamic .label-action {padding: 0 6px;}
|
||||
.block-dynamic .label-action + a {padding-left: 6px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline >li.active:before {left: -30px;}
|
||||
.timeline >li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
@@ -19,11 +19,13 @@
|
||||
.dynamic.collapsed .timeline > li + li {display: none;}
|
||||
.dynamic.collapsed .dynamic-btn > .icon:before {content: '\f0d8';}
|
||||
|
||||
.timeline>li:before {left: -26px;}
|
||||
.timeline>li+li:after {left: -23px;}
|
||||
.timeline > li:before {left: -26px;}
|
||||
.timeline > li + li:after {left: -23px;}
|
||||
.timeline-text {margin-left: -18px;}
|
||||
.label-action {padding: 0 4px;}
|
||||
.label-id {margin-left: 4px;}
|
||||
.timeline>li.active:before {left: -30px;}
|
||||
.timeline>li>div:after {left: -27px;}
|
||||
.timeline > li.active:before {left: -30px;}
|
||||
.timeline > li > div:after {left: -27px;}
|
||||
.timeline .timeline-text {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.timeline > li > div > .timeline-tag, .timeline > li > div > .timeline-text > .label-action {color: #838A9D;}
|
||||
.timeline > li > div > .timeline-text > a {color: #313C52;}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -154,6 +154,8 @@ td.delayed > span {display: inline-block; height: 20px; line-height: 18px; backg
|
||||
.table.has-sort-head thead > tr > th:last-child {padding-right: 8px;}
|
||||
tbody tr td.c-actions .dividing-line {width: 1px; height: 16px; display: inline-block; vertical-align: middle; background: #F4F5F7; margin: 0 4px 0 0;}
|
||||
|
||||
.panel-actions > li > a {color: #838A9D;}
|
||||
|
||||
.label.label-outline.status-wait {color: #313C52; border-color: #313C52;}
|
||||
.label.label-outline.status-doing {color: #FF6F42; border-color: #FF6F42;}
|
||||
.label.label-outline.status-suspended {color: #B89664; border-color: #B89664;}
|
||||
@@ -162,19 +164,20 @@ tbody tr td.c-actions .dividing-line {width: 1px; height: 16px; display: inline-
|
||||
.status-draft {color: #8166EE;}
|
||||
.status-clarify {color: #8166EE;}
|
||||
.status-testtask.status-blocked {left: 0;}
|
||||
.status-testcase.status-wait {color: #18A6FD;}
|
||||
.status-done .label-dot {background-color: #0DBB7D;}
|
||||
.status-reviewing, .status-noreview {color: #18A6FD;}
|
||||
.status-doing .label-dot {background-color: #FF6F42;}
|
||||
.status-pause .label-dot {background-color: #B89664;}
|
||||
.status-draft .label-dot {background-color: #8166EE;}
|
||||
.status-cancel .label-dot {background-color: #B89664;}
|
||||
.status-cancel .label-dot {background-color: #838A9D;}
|
||||
.status-closed .label-dot {background-color: #9EA3B0;}
|
||||
.status-changing .label-dot {background-color: #FB2B2B;}
|
||||
.status-reviewing .label-dot {background-color: #18A6FD;}
|
||||
.status-cancel, .status-investigate, .status-canceled {color: #838A9D;}
|
||||
.status-active .label-dot, .status-wait .label-dot {background-color: #313C52;}
|
||||
.status-doing, .status-commenting, .status-checking, .status-confirmed {color: #FF6F42;}
|
||||
.status-closed, #workflowTable td.text-center.text-mutedi, .status-testtask.status-done {color: #9EA3B0;}
|
||||
.status-closed, #workflowTable td.text-center.text-muted, .status-testtask.status-done {color: #9EA3B0;}
|
||||
.status-suspended, .status-pause, .status-blocked, .status-hangup, .result-testcase.blocked, .c-lastRunResult .result-blocked {color: #B89664;}
|
||||
.status-done, .status-resolved, .status-replied, .status-checked, #workflowTable td.text-success, .result-testcase.pass, .c-lastRunResult .result-pass {color: #0DBB7D;}
|
||||
.status-changing, .status-active.status-risk, .result-testcase.fail, .c-lastRunResult .result-fail, .severity-issue.severity-1, .c-severity .severity-1, .status-changed {color: #FB2B2B;}
|
||||
@@ -192,14 +195,20 @@ tbody tr td.c-actions .dividing-line {width: 1px; height: 16px; display: inline-
|
||||
.label-pri-4, .label-pri-5, .label-selector > .label-pri[data-value="4"], .label-selector > .label-pri[data-value="5"] {color: #9EA3B0; border-color: #9EA3B0;}
|
||||
|
||||
.label-severity:before {content: '';}
|
||||
.c-severity > .label-severity {height: 28px;}
|
||||
.c-severity > .label-severity:after {top: 9px;}
|
||||
.c-severity > .label-severity {background-position: 0px -132px;}
|
||||
.label-selector > .label.label-severity, .label-selector > .label.label-severity.active, .c-severity > .label-severity, .pri-text > .label-severity {background: url('images/severity/severity-sprite.png') no-repeat; background-size:cover; border: none; height: 26px; line-height: 32px; background-position: 0px -165px; color: #9EA3B0;}
|
||||
.label-selector > .label.label-severity[data-severity="1"], .label-selector > .label.label-severity[data-value="1"], .c-severity > .label-severity[data-severity="1"] {color: #FB2B2B; background-position: 0px -1px;}
|
||||
.label-selector > .label.label-severity[data-severity="2"], .label-selector > .label.label-severity[data-value="2"], .c-severity > .label-severity[data-severity="2"] {color: #FF8058; background-position: 0px -41px;}
|
||||
.label-selector > .label.label-severity[data-severity="3"], .label-selector > .label.label-severity[data-value="3"], .c-severity > .label-severity[data-severity="3"] {color: #FAAE1A; background-position: 0px -80px;}
|
||||
.label-selector > .label.label-severity[data-severity="4"], .label-selector > .label.label-severity[data-value="4"], .c-severity > .label-severity[data-severity="4"] {color: #B89664; background-position: 0px -123px;}
|
||||
.label-selector > .label.label-severity[data-severity="1"], .label-selector > .label.label-severity[data-value="1"] {color: #FB2B2B; background-position: 0px -1px;}
|
||||
.label-selector > .label.label-severity[data-severity="2"], .label-selector > .label.label-severity[data-value="2"] {color: #FF8058; background-position: 0px -41px;}
|
||||
.label-selector > .label.label-severity[data-severity="3"], .label-selector > .label.label-severity[data-value="3"] {color: #FAAE1A; background-position: 0px -80px;}
|
||||
.label-selector > .label.label-severity[data-severity="4"], .label-selector > .label.label-severity[data-value="4"] {color: #B89664; background-position: 0px -123px;}
|
||||
|
||||
.c-severity > .label-severity:after {top: 9px;}
|
||||
.kanban-item-bug .label-severity:after, #legendBasicInfo .label-severity:after {top: 8px;}
|
||||
.kanban-item-bug .label-severity, #legendBasicInfo .label-severity, .c-severity > .label-severity {height: 28px;}
|
||||
.kanban-item-bug .label-severity, #legendBasicInfo .label-severity, .c-severity > .label-severity {background: url('images/severity/severity-sprite.png') no-repeat; background-size:cover; border: none; height: 26px; line-height: 32px; background-position: 2px -136px; color: #9EA3B0; background-size: 83%;}
|
||||
.kanban-item-bug .label-severity[data-severity="1"], #legendBasicInfo .label-severity[data-severity="1"], .c-severity > .label-severity[data-severity="1"] {color: #FB2B2B; background-position: 2px 1px;}
|
||||
.kanban-item-bug .label-severity[data-severity="2"], #legendBasicInfo .label-severity[data-severity="2"], .c-severity > .label-severity[data-severity="2"] {color: #FF8058; background-position: 2px -32px;}
|
||||
.kanban-item-bug .label-severity[data-severity="3"], #legendBasicInfo .label-severity[data-severity="3"], .c-severity > .label-severity[data-severity="3"] {color: #FAAE1A; background-position: 2px -65px;}
|
||||
.kanban-item-bug .label-severity[data-severity="4"], #legendBasicInfo .label-severity[data-severity="4"], .c-severity > .label-severity[data-severity="4"] {color: #B89664; background-position: 2px -101px;}
|
||||
|
||||
.pri-text > .label-pri, .pri-text > .label-severity {height: 20px;}
|
||||
.pri-text > .label-severity {background-size: 80%; background-position: 2px -132px;}
|
||||
@@ -207,3 +216,7 @@ tbody tr td.c-actions .dividing-line {width: 1px; height: 16px; display: inline-
|
||||
.pri-text > .label-severity[data-severity="2"] {color: #FF8058; background-position: 2px -33px;}
|
||||
.pri-text > .label-severity[data-severity="3"] {color: #FAAE1A; background-position: 2px -64px;}
|
||||
.pri-text > .label-severity[data-severity="4"] {color: #B89664; background-position: 2px -99px;}
|
||||
|
||||
.flow-block .footerbar span.label-success {background-color: #0DBB7D;}
|
||||
.flow-block .footerbar span.label-default {background-color: #9EA3B0;}
|
||||
.flow-block .footerbar span.label-warning {background-color: #313C52;}
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user