Merge branch 'master' of github.com:easysoft/zentaopms

This commit is contained in:
wangyidong
2016-12-02 09:21:02 +08:00
35 changed files with 126 additions and 116 deletions
-2
View File
@@ -13,5 +13,3 @@
.dropdown-list > li > a {display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 1.53846154; color: #141414; white-space: nowrap;}
.dropdown-list > li > a:hover,
.dropdown-list > li > a:focus {color: #1a4f85;text-decoration: none;background-color: #ddd;}
#createActionMenu .btn{color: #fff!important; text-shadow: 0 -1px 0 rgba(0,0,0,.2)!important; background-color: #d2322d!important; border-color: #bd2d29!important;}
+3 -3
View File
@@ -67,16 +67,16 @@ js::set('bugBrowseType', ($browseType == 'bymodule' and $this->session->bugBrows
if(commonModel::isTutorialMode())
{
$wizardParams = helper::safe64Encode("productID=$productID&branch=$branch&extra=moduleID=$moduleID");
echo html::a($this->createLink('tutorial', 'wizard', "module=bug&method=create&params=$wizardParams"), "<i class='icon-plus'></i>" . $lang->bug->create, '', "class='btn btn-bug-create'");
echo html::a($this->createLink('tutorial', 'wizard', "module=bug&method=create&params=$wizardParams"), "<i class='icon-plus'></i>" . $lang->bug->create, '', "class='btn btn-primary btn-bug-create'");
}
else
{
$misc = common::hasPriv('bug', 'create') ? "class='btn'" : "class='btn disabled'";
$misc = common::hasPriv('bug', 'create') ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('bug', 'create') ? $this->createLink('bug', 'create', "productID=$productID&branch=$branch&extra=moduleID=$moduleID") : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->bug->create, '', $misc);
}
?>
<button type='button' class='btn dropdown-toggle' data-toggle='dropdown'>
<button type='button' class='btn btn-primary dropdown-toggle' data-toggle='dropdown'>
<span class='caret'></span>
</button>
<ul class='dropdown-menu'>
+7 -7
View File
@@ -157,13 +157,13 @@ $lang->install->ranzhi->desc = <<<EOD
<li>论坛博客,动态消息</li>
</ul>
EOD;
$lang->install->yidou = new stdclass();
$lang->install->yidou->name = '亿斗进销存管理运营系统';
$lang->install->yidou->desc = <<<EOD
$lang->install->zdoo = new stdclass();
$lang->install->zdoo->name = '可深度定制的云端一体化协作平台';
$lang->install->zdoo->desc = <<<EOD
<ul>
<li>销售订单处理,信息及时反馈</li>
<li>采销业务状况,时时查询跟进</li>
<li>仓储配货送货,轻松便利快捷</li>
<li>财务收款付款,简单实用准确</li>
<li>安全、稳定、高效</li>
<li>以容器为交付单位</li>
<li>租户隔离,可深度定制</li>
<li>提供一体化管理平台</li>
</ul>
EOD;
+4 -4
View File
@@ -59,11 +59,11 @@
</a>
</div>
<div class='col-md-4'>
<a class="card ad" href="http://www.yidouio.com" target="_blank">
<div class="img-wrapper" style="background-image:url(<?php echo $defaultTheme . 'images/main/yidou.png'?>)"><img src="<?php echo $defaultTheme . 'images/main/yidou.png'?>" alt=""></div>
<a class="card ad" href="http://www.zdoo.com" target="_blank">
<div class="img-wrapper" style="background-image:url(<?php echo $defaultTheme . 'images/main/zdoo.png'?>)"><img src="<?php echo $defaultTheme . 'images/main/zdoo.png'?>" alt=""></div>
<div class="card-reveal">
<h5 class="card-heading"><?php echo $lang->install->yidou->name?></h5>
<div class="card-content"><?php echo $lang->install->yidou->desc?></div>
<h5 class="card-heading"><?php echo $lang->install->zdoo->name?></h5>
<div class="card-content"><?php echo $lang->install->zdoo->desc?></div>
</div>
</a>
</div>
-2
View File
@@ -11,6 +11,4 @@
a.removeModule{color:#ddd}
a.removeModule:hover{color:red}
#createActionMenu .btn{color: #fff!important; text-shadow: 0 -1px 0 rgba(0,0,0,.2)!important; background-color: #d2322d!important; border-color: #bd2d29!important;}
tbody > tr > td > .btn-icon {margin-right: 3px;}
+3 -3
View File
@@ -60,16 +60,16 @@
if(commonModel::isTutorialMode())
{
$wizardParams = helper::safe64Encode("productID=$productID&branch=$branch&moduleID=$moduleID");
echo html::a($this->createLink('tutorial', 'wizard', "module=story&method=create&params=$wizardParams"), "<i class='con-plus'></i>" . $lang->story->create, '', 'create-story-btn');
echo html::a($this->createLink('tutorial', 'wizard', "module=story&method=create&params=$wizardParams"), "<i class='con-plus'></i>" . $lang->story->create, '', "class='create-story-btn btn btn-primary'");
}
else
{
$misc = common::hasPriv('story', 'create') ? "class='btn'" : "class='btn disabled'";
$misc = common::hasPriv('story', 'create') ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('story', 'create') ? $this->createLink('story', 'create', "productID=$productID&branch=$branch&moduleID=$moduleID") : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->story->create, '', $misc);
}
?>
<button type="button" class="btn dropdown-toggle" data-toggle="dropdown">
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>
</button>
<ul class='dropdown-menu'>
+2 -2
View File
@@ -24,8 +24,8 @@ include '../../common/view/tablesorter.html.php';
<th class='w-id {sorter:"currency"}'><?php echo $lang->idAB;?></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th class='w-200px'> <?php echo $lang->story->plan;?></th>
<th> <?php echo $lang->story->title;?></th>
<th class='w-80px'> <?php echo $lang->story->module;?></th>
<th> <?php echo $lang->story->title;?></th>
<th class='w-user'> <?php echo $lang->openedByAB;?></th>
<th class='w-user'> <?php echo $lang->assignedToAB;?></th>
<th class='w-30px'> <?php echo $lang->story->estimateAB;?></th>
@@ -43,8 +43,8 @@ include '../../common/view/tablesorter.html.php';
</td>
<td><span class='<?php echo 'pri' . zget($lang->story->priList, $story->pri, $story->pri);?>'><?php echo zget($lang->story->priList, $story->pri, $story->pri)?></span></td>
<td><?php echo $story->planTitle;?></td>
<td class='text-left nobr' title='<?php echo $story->title?>'><?php echo html::a($this->createLink('story', 'view', "storyID=$story->id"), $story->title);?></td>
<td title='<?php echo $modules[$story->module]?>'><?php echo $modules[$story->module];?></td>
<td class='text-left nobr' title='<?php echo $story->title?>'><?php echo html::a($this->createLink('story', 'view', "storyID=$story->id"), $story->title);?></td>
<td><?php echo zget($users, $story->openedBy);?></td>
<td><?php echo zget($users, $story->assignedTo);?></td>
<td><?php echo $story->estimate;?></td>
+2 -2
View File
@@ -71,8 +71,8 @@
<tr>
<th class='w-id {sorter:false}' > <?php common::printOrderLink('id', $orderBy, $vars, $lang->idAB);?></th>
<th class='w-pri {sorter:false}'> <?php common::printOrderLink('pri', $orderBy, $vars, $lang->priAB);?></th>
<th class='{sorter:false}'> <?php common::printOrderLink('title', $orderBy, $vars, $lang->story->title);?></th>
<th class='w-80px {sorter:false}'> <?php common::printOrderLink('module', $orderBy, $vars, $lang->story->module);?></th>
<th class='{sorter:false}'> <?php common::printOrderLink('title', $orderBy, $vars, $lang->story->title);?></th>
<th class='w-user {sorter:false}'> <?php common::printOrderLink('openedBy', $orderBy, $vars, $lang->openedByAB);?></th>
<th class='w-user {sorter:false}'> <?php common::printOrderLink('assignedTo', $orderBy, $vars, $lang->assignedToAB);?></th>
<th class='w-60px {sorter:false}'> <?php common::printOrderLink('estimate', $orderBy, $vars, $lang->story->estimateAB);?></th>
@@ -100,8 +100,8 @@
<?php echo html::a($viewLink, sprintf("%03d", $story->id));?>
</td>
<td><span class='<?php echo 'pri' . zget($lang->story->priList, $story->pri, $story->pri)?>'><?php echo zget($lang->story->priList, $story->pri, $story->pri);?></span></td>
<td class='text-left' title='<?php echo $modules[$story->module]?>'><?php echo $modules[$story->module];?></td>
<td class='text-left nobr' title='<?php echo $story->title?>'><?php echo html::a($viewLink , $story->title);?></td>
<td class='text-left'><?php echo $modules[$story->module];?></td>
<td><?php echo zget($users, $story->openedBy);?></td>
<td><?php echo zget($users, $story->assignedTo);?></td>
<td><?php echo $story->estimate;?></td>
+2 -4
View File
@@ -320,11 +320,10 @@ class project extends control
*
* @param int $projectID
* @param int $fromProject
* @param bool $containDoing
* @access public
* @return void
*/
public function importTask($toProject, $fromProject = 0, $containDoing = false)
public function importTask($toProject, $fromProject = 0)
{
if(!empty($_POST))
{
@@ -335,7 +334,7 @@ class project extends control
$project = $this->commonAction($toProject);
$branches = $this->project->getProjectBranches($toProject);
$tasks = $this->project->getTasks2Imported($toProject, $branches);
$projects = $this->project->getProjectsToImport(array_keys($tasks), $containDoing);
$projects = $this->project->getProjectsToImport(array_keys($tasks));
unset($projects[$toProject]);
unset($tasks[$toProject]);
@@ -362,7 +361,6 @@ class project extends control
$this->view->tasks2Imported = $tasks2Imported;
$this->view->projects = $projects;
$this->view->projectID = $project->id;
$this->view->containDoing = $containDoing;
$this->view->fromProject = $fromProject;
$this->display();
}
+2
View File
@@ -15,3 +15,5 @@
.modal-dialog {margin-top: 10%!important;}
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {margin-top: 1px;}
.type-tips {display: none; margin: 5px 0; color: #545454;}
+1 -1
View File
@@ -1,2 +1,2 @@
#titlebar .input-group {position: relative; top: -6px; margin-left: 10px; width: 500px;}
#titlebar .input-group {position: relative; top: -6px; margin-left: 10px; width: 300px;}
#titlebar .input-group-addon, #titlebar .form-control {font-size: 12px; padding: 5px 10px; line-height: 18px; height: 30px}
-2
View File
@@ -21,6 +21,4 @@
.pl-5px{padding-left:5px;}
#createActionMenu .btn{color: #fff!important; text-shadow: 0 -1px 0 rgba(0,0,0,.2)!important; background-color: #d2322d!important; border-color: #bd2d29!important;}
tbody > tr > td > .btn-icon {margin-right: 2px}
+13
View File
@@ -9,3 +9,16 @@ $(function()
$('#copyProjects a').click(function(){setCopyProject($(this).data('id')); $('#copyProjectModal').modal('hide')});
$('#productsBox .col-sm-3').width($('#type').closest('td').width());
});
function showTypeTips()
{
var type = $('#type').val();
if(type == 'ops')
{
$('.type-tips').show();
}
else
{
$('.type-tips').hide();
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
function reload(toProject, fromProject)
{
link = createLink('project','importtask','toProject='+toProject + '&fromProject='+fromProject + '&containDoing=' + containDoing);
link = createLink('project','importtask','toProject='+toProject + '&fromProject='+fromProject);
location.href = link;
}
$(function()
-1
View File
@@ -51,7 +51,6 @@ $lang->project->mine = 'My Responsibility: ';
$lang->project->other = 'Other:';
$lang->project->deleted = 'Deleted';
$lang->project->delayed = 'Delayed';
$lang->project->containDoing = 'including doing project';
$lang->project->start = 'Start';
$lang->project->activate = 'Activate';
-1
View File
@@ -51,7 +51,6 @@ $lang->project->mine = '我负责:';
$lang->project->other = '其他:';
$lang->project->deleted = '已删除';
$lang->project->delayed = '已延期';
$lang->project->containDoing = '包含进行中的项目';
$lang->project->start = '开始';
$lang->project->activate = '激活';
+2 -9
View File
@@ -1042,7 +1042,7 @@ class projectModel extends model
* @access public
* @return array
*/
public function getProjectsToImport($projectIds, $containDoing = 'false')
public function getProjectsToImport($projectIds)
{
$projects = $this->dao->select('*')->from(TABLE_PROJECT)
->where('id')->in($projectIds)
@@ -1054,14 +1054,7 @@ class projectModel extends model
$now = date('Y-m-d');
foreach($projects as $id => $project)
{
if($containDoing)
{
if($this->checkPriv($project) and ($project->status == 'done' or $project->status == 'doing' or $project->end < $now)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
}
else
{
if($this->checkPriv($project) and ($project->status == 'done' or $project->end < $now)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
}
if($this->checkPriv($project)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
}
return $pairs;
}
+2 -2
View File
@@ -81,10 +81,10 @@
<tr>
<th><?php echo $lang->project->type;?></th>
<td>
<?php echo html::select('type', $lang->project->typeList, '', "class='form-control'");?>
<?php echo html::select('type', $lang->project->typeList, '', "class='form-control' onchange='showTypeTips()'");?>
</td>
<td>
<div class='help-block'><?php echo $lang->project->typeDesc;?></div>
<div class='type-tips'><?php echo $lang->project->typeDesc;?></div>
</td>
</tr>
<tr>
-8
View File
@@ -12,7 +12,6 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/tablesorter.html.php';?>
<?php js::set('containDoing', $containDoing);?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix pull-left'><?php echo html::icon($lang->icons['task']);?></span>
@@ -21,13 +20,6 @@
<?php $projects = array(0 => $lang->project->allProjects) + $projects;?>
<span class='input-group-addon'><?php echo $lang->project->selectProject;?></span>
<?php echo html::select('fromproject', $projects, $fromProject, "onchange='reload($projectID, this.value)' class='form-control chosen'");?>
<span class='input-group-btn'>
<?php
$toggleClass = $containDoing ? 'icon-checked' : 'icon-check-empty';
$params = $containDoing ? "toProject=$projectID&fromProject=$fromProject" : "toProject=$projectID&fromProject=$fromProject&containDoing=true";
echo html::a($this->createLink('project', 'importTask', $params), "<i class={$toggleClass}></i> " . $lang->project->containDoing, '', "class='btn'");
?>
</span>
</div>
</div>
</div>
+1 -1
View File
@@ -70,7 +70,7 @@
<div class='dropdown-menu pull-right'>
<?php
echo (common::hasPriv('task', 'create')) ? html::a($this->createLink('task', 'create', "projectID=$story->project&storyID=$story->story&moduleID=$story->module", '', true), $lang->project->wbs, '', "class='kanbanFrame'") : '';
echo (common::hasPriv('task', 'batchCreate')) ? html::a($this->createLink('task', 'batchCreate', "projectID=$story->project&storyID=$story->story&iframe=true", '', true), $lang->project->batchWBS, '', "class='kanbanFrame'") : '';
echo (common::hasPriv('task', 'batchCreate')) ? html::a($this->createLink('task', 'batchCreate', "projectID=$story->project&storyID=$story->story&iframe=true", '', true), $lang->project->batchWBS, '', "class='kanbanFrame' data-width='95%'") : '';
echo (common::hasPriv('project', 'unlinkStory')) ? html::a($this->createLink('project', 'unlinkStory', "projectID=$story->project&storyID=$story->story&confirm=no", '', true), $lang->project->unlinkStory, 'hiddenwin') : '';
echo (common::hasPriv('story', 'activate') and storyModel::isClickable($story, 'activate')) ? html::a($this->createLink('story', 'activate', "storyID=$story->id", '', 'true'), $lang->story->activate, '', "class='kanbanFrame'") : '';
echo (common::hasPriv('story', 'close') and storyModel::isClickable($story, 'close')) ? html::a($this->createLink('story', 'close', "storyID=$story->id", '', 'true'), $lang->story->close, '', "class='kanbanFrame'") : '';
+1 -1
View File
@@ -37,7 +37,7 @@
<th class='w-35px {sorter:false}'> <?php common::printOrderLink('estimate', $orderBy, $vars, $lang->task->estimateAB);?></th>
<th class='w-50px {sorter:false}'> <?php common::printOrderLink('consumed', $orderBy, $vars, $lang->task->consumedAB);?></th>
<th class='w-40px nobr {sorter:false}'> <?php common::printOrderLink('left', $orderBy, $vars, $lang->task->leftAB);?></th>
<th class='w-50px'><?php echo $lang->task->progess;?></th>
<th class='w-50px' title='<?php echo $lang->task->progessTips?>'><?php echo $lang->task->progess;?></th>
<?php if($project->type == 'sprint'): ?>
<th class='w-100px {sorter:false}'><?php common::printOrderLink('story', $orderBy, $vars, $lang->task->story); ?></th>
+2 -2
View File
@@ -123,11 +123,11 @@
<div class='btn-group'>
<div class='btn-group' id='createActionMenu'>
<?php
$misc = common::hasPriv('task', 'create') ? "class='btn'" : "class='btn disabled'";
$misc = common::hasPriv('task', 'create') ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create') ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->task->create, '', $misc);
?>
<button type='button' class='btn dropdown-toggle' data-toggle='dropdown'>
<button type='button' class='btn btn-primary dropdown-toggle' data-toggle='dropdown'>
<span class='caret'></span>
</button>
<ul class='dropdown-menu'>
+1 -1
View File
@@ -23,7 +23,7 @@ class releaseModel extends model
*/
public function getByID($releaseID, $setImgSize = false)
{
$release = $this->dao->select('t1.*, t2.id as buildID, t2.filePath, t2.scmPath, t2.name as buildName, t3.name as productName, t3.type as productType')
$release = $this->dao->select('t1.*, t2.id as buildID, t2.filePath, t2.scmPath, t2.name as buildName, t2.project, t3.name as productName, t3.type as productType')
->from(TABLE_RELEASE)->alias('t1')
->leftJoin(TABLE_BUILD)->alias('t2')->on('t1.build = t2.id')
->leftJoin(TABLE_PRODUCT)->alias('t3')->on('t1.product = t3.id')
+3 -1
View File
@@ -278,7 +278,9 @@
</tr>
<tr>
<th><?php echo $lang->release->build;?></th>
<td title='<?php echo $release->buildName?>'><?php echo html::a($this->createLink('build', 'view', "buildID=$release->buildID"), $release->buildName, '_blank');?></td>
<td title='<?php echo $release->buildName?>'>
<?php echo ($release->project) ? html::a($this->createLink('build', 'view', "buildID=$release->buildID"), $release->buildName, '_blank') : $release->buildName;?>
</td>
</tr>
<tr>
<th><?php echo $lang->release->status;?></th>
+5 -2
View File
@@ -6,6 +6,9 @@
.chosen-container {max-width: 980px}
.minw-80px {min-width: 120px;}
.minw-60px {min-width: 50px;}
#priRowCol, #estRowCol {width: 110px;}
.col-table .input-group {width: 100%}
#taskPlanCol, #mailCol {width: 50%}
#planAndMailCell.has-mail-col #taskPlanCol {padding-right: 5px;}
#planAndMailCell.has-mail-col #taskPlanCol + #mailCol {padding-left: 5px;}
+12 -6
View File
@@ -152,14 +152,20 @@ $(document).ready(function()
$('[data-toggle=tooltip]').tooltip();
/* Code for kanban following codes. */
// ajust style for file box
var ajustFilebox = function()
// adjust form controls layout
var ajustFormControls = function()
{
applyCssStyle('.fileBox > tbody > tr > td:first-child {transition: none; width: ' + ($('#dataPlanGroup').width() - 2) + 'px}', 'filebox')
// adjust style for file box
applyCssStyle('.fileBox > tbody > tr > td:first-child {transition: none; width: ' + ($('#dataPlanGroup').width() - 1) + 'px}', 'filebox');
// adjust #priRowCol and #estRowCol size
var $priRowCol = $('#priRowCol'),
$estRowCol = $('#estRowCol');
$priRowCol.css('width', 54 + $priRowCol.find('.input-group-addon').outerWidth());
$estRowCol.css('width', 55 + $estRowCol.find('.input-group-addon').outerWidth());
};
ajustFilebox();
$(window).resize(ajustFilebox);
ajustFormControls();
$(window).resize(ajustFormControls);
/* First unbind ajaxForm for form.*/
$("form[data-type='ajax']").unbind('submit');
+1
View File
@@ -34,6 +34,7 @@ $lang->task->fromBug = 'From Bug';
$lang->task->case = 'Related Case';
$lang->task->confirmStoryChange = "Confirm Story Change";
$lang->task->progess = 'Progess';
$lang->task->progessTips = 'Consumed/(Consumed+Left)';
$lang->task->common = 'Task';
$lang->task->id = 'ID';
+1
View File
@@ -34,6 +34,7 @@ $lang->task->fromBug = '来源Bug';
$lang->task->case = '相关用例';
$lang->task->confirmStoryChange = "确认需求变动";
$lang->task->progess = '进度';
$lang->task->progessTips = '已消耗/(已消耗+剩余)';
$lang->task->common = '任务';
$lang->task->id = '编号';
+2 -2
View File
@@ -812,7 +812,7 @@ class taskModel extends model
$task->files = $this->loadModel('file')->getByObject('task', $taskID);
/* Get related test cases. */
if($task->story)$this->cases = $this->dao->select('id, title')->from(TABLE_CASE)->where('story')->eq($task->story)->andWhere('storyVersion')->eq($task->storyVersion)->fetchPairs();
if($task->story) $task->cases = $this->dao->select('id, title')->from(TABLE_CASE)->where('story')->eq($task->story)->andWhere('storyVersion')->eq($task->storyVersion)->fetchPairs();
return $this->processTask($task);
}
@@ -1203,7 +1203,7 @@ class taskModel extends model
}
else
{
$task->progess = round($task->consumed / ($task->consumed + $task->left), 3) * 100;
$task->progess = round($task->consumed / ($task->consumed + $task->left), 2) * 100;
}
return $task;
+7 -4
View File
@@ -29,6 +29,9 @@ foreach(explode(',', $showFields) as $field)
{
if($field)$visibleFields[$field] = '';
}
$colspan = count($visibleFields) + 3;
$hiddenStory = (isonlybody() and $storyID) ? ' hidden' : '';
if($hiddenStory and isset($visibleFields['story'])) $colspan -= 1;
?>
<form class='form-condensed' method='post' target='hiddenwin'>
<table class='table table-form table-fixed with-border'>
@@ -36,7 +39,7 @@ foreach(explode(',', $showFields) as $field)
<tr class='text-center'>
<th class='w-30px'><?php echo $lang->idAB;?></th>
<th class='w-150px<?php echo zget($visibleFields, 'module', ' hidden')?>'><?php echo $lang->task->module?></th>
<th class='w-200px<?php echo zget($visibleFields, 'story', ' hidden')?>'><?php echo $lang->task->story;?></th>
<th class='w-200px<?php echo zget($visibleFields, 'story', ' hidden'); echo $hiddenStory;?>'><?php echo $lang->task->story;?></th>
<th><?php echo $lang->task->name;?> <span class='required'></span></th>
<th class='w-80px'><?php echo $lang->typeAB;?> <span class='required'></span></th>
<th class='w-150px<?php echo zget($visibleFields, 'assignedTo', ' hidden')?>'><?php echo $lang->task->assignedTo;?></th>
@@ -72,7 +75,7 @@ foreach(explode(',', $showFields) as $field)
<tr>
<td class='text-center'><?php echo $i+1;?></td>
<td <?php echo zget($visibleFields, 'module', "class='hidden'")?> style='overflow:visible'><?php echo html::select("module[$i]", $modules, $module, "class='form-control chosen' onchange='setStories(this.value, $project->id, $i)'")?></td>
<td <?php echo zget($visibleFields, 'story', "class='hidden'")?> style='overflow: visible'>
<td <?php echo zget($visibleFields, 'story', "class='hidden'"); echo $hiddenStory;?> style='overflow: visible'>
<div class='input-group'>
<?php echo html::select("story[$i]", $stories, $currentStory, "class='form-control chosen' onchange='setStoryRelated($i)'");?>
<span class='input-group-btn'>
@@ -95,7 +98,7 @@ foreach(explode(',', $showFields) as $field)
<td <?php echo zget($visibleFields, 'pri', "class='hidden'")?>><?php echo html::select("pri[$i]", (array)$lang->task->priList, $pri, 'class=form-control');?></td>
</tr>
<?php endfor;?>
<tr><td colspan='<?php echo count($visibleFields) + 3?>' class='text-center'><?php echo html::submitButton() . html::backButton();?></td></tr>
<tr><td colspan='<?php echo $colspan?>' class='text-center'><?php echo html::submitButton() . html::backButton();?></td></tr>
</table>
</form>
<table class='hide' id='trTemp'>
@@ -103,7 +106,7 @@ foreach(explode(',', $showFields) as $field)
<tr>
<td class='text-center'>%s</td>
<td <?php echo zget($visibleFields, 'module', "class='hidden'")?> style='overflow:visible'><?php echo html::select("module[%s]", $modules, $module, "class='form-control' onchange='setStories(this.value, $project->id, \"%s\")'")?></td>
<td <?php echo zget($visibleFields, 'story', "class='hidden'")?> style='overflow: visible'>
<td <?php echo zget($visibleFields, 'story', "class='hidden'"); echo $hiddenStory;?> style='overflow: visible'>
<div class='input-group'>
<?php echo html::select("story[%s]", $stories, $currentStory, "class='form-control' onchange='setStoryRelated(\"%s\")'");?>
<span class='input-group-btn'>
+43 -38
View File
@@ -72,11 +72,9 @@
$hiddenPri = strpos(",$showFields,", ',pri,') === false;
$hiddenEst = strpos(",$showFields,", ',estimate,') === false;
?>
<?php if(!$hiddenPri or !$hiddenEst):?>
<?php $widthClass = ($hiddenPri or $hiddenEst) ? 'w-120px' : 'w-250px';?>
<div class='col-table <?php echo $widthClass?>'>
<div class="input-group">
<?php if(!$hiddenPri):?>
<?php if(!$hiddenPri):?>
<div class='col-table' id='priRowCol'>
<div class='input-group'>
<span class='input-group-addon fix-border br-0'><?php echo $lang->task->pri;?></span>
<?php
$hasCustomPri = false;
@@ -90,7 +88,7 @@
}
?>
<?php if($hasCustomPri):?>
<?php echo html::select('pri', $lang->task->priList, '', "class='form-control minw-80px'");?>
<?php echo html::select('pri', $lang->task->priList, '', "class='form-control'");?>
<?php else: ?>
<div class='input-group-btn dropdown-pris'>
<button type='button' class='btn dropdown-toggle br-0' data-toggle='dropdown'>
@@ -100,14 +98,18 @@
<?php echo html::select('pri', $lang->task->priList, '', "class='hide'");?>
</div>
<?php endif; ?>
<?php endif?>
<?php if(!$hiddenEst):?>
<span class='input-group-addon fix-border br-0'><?php echo $lang->task->estimateAB;?></span>
<?php echo html::input('estimate', '', "class='form-control minw-60px' placeholder='{$lang->task->hour}'");?>
<?php endif;?>
</div>
</div>
<?php endif;?>
<?php endif; ?>
<?php if(!$hiddenEst):?>
<div class='col-table' id='estRowCol'>
<div class='input-group'>
<span class='input-group-addon fix-border br-0'><?php echo $lang->task->estimateAB;?></span>
<?php echo html::input('estimate', '', "class='form-control' placeholder='{$lang->task->hour}'");?>
</div>
</div>
<?php endif; ?>
</div>
</td>
</tr>
@@ -123,33 +125,36 @@
<?php if(!$hiddenEstStarted or !$hiddenDeadline or !$hiddenMailto):?>
<tr>
<th><?php echo ($hiddenEstStarted and $hiddenDeadline) ? $lang->task->mailto : $lang->task->datePlan;?></th>
<?php if(!$hiddenEstStarted or !$hiddenDeadline):?>
<td colspan='2'>
<div class='input-group' id='dataPlanGroup'>
<?php if(!$hiddenEstStarted):?>
<?php echo html::input('estStarted', $task->estStarted, "class='form-control form-date' placeholder='{$lang->task->estStarted}'");?>
<?php endif;?>
<?php if(!$hiddenEstStarted and !$hiddenDeadline):?>
<span class='input-group-addon fix-border'>~</span>
<?php endif;?>
<?php if(!$hiddenDeadline):?>
<?php echo html::input('deadline', $task->deadline, "class='form-control form-date' placeholder='{$lang->task->deadline}'");?>
<?php endif;?>
</div>
<td id='planAndMailCell' colspan='5' class='<?php if(!$hiddenMailto) echo 'has-mail-col' ?>'>
<div class='row-table'>
<?php if(!$hiddenEstStarted or !$hiddenDeadline):?>
<div class='col-table' id='taskPlanCol'>
<div class='input-group' id='dataPlanGroup'>
<?php if(!$hiddenEstStarted):?>
<?php echo html::input('estStarted', $task->estStarted, "class='form-control form-date' placeholder='{$lang->task->estStarted}'");?>
<?php endif;?>
<?php if(!$hiddenEstStarted and !$hiddenDeadline):?>
<span class='input-group-addon fix-border'>~</span>
<?php endif;?>
<?php if(!$hiddenDeadline):?>
<?php echo html::input('deadline', $task->deadline, "class='form-control form-date' placeholder='{$lang->task->deadline}'");?>
<?php endif;?>
</div>
</div>
<?php endif;?>
<?php if(!$hiddenMailto):?>
<div class='col-table' id='mailCol'>
<div id='mailtoGroup' class='input-group'>
<?php if(!$hiddenEstStarted or !$hiddenDeadline):?>
<span class='input-group-addon'><?php echo $lang->task->mailto;?></span>
<?php endif;?>
<?php echo html::select('mailto[]', $project->acl == 'private' ? $members : $users, str_replace(' ', '', $task->mailto), "multiple class='form-control'");?>
<?php echo $this->fetch('my', 'buildContactLists');?>
</div>
</div>
<?php endif;?>
</div>
</td>
<?php endif;?>
<?php if(!$hiddenMailto):?>
<?php $colspan = ($hiddenEstStarted and $hiddenDeadline) ? '5' : '4';?>
<td colspan='<?php echo $colspan?>'>
<div id='mailtoGroup' class='input-group'>
<?php if(!$hiddenEstStarted or !$hiddenDeadline):?>
<span class='input-group-addon'><?php echo $lang->task->mailto;?></span>
<?php endif;?>
<?php echo html::select('mailto[]', $project->acl == 'private' ? $members : $users, str_replace(' ', '', $task->mailto), "multiple class='form-control'");?>
<?php echo $this->fetch('my', 'buildContactLists');?>
</div>
</td>
<?php endif;?>
</tr>
<?php endif;?>
<tr>
+1 -1
View File
@@ -88,7 +88,7 @@
</fieldset>
<?php endif;?>
<?php if(isset($task->cases)):?>
<?php if(isset($task->cases) and $task->cases):?>
<fieldset>
<legend><?php echo $lang->task->case;?></legend>
<div class='article-content'>
-1
View File
@@ -10,4 +10,3 @@
.dropdown-list > li > a:focus {color: #1a4f85;text-decoration: none;background-color: #ddd;}
.pl-5px{padding-left:5px;}
#createActionMenu .btn{color: #fff!important; text-shadow: 0 -1px 0 rgba(0,0,0,.2)!important; background-color: #d2322d!important; border-color: #bd2d29!important;}
+2 -2
View File
@@ -82,11 +82,11 @@
<div class='btn-group' id='createActionMenu'>
<?php
$initModule = isset($moduleID) ? (int)$moduleID : 0;
$misc = common::hasPriv('testcase', 'create') ? "class='btn'" : "class='btn disabled'";
$misc = common::hasPriv('testcase', 'create') ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('testcase', 'create') ? $this->createLink('testcase', 'create', "productID=$productID&branch=$branch&moduleID=$initModule") : '#';
echo html::a($link, "<i class='icon-plus'></i>" . $lang->testcase->create, '', $misc);
?>
<button type='button' class='btn dropdown-toggle' data-toggle='dropdown'>
<button type='button' class='btn btn-primary dropdown-toggle' data-toggle='dropdown'>
<span class='caret'></span>
</button>
<ul class='dropdown-menu'>
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB