Merge branch 'master' of github.com:easysoft/zentaopms
This commit is contained in:
@@ -54,6 +54,14 @@ $lang->action->dynamic->all = '所有';
|
||||
$lang->action->dynamic->hidden = '已隱藏';
|
||||
$lang->action->dynamic->search = '搜索';
|
||||
|
||||
$lang->action->periods['all'] = $lang->action->dynamic->all;
|
||||
$lang->action->periods['today'] = $lang->action->dynamic->today;
|
||||
$lang->action->periods['yesterday'] = $lang->action->dynamic->yesterday;
|
||||
$lang->action->periods['thisweek'] = $lang->action->dynamic->thisWeek;
|
||||
$lang->action->periods['lastweek'] = $lang->action->dynamic->lastWeek;
|
||||
$lang->action->periods['thismonth'] = $lang->action->dynamic->thisMonth;
|
||||
$lang->action->periods['lastmonth'] = $lang->action->dynamic->lastMonth;
|
||||
|
||||
$lang->action->objectTypes['product'] = $lang->productCommon;
|
||||
$lang->action->objectTypes['story'] = '需求';
|
||||
$lang->action->objectTypes['productplan'] = '計劃';
|
||||
|
||||
@@ -266,6 +266,12 @@ $lang->block->orderByList->product['id_desc'] = 'ID 遞減';
|
||||
$lang->block->orderByList->product['status_asc'] = '狀態正序';
|
||||
$lang->block->orderByList->product['status_desc'] = '狀態倒序';
|
||||
|
||||
$lang->block->orderByList->project = array();
|
||||
$lang->block->orderByList->project['id_asc'] = 'ID 遞增';
|
||||
$lang->block->orderByList->project['id_desc'] = 'ID 遞減';
|
||||
$lang->block->orderByList->project['status_asc'] = '狀態正序';
|
||||
$lang->block->orderByList->project['status_desc'] = '狀態倒序';
|
||||
|
||||
$lang->block->orderByList->task = array();
|
||||
$lang->block->orderByList->task['id_asc'] = 'ID 遞增';
|
||||
$lang->block->orderByList->task['id_desc'] = 'ID 遞減';
|
||||
|
||||
+25
-22
@@ -103,23 +103,24 @@ $lang->bug->copy = 'Copy';
|
||||
$lang->bug->search = 'Search';
|
||||
|
||||
/* 查询条件列表。*/
|
||||
$lang->bug->assignToMe = 'AssignedToMe';
|
||||
$lang->bug->openedByMe = 'CreatedByMe';
|
||||
$lang->bug->resolvedByMe = 'ResolvedByMe';
|
||||
$lang->bug->closedByMe = 'ClosedByMe';
|
||||
$lang->bug->assignToNull = 'Unassigned';
|
||||
$lang->bug->unResolved = 'Unresolved';
|
||||
$lang->bug->toClosed = 'WaitForClose';
|
||||
$lang->bug->unclosed = 'Active';
|
||||
$lang->bug->unconfirmed = 'UnConfirmed';
|
||||
$lang->bug->longLifeBugs = 'Pending';
|
||||
$lang->bug->postponedBugs = 'Postponed';
|
||||
$lang->bug->overdueBugs = 'Overdue';
|
||||
$lang->bug->allBugs = 'All';
|
||||
$lang->bug->byQuery = 'Search';
|
||||
$lang->bug->needConfirm = 'StoryChanged';
|
||||
$lang->bug->allProduct = 'All' . $lang->productCommon;
|
||||
$lang->bug->my = 'My';
|
||||
$lang->bug->assignToMe = 'AssignedToMe';
|
||||
$lang->bug->openedByMe = 'CreatedByMe';
|
||||
$lang->bug->resolvedByMe = 'ResolvedByMe';
|
||||
$lang->bug->closedByMe = 'ClosedByMe';
|
||||
$lang->bug->assignToNull = 'Unassigned';
|
||||
$lang->bug->unResolved = 'Unresolved';
|
||||
$lang->bug->toClosed = 'WaitForClose';
|
||||
$lang->bug->unclosed = 'Active';
|
||||
$lang->bug->unconfirmed = 'UnConfirmed';
|
||||
$lang->bug->longLifeBugs = 'Pending';
|
||||
$lang->bug->postponedBugs = 'Postponed';
|
||||
$lang->bug->overdueBugs = 'Overdue';
|
||||
$lang->bug->allBugs = 'All';
|
||||
$lang->bug->byQuery = 'Search';
|
||||
$lang->bug->needConfirm = 'StoryChanged';
|
||||
$lang->bug->allProduct = 'All' . $lang->productCommon;
|
||||
$lang->bug->my = 'My';
|
||||
$lang->bug->yesterdayResolved = 'Resolved Yesterday ';
|
||||
|
||||
$lang->bug->assignToMeAB = 'Assigned To Me';
|
||||
$lang->bug->openedByMeAB = 'Created By Me';
|
||||
@@ -233,6 +234,10 @@ $lang->bug->typeList['performance'] = 'Performance';
|
||||
$lang->bug->typeList['standard'] = 'Standard';
|
||||
$lang->bug->typeList['automation'] = 'Testing Script';
|
||||
$lang->bug->typeList['others'] = 'Other';
|
||||
$lang->bug->typeList['designchange'] = 'Design Changed';
|
||||
$lang->bug->typeList['newfeature'] = 'New Feature';
|
||||
$lang->bug->typeList['designdefect'] = 'Design Defect';
|
||||
$lang->bug->typeList['trackthings'] = 'Track Things';
|
||||
|
||||
$lang->bug->statusList[''] = '';
|
||||
$lang->bug->statusList['active'] = 'Active';
|
||||
@@ -366,14 +371,12 @@ $lang->bug->placeholder = new stdclass();
|
||||
$lang->bug->placeholder->chooseBuilds = 'Choose Build...';
|
||||
$lang->bug->placeholder->newBuildName = 'The name of new build';
|
||||
|
||||
$lang->bug->mySelects['assigntome'] = $lang->bug->assignToMeAB;
|
||||
$lang->bug->mySelects['openedbyme'] = $lang->bug->openedByMeAB;
|
||||
$lang->bug->mySelects['resolvedbyme'] = $lang->bug->resolvedByMeAB;
|
||||
|
||||
$lang->bug->featureBar['browse']['unclosed'] = $lang->bug->unclosed;
|
||||
$lang->bug->featureBar['browse']['all'] = $lang->bug->allBugs;
|
||||
$lang->bug->featureBar['browse']['assigntome'] = $lang->bug->assignToMe;
|
||||
$lang->bug->featureBar['browse']['openedbyme'] = $lang->bug->openedByMe;
|
||||
$lang->bug->featureBar['browse']['resolvedbyme'] = $lang->bug->resolvedByMe;
|
||||
|
||||
$lang->bug->featureBar['browse']['my'] = $lang->bug->my;
|
||||
$lang->bug->featureBar['browse']['unconfirmed'] = $lang->bug->unconfirmed;
|
||||
$lang->bug->featureBar['browse']['assigntonull'] = $lang->bug->assignToNull;
|
||||
$lang->bug->featureBar['browse']['unresolved'] = $lang->bug->unResolved;
|
||||
|
||||
+18
-17
@@ -103,23 +103,24 @@ $lang->bug->copy = '複製Bug';
|
||||
$lang->bug->search = '搜索';
|
||||
|
||||
/* 查詢條件列表。*/
|
||||
$lang->bug->assignToMe = '指派給我';
|
||||
$lang->bug->openedByMe = '由我創建';
|
||||
$lang->bug->resolvedByMe = '由我解決';
|
||||
$lang->bug->closedByMe = '由我關閉';
|
||||
$lang->bug->assignToNull = '未指派';
|
||||
$lang->bug->unResolved = '未解決';
|
||||
$lang->bug->toClosed = '待關閉';
|
||||
$lang->bug->unclosed = '未關閉';
|
||||
$lang->bug->unconfirmed = '未確認';
|
||||
$lang->bug->longLifeBugs = '久未處理';
|
||||
$lang->bug->postponedBugs = '被延期';
|
||||
$lang->bug->overdueBugs = '過期Bug';
|
||||
$lang->bug->allBugs = '所有';
|
||||
$lang->bug->byQuery = '搜索';
|
||||
$lang->bug->needConfirm = '需求變動';
|
||||
$lang->bug->allProduct = '所有' . $lang->productCommon;
|
||||
$lang->bug->my = '我的';
|
||||
$lang->bug->assignToMe = '指派給我';
|
||||
$lang->bug->openedByMe = '由我創建';
|
||||
$lang->bug->resolvedByMe = '由我解決';
|
||||
$lang->bug->closedByMe = '由我關閉';
|
||||
$lang->bug->assignToNull = '未指派';
|
||||
$lang->bug->unResolved = '未解決';
|
||||
$lang->bug->toClosed = '待關閉';
|
||||
$lang->bug->unclosed = '未關閉';
|
||||
$lang->bug->unconfirmed = '未確認';
|
||||
$lang->bug->longLifeBugs = '久未處理';
|
||||
$lang->bug->postponedBugs = '被延期';
|
||||
$lang->bug->overdueBugs = '過期Bug';
|
||||
$lang->bug->allBugs = '所有';
|
||||
$lang->bug->byQuery = '搜索';
|
||||
$lang->bug->needConfirm = '需求變動';
|
||||
$lang->bug->allProduct = '所有' . $lang->productCommon;
|
||||
$lang->bug->my = '我的';
|
||||
$lang->bug->yesterdayResolved = '昨天解決';
|
||||
|
||||
$lang->bug->assignToMeAB = '指派給我';
|
||||
$lang->bug->openedByMeAB = '由我創建';
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
<?php if($build->product != $bug->product) continue; ?>
|
||||
<tr>
|
||||
<td class='cell-id'>
|
||||
<?php echo html::checkbox('bugs', array($bug->id => sprintf('%03d', $bug->id)), ($bug->status == 'resolved' or $bug->status == 'closed') ? $story->id : '');?>
|
||||
<?php echo html::checkbox('bugs', array($bug->id => sprintf('%03d', $bug->id)), ($bug->status == 'resolved' or $bug->status == 'closed') ? $bug->id : '');?>
|
||||
</td>
|
||||
<td><span class='<?php echo 'pri' . zget($lang->bug->priList, $bug->pri, $bug->pri);?>'><?php echo zget($lang->bug->priList, $bug->pri, $bug->pri)?></span></td>
|
||||
<td class='text-left nobr' title='<?php echo $bug->title?>'><?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id", '', true), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
|
||||
|
||||
@@ -17,6 +17,7 @@ $lang->at = ' 于 ';
|
||||
$lang->downArrow = '↓';
|
||||
$lang->null = '空';
|
||||
$lang->ellipsis = '…';
|
||||
$lang->percent = '%';
|
||||
|
||||
$lang->zentaoPMS = '禪道';
|
||||
$lang->welcome = "%s項目管理系統";
|
||||
@@ -241,7 +242,7 @@ $lang->project->subMenu->list->groupTask = '分組視圖|project|groupTask|proje
|
||||
$lang->project->subMenu->qa = new stdclass();
|
||||
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
|
||||
$lang->project->subMenu->qa->build = '版本|project|build|projectID=%s';
|
||||
$lang->project->subMenu->qa->testtask = '測試單|project|testtask|projectID=%s';
|
||||
$lang->project->subMenu->qa->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport');
|
||||
|
||||
$lang->project->subMenu->action = new stdclass();
|
||||
$lang->project->subMenu->action->dynamic = '動態|project|dynamic|projectID=%s';
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
<td></td>
|
||||
<td>
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
<?php echo html::hidden('maxOrder', $maxOrder);?>
|
||||
<?php echo html::hidden('parentDeptID', $deptID);?>
|
||||
</td>
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
<th><span class='hidden'><?php echo html::selectAll('', 'checkbox')?></span></th>
|
||||
<td colspan='2'>
|
||||
<?php echo html::submitButton('', "onclick='setNoChecked()'", 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
<?php echo html::hidden('foo'); // Just a hidden var, to make sure $_POST is not empty.?>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
<th class='text-right'></th>
|
||||
<td>
|
||||
<?php echo html::submitButton('', "onclick='setNoChecked()'", 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
<?php echo html::hidden('noChecked'); // Save the value of no checked.?>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -122,7 +122,7 @@
|
||||
</th>
|
||||
<td>
|
||||
<?php echo html::submitButton('', "onclick='setNoChecked()'", 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
<?php echo html::hidden('noChecked'); // Save the value of no checked.?>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
<tr>
|
||||
<td class='text-center' colspan='3'>
|
||||
<?php echo html::submitButton('', "onclick='setNoChecked()'", 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
<?php echo html::hidden('foo'); // Just make $_POST not empty..?>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
<?php if($canBatchEdit):?>
|
||||
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
|
||||
<div class="table-actions btn-toolbar">
|
||||
<?php echo html::submitButton($lang->edit);?>
|
||||
<?php echo html::submitButton($lang->edit, '', 'btn');?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php if(!$canOrder and common::hasPriv('product', 'updateOrder')) echo html::a(inlink('all', "productID=$productID&line=$line&status=$status&order=order_desc&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}&pageID={$pager->pageID}"), $lang->product->updateOrder, '' , "class='btn'");?>
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
<tr>
|
||||
<td colspan="<?php echo count($visibleFields) + 4?>" class="text-center">
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide");?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide btn-gray");?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
<tr>
|
||||
<td colspan='5' class="text-center">
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide");?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide btn-gray");?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
<?php js::set('planID', $plan->id);?>
|
||||
<div id='mainMenu' class='clearfix'>
|
||||
<div class='btn-toolbar pull-left'>
|
||||
<?php $browseLink = $this->session->productPlanList ? $this->session->productPlanList : inlink('browse', "planID=$plan->id");?>
|
||||
<?php common::printBack($browseLink, 'btn btn-link');?>
|
||||
<div class='divider'></div>
|
||||
<div class='page-title'>
|
||||
<?php $browseLink = $this->session->productPlanList ? $this->session->productPlanList : inlink('browse', "planID=$plan->id");?>
|
||||
<?php common::printBack($browseLink, 'btn btn-link');?>
|
||||
<div class='divider'></div>
|
||||
<span class='label label-id'><?php echo $plan->id;?></span>
|
||||
<?php echo $plan->title;?>
|
||||
<?php if($plan->deleted):?>
|
||||
|
||||
@@ -569,10 +569,10 @@ class project extends control
|
||||
|
||||
$stories = $this->story->getProjectStories($projectID, $sort, $type, $param, $pager);
|
||||
$this->loadModel('common')->saveQueryCondition($this->dao->get(), 'story', false);
|
||||
$users = $this->user->getPairs('noletter');
|
||||
$users = $this->user->getPairs('noletter');
|
||||
|
||||
/* Get project's product. */
|
||||
$productID = 0;
|
||||
$productID = 0;
|
||||
$productPairs = $this->loadModel('product')->getProductsByProject($projectID);
|
||||
if($productPairs) $productID = key($productPairs);
|
||||
|
||||
@@ -600,9 +600,9 @@ class project extends control
|
||||
|
||||
/* Count T B C */
|
||||
$storyIdList = array_keys($stories);;
|
||||
$storyTasks = $this->loadModel('task')->getStoryTaskCounts($storyIdList, $projectID);
|
||||
$storyBugs = $this->loadModel('bug')->getStoryBugCounts($storyIdList, $projectID);
|
||||
$storyCases = $this->loadModel('testcase')->getStoryCaseCounts($storyIdList);
|
||||
$storyTasks = $this->loadModel('task')->getStoryTaskCounts($storyIdList, $projectID);
|
||||
$storyBugs = $this->loadModel('bug')->getStoryBugCounts($storyIdList, $projectID);
|
||||
$storyCases = $this->loadModel('testcase')->getStoryCaseCounts($storyIdList);
|
||||
|
||||
$plans = $this->project->getPlans($productID);
|
||||
$allPlans = array('' => '');
|
||||
@@ -614,6 +614,11 @@ class project extends control
|
||||
}
|
||||
}
|
||||
|
||||
if($type == 'byModule')
|
||||
{
|
||||
$this->view->module = $this->loadModel('tree')->getById($param);
|
||||
}
|
||||
|
||||
/* Assign. */
|
||||
$this->view->title = $title;
|
||||
$this->view->position = $position;
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
$(function()
|
||||
{
|
||||
ajaxGetSearchForm();
|
||||
|
||||
$('#storyList').on('sort.sortable', function(e, data)
|
||||
{
|
||||
var list = '';
|
||||
@@ -36,7 +34,6 @@ $(function()
|
||||
|
||||
function showCheckedSummary()
|
||||
{
|
||||
console.log('test');
|
||||
var $summary = $('#main #mainContent form.main-table .table-header .table-statistic');
|
||||
|
||||
var checkedTotal = 0;
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
<div id="mainMenu" class="clearfix">
|
||||
<div class="btn-toolbar pull-left">
|
||||
<span class='btn btn-link btn-active-text'>
|
||||
<span class='text'><?php echo html::icon($lang->icons['bug']);?> <?php echo $lang->project->bug;?></span>
|
||||
<span class='text'><?php echo $lang->bug->allBugs;?></span>
|
||||
<span class="label label-light label-badge"><?php echo $pager->recTotal;?></span>
|
||||
<?php if($build) echo ' <span class="label label-danger">Build:' . $build->name . '</span>';?>
|
||||
</span>
|
||||
<a class="btn btn-link querybox-toggle" id="bysearchTab"><i class="icon icon-search muted"></i> <?php echo $lang->bug->search;?></a>
|
||||
<a class="btn btn-link querybox-toggle" id="bysearchTab"><i class="icon icon-search muted"></i> <?php echo $lang->bug->search;?></a>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-right">
|
||||
<?php common::printLink('bug', 'export', "productID=$productID&orderBy=$orderBy", "<i class='icon icon-export'> </i>" . $lang->bug->export, '', "class='btn btn-link export iframe'");?>
|
||||
|
||||
@@ -15,79 +15,79 @@
|
||||
<div class="btn-toolbar pull-left">
|
||||
<span class='btn btn-link btn-active-text'><span class='text'><?php echo $lang->project->linkStory;?></span></span>
|
||||
</div>
|
||||
<div class='btn-toolbar pull-right'><?php echo html::a($this->server->http_referer, '<i class="icon-goback icon-level-up icon-large icon-rotate-270"></i> ' . $lang->goback, '', "class='btn btn-link'")?></div>
|
||||
<div class='btn-toolbar pull-right'>
|
||||
<?php common::printBack($this->server->http_referer, 'btn btn-link');?>
|
||||
</div>
|
||||
</div>
|
||||
<div id="mainContent" class="main-content">
|
||||
<div id='queryBox' class='show'></div>
|
||||
<form class='main-table table-story' method='post' data-ride='table' id='linkStoryForm'>
|
||||
<table class='table table-fixed' id='linkStoryList'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class='c-id'>
|
||||
<div class="checkbox-primary check-all" title="<?php echo $lang->selectAll?>">
|
||||
<label></label>
|
||||
</div>
|
||||
<?php echo $lang->idAB;?>
|
||||
</th>
|
||||
<th class='w-pri'><?php echo $lang->priAB;?></th>
|
||||
<th class='w-150px'><?php echo $lang->story->product;?></th>
|
||||
<th class='w-150px'><?php echo $lang->story->module;?></th>
|
||||
<th><?php echo $lang->story->title;?></th>
|
||||
<th class='w-120px'><?php echo $lang->story->plan;?></th>
|
||||
<th class='w-80px'><?php echo $lang->story->stage;?></th>
|
||||
<?php if($productType != 'normal'):?>
|
||||
<th class='w-80px'><?php echo $lang->product->branchName[$productType];?></th>
|
||||
<?php endif;?>
|
||||
<th class='w-user'><?php echo $lang->openedByAB;?></th>
|
||||
<th class='w-80px'><?php echo $lang->story->estimateAB;?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php $storyCount = 0;?>
|
||||
<?php foreach($allStories as $story):?>
|
||||
<?php if(isset($prjStories[$story->id])) continue;?>
|
||||
<?php $storyLink = $this->createLink('story', 'view', "storyID=$story->id");?>
|
||||
<tr>
|
||||
<td class='c-id'>
|
||||
<div class="checkbox-primary">
|
||||
<input type='checkbox' name='stories[]' value='<?php echo $story->id;?>'/>
|
||||
<label></label>
|
||||
<form class='main-table table-story' method='post' data-ride='table' id='linkStoryForm'>
|
||||
<table class='table table-fixed' id='linkStoryList'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class='c-id'>
|
||||
<?php if($allStories):?>
|
||||
<div class="checkbox-primary check-all" title="<?php echo $lang->selectAll?>">
|
||||
<label></label>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php echo $lang->idAB;?>
|
||||
</th>
|
||||
<th class='w-pri'><?php echo $lang->priAB;?></th>
|
||||
<th class='w-150px'><?php echo $lang->story->product;?></th>
|
||||
<th class='w-150px'><?php echo $lang->story->module;?></th>
|
||||
<th><?php echo $lang->story->title;?></th>
|
||||
<th class='w-120px'><?php echo $lang->story->plan;?></th>
|
||||
<th class='w-80px'><?php echo $lang->story->stage;?></th>
|
||||
<?php if($productType != 'normal'):?>
|
||||
<th class='w-80px'><?php echo $lang->product->branchName[$productType];?></th>
|
||||
<?php endif;?>
|
||||
<th class='w-user'><?php echo $lang->openedByAB;?></th>
|
||||
<th class='w-80px text-center'><?php echo $lang->story->estimateAB;?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php $storyCount = 0;?>
|
||||
<?php foreach($allStories as $story):?>
|
||||
<?php if(isset($prjStories[$story->id])) continue;?>
|
||||
<?php $storyLink = $this->createLink('story', 'view', "storyID=$story->id");?>
|
||||
<tr>
|
||||
<td class='cell-id'>
|
||||
<?php echo html::checkbox('stories', array($story->id => sprintf('%03d', $story->id)));?>
|
||||
<?php echo html::hidden("products[$story->id]", $story->product);?>
|
||||
<?php printf('%03d', $story->id);?>
|
||||
</div>
|
||||
</td>
|
||||
<td><span class='label-pri <?php echo 'label-pri-' . $story->pri;?>'><?php echo zget($lang->story->priList, $story->pri, $story->pri);?></span></td>
|
||||
<td class='text-left' title='<?php echo $products[$story->product]->name?>'><?php echo html::a($this->createLink('product', 'browse', "productID=$story->product&branch=$story->branch"), $products[$story->product]->name, '_blank');?></td>
|
||||
<td class='text-left' title='<?php echo zget($modules, $story->module, '')?>'><?php echo zget($modules, $story->module, '')?></td>
|
||||
<td class='text-left nobr' title="<?php echo $story->title?>"><?php echo html::a($storyLink, $story->title);?></td>
|
||||
<td title='<?php echo $story->planTitle;?>'><?php echo $story->planTitle;?></td>
|
||||
<td><?php echo zget($lang->story->stageList, $story->stage);?></td>
|
||||
<?php if($productType != 'normal'):?>
|
||||
<td><?php if(isset($branchGroups[$story->product][$story->branch])) echo $branchGroups[$story->product][$story->branch];?></td>
|
||||
</td>
|
||||
<td><span class='label-pri <?php echo 'label-pri-' . $story->pri;?>'><?php echo zget($lang->story->priList, $story->pri, $story->pri);?></span></td>
|
||||
<td class='text-left' title='<?php echo $products[$story->product]->name?>'><?php echo html::a($this->createLink('product', 'browse', "productID=$story->product&branch=$story->branch"), $products[$story->product]->name, '_blank');?></td>
|
||||
<td class='text-left' title='<?php echo zget($modules, $story->module, '')?>'><?php echo zget($modules, $story->module, '')?></td>
|
||||
<td class='text-left nobr' title="<?php echo $story->title?>"><?php echo html::a($storyLink, $story->title);?></td>
|
||||
<td title='<?php echo $story->planTitle;?>'><?php echo $story->planTitle;?></td>
|
||||
<td><?php echo zget($lang->story->stageList, $story->stage);?></td>
|
||||
<?php if($productType != 'normal'):?>
|
||||
<td><?php if(isset($branchGroups[$story->product][$story->branch])) echo $branchGroups[$story->product][$story->branch];?></td>
|
||||
<?php endif;?>
|
||||
<td><?php echo zget($users, $story->openedBy);?></td>
|
||||
<td class='text-center'><?php echo $story->estimate;?></td>
|
||||
</tr>
|
||||
<?php $storyCount++;?>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class='table-footer'>
|
||||
<?php if($storyCount):?>
|
||||
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
|
||||
<div class='table-actions btn-toolbar'>
|
||||
<?php echo html::submitButton('', '', 'btn');?>
|
||||
</div>
|
||||
<?php else:?>
|
||||
<div class='text'><?php echo $lang->project->whyNoStories;?></div>
|
||||
<?php endif;?>
|
||||
<td><?php echo zget($users, $story->openedBy, $story->openedBy);?></td>
|
||||
<td><?php echo $story->estimate;?></td>
|
||||
</tr>
|
||||
<?php $storyCount ++;?>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class='table-footer'>
|
||||
<?php if($storyCount):?>
|
||||
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
|
||||
<div class='table-actions btn-toolbar'>
|
||||
<?php echo html::submitButton();?>
|
||||
</div>
|
||||
<?php else:?>
|
||||
<div class='text'><?php echo $lang->project->whyNoStories;?></div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<script type='text/javascript'>
|
||||
$(function()
|
||||
{
|
||||
ajaxGetSearchForm()
|
||||
ajaxGetSearchForm();
|
||||
});
|
||||
</script>
|
||||
<?php include '../../common/view/footer.html.php';?>
|
||||
|
||||
@@ -20,33 +20,24 @@
|
||||
<div id="mainMenu" class="clearfix">
|
||||
<div id="sidebarHeader">
|
||||
<?php echo html::commonButton('<i class="icon icon-caret-left"></i>', '', 'btn btn-icon btn-sm btn-info sidebar-toggle');?>
|
||||
<?php if(!empty($module->name)):?>
|
||||
<div class="title" title='<?php echo $module->name?>'>
|
||||
<?php $removeLink = inlink('story', "projectID=$project->id&orderBy=$orderBy&type=$type¶m=0&recTotal=0&recPerPage={$pager->recPerPage}");?>
|
||||
<?php echo $module->name;?>
|
||||
<?php echo html::a($removeLink, "<i class='icon icon-sm icon-close'></i>", '', "class='text-muted'");?>
|
||||
</div>
|
||||
<?php else:?>
|
||||
<div class="title" title='<?php echo $project->name?>'><?php echo $project->name;?></div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-left">
|
||||
<?php if(common::hasPriv('project', 'story')) echo html::a($this->createLink('project', 'story', "project=$project->id"), "<span class='text'>{$lang->project->story}</span>", '', "class='btn btn-link btn-active-text'");?>
|
||||
<?php if(common::hasPriv('project', 'storykanban')) echo html::a($this->createLink('project', 'storykanban', "project=$project->id"), "<span class='text'>{$lang->project->kanban}</span>", '', "class='btn btn-link'");?>
|
||||
<?php if(common::hasPriv('project', 'story')) echo html::a($this->createLink('project', 'story', "projectID=$project->id"), "<span class='text'>{$lang->story->allStories}</span><span class='label label-light label-badge'>{$pager->recTotal}</span>", '', "class='btn btn-link btn-active-text'");?>
|
||||
<?php if(common::hasPriv('project', 'storykanban')) echo html::a($this->createLink('project', 'storykanban', "projectID=$project->id"), "<span class='text'>{$lang->project->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">
|
||||
<div class='btn-group'>
|
||||
<?php
|
||||
common::printIcon('story', 'export', "productID=$productID&orderBy=id_desc", '', 'button', '', '', 'export');
|
||||
|
||||
$this->lang->story->create = $this->lang->project->createStory;
|
||||
if($productID and !$this->loadModel('story')->checkForceReview())
|
||||
{
|
||||
echo "<div class='btn-group' id='createActionMenu'>";
|
||||
common::printIcon('story', 'create', "productID=$productID&branch=0&moduleID=0&story=0&project=$project->id");
|
||||
|
||||
$misc = common::hasPriv('story', 'batchCreate') ? '' : "disabled";
|
||||
$link = common::hasPriv('story', 'batchCreate') ? $this->createLink('story', 'batchCreate', "productID=$productID&branch=0&moduleID=0&story=0&project=$project->id") : '#';
|
||||
echo "<button type='button' class='btn btn-link dropdown-toggle {$misc}' data-toggle='dropdown'>";
|
||||
echo "<span class='caret'></span>";
|
||||
echo '</button>';
|
||||
echo "<ul class='dropdown-menu pull-right'>";
|
||||
echo "<li>" . html::a($link, $lang->story->batchCreate, '', "class='$misc'") . "</li>";
|
||||
echo '</ul>';
|
||||
echo '</div>';
|
||||
}
|
||||
common::printLink('story', 'export', "productID=$productID&orderBy=id_desc", "<i class='icon icon-export'> </i>" . $lang->story->export, '', "class='btn btn-link export'");
|
||||
|
||||
if(commonModel::isTutorialMode())
|
||||
{
|
||||
@@ -68,12 +59,17 @@
|
||||
}
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
$this->lang->story->create = $this->lang->project->createStory;
|
||||
if($productID and !$this->loadModel('story')->checkForceReview())
|
||||
{
|
||||
common::printLink('story', 'batchCreate', "productID=$productID&branch=0&moduleID=0&story=0&project=$project->id", "<i class='icon icon-plus'> </i>" . $lang->story->batchCreate, '', "class='btn btn-secondary'");
|
||||
common::printLink('story', 'create', "productID=$productID&branch=0&moduleID=0&story=0&project=$project->id", "<i class='icon icon-plus'> </i>" . $lang->story->create, '', "class='btn btn-primary'");
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id='queryBox' class='show'></div>
|
||||
<div id="mainContent" class="main-row">
|
||||
<div class='side-col' id='sidebar'>
|
||||
<div class="cell">
|
||||
@@ -81,6 +77,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="main-col">
|
||||
<div class="cell" id="queryBox"></div>
|
||||
<form class='main-table table-story' method='post' data-ride='table' id='projectStoryForm'>
|
||||
<div class="table-header">
|
||||
<div class="table-statistic"><?php echo $summary;?></div>
|
||||
@@ -106,7 +103,7 @@
|
||||
<?php if($canOrder):?>
|
||||
<th class='w-80px'> <?php common::printOrderLink('order', $orderBy, $vars, $lang->project->updateOrder);?></th>
|
||||
<?php endif;?>
|
||||
<th class='w-pri'> <?php common::printOrderLink('pri', $orderBy, $vars, $lang->priAB);?></th>
|
||||
<th class='c-pri'> <?php common::printOrderLink('pri', $orderBy, $vars, $lang->priAB);?></th>
|
||||
<th> <?php common::printOrderLink('title', $orderBy, $vars, $lang->story->title);?></th>
|
||||
<th class='w-user'> <?php common::printOrderLink('openedBy', $orderBy, $vars, $lang->openedByAB);?></th>
|
||||
<th class='w-80px'> <?php common::printOrderLink('assignedTo', $orderBy, $vars, $lang->assignedToAB);?></th>
|
||||
@@ -116,7 +113,7 @@
|
||||
<th title='<?php echo $lang->story->taskCount?>' class='w-30px'><?php echo $lang->story->taskCountAB;?></th>
|
||||
<th title='<?php echo $lang->story->bugCount?>' class='w-30px'><?php echo $lang->story->bugCountAB;?></th>
|
||||
<th title='<?php echo $lang->story->caseCount?>' class='w-30px'><?php echo $lang->story->caseCountAB;?></th>
|
||||
<th class='w-160px'><?php echo $lang->actions;?></th>
|
||||
<th class='c-actions-3 text-center'><?php echo $lang->actions;?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id='storyTableList' class='sortable'>
|
||||
@@ -126,14 +123,12 @@
|
||||
$totalEstimate += $story->estimate;
|
||||
?>
|
||||
<tr id="story<?php echo $story->id;?>" data-id='<?php echo $story->id;?>' data-order='<?php echo $story->order ?>' data-estimate='<?php echo $story->estimate?>' data-cases='<?php echo zget($storyCases, $story->id, 0)?>'>
|
||||
<td class='c-id'>
|
||||
<div class="checkbox-primary">
|
||||
<?php if($canBatchEdit or $canBatchClose):?>
|
||||
<input type='checkbox' name='storyIDList[<?php echo $story->id;?>]' value='<?php echo $story->id;?>' />
|
||||
<label></label>
|
||||
<?php endif;?>
|
||||
<?php printf('%03d', $story->id);?>
|
||||
</div>
|
||||
<td class='cell-id'>
|
||||
<?php if($canBatchEdit or $canBatchClose):?>
|
||||
<?php echo html::checkbox('storyIDList', array($story->id => sprintf('%03d', $story->id)));?>
|
||||
<?php else:?>
|
||||
<?php printf('%03d', $story->id);?>
|
||||
<?php endif;?>
|
||||
</td>
|
||||
<?php if($canOrder):?>
|
||||
<td class='sort-handler'><i class='icon-move'></i></td>
|
||||
|
||||
@@ -15,8 +15,8 @@
|
||||
<div class="title" title='<?php echo $project->name?>'><?php echo $project->name;?></div>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-left">
|
||||
<?php if(common::hasPriv('project', 'story')) echo html::a($this->createLink('project', 'story', "project=$project->id"), "<span class='text'>{$lang->project->story}</span>", '', "class='btn btn-link'");?>
|
||||
<?php if(common::hasPriv('project', 'storykanban')) echo html::a($this->createLink('project', 'storykanban', "project=$project->id"), "<span class='text'>{$lang->project->kanban}</span>", '', "class='btn btn-link btn-active-text'");?>
|
||||
<?php if(common::hasPriv('project', 'story')) echo html::a($this->createLink('project', 'story', "projectID=$project->id"), "<span class='text'>{$lang->story->allStories}</span>", '', "class='btn btn-link'");?>
|
||||
<?php if(common::hasPriv('project', 'storykanban')) echo html::a($this->createLink('project', 'storykanban', "projectID=$project->id"), "<span class='text'>{$lang->project->kanban}</span>", '', "class='btn btn-link btn-active-text'");?>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-right">
|
||||
<div class='btn-group'>
|
||||
|
||||
@@ -84,12 +84,6 @@ js::set('browseType', $browseType);
|
||||
}
|
||||
}
|
||||
|
||||
common::printLink('project', 'kanban', "projectID=$projectID", $lang->project->kanban, '', "id='kanbanTab' class='btn btn-link'");
|
||||
if($project->type == 'sprint' or $project->type == 'waterfall')
|
||||
{
|
||||
common::printLink('project', 'burn', "project=$projectID", $lang->project->burn, '', "id='burnTab' class='btn btn-link'");
|
||||
}
|
||||
common::printLink('project', 'tree', "projectID=$projectID", $lang->project->tree, '', "id='treeTab' class='btn btn-link'");
|
||||
echo "<div class='btn-group'>";
|
||||
$groupBy = isset($groupBy) ? $groupBy : '';
|
||||
$current = zget($lang->project->groups, isset($groupBy) ? $groupBy : '', '');
|
||||
|
||||
@@ -23,6 +23,7 @@ $lang->story->batchClose = 'Batch Close';
|
||||
$lang->story->activate = 'Activate';
|
||||
$lang->story->delete = "Delete";
|
||||
$lang->story->view = "Story Details";
|
||||
$lang->story->setting = "设置";
|
||||
$lang->story->tasks = "Linked Task";
|
||||
$lang->story->bugs = "Linked Bug";
|
||||
$lang->story->cases = "Linked Case";
|
||||
@@ -93,6 +94,8 @@ $lang->story->colorTag = 'Color Tag';
|
||||
$lang->story->files = 'Files';
|
||||
$lang->story->copy = "Duplicate a Story";
|
||||
$lang->story->total = "Total Stories";
|
||||
$lang->story->allStories = 'All';
|
||||
$lang->story->unclosed = 'Unclosed';
|
||||
|
||||
$lang->story->ditto = 'Ditto';
|
||||
$lang->story->dittoNotice = 'This Story does not belong to the same Product as the last Story does!';
|
||||
@@ -152,11 +155,11 @@ $lang->story->sourceList['tester'] = 'QA Team';
|
||||
$lang->story->sourceList['bug'] = 'Bug';
|
||||
$lang->story->sourceList['other'] = 'Other';
|
||||
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
|
||||
$lang->story->legendBasicInfo = 'Basic Info';
|
||||
$lang->story->legendLifeTime = 'Story Life ';
|
||||
|
||||
@@ -94,6 +94,7 @@ $lang->story->colorTag = '颜色标签';
|
||||
$lang->story->files = '附件';
|
||||
$lang->story->copy = "复制需求";
|
||||
$lang->story->total = '总需求';
|
||||
$lang->story->allStories = '所有需求';
|
||||
$lang->story->unclosed = '未关闭';
|
||||
|
||||
$lang->story->ditto = '同上';
|
||||
@@ -154,11 +155,11 @@ $lang->story->sourceList['tester'] = '测试人员';
|
||||
$lang->story->sourceList['bug'] = 'Bug';
|
||||
$lang->story->sourceList['other'] = '其他';
|
||||
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
|
||||
$lang->story->legendBasicInfo = '基本信息';
|
||||
$lang->story->legendLifeTime = '需求的一生';
|
||||
|
||||
@@ -94,6 +94,8 @@ $lang->story->colorTag = '顏色標籤';
|
||||
$lang->story->files = '附件';
|
||||
$lang->story->copy = "複製需求";
|
||||
$lang->story->total = '總需求';
|
||||
$lang->story->allStories = '所有需求';
|
||||
$lang->story->unclosed = '未關閉';
|
||||
|
||||
$lang->story->ditto = '同上';
|
||||
$lang->story->dittoNotice = '該需求與上一需求不屬於同一產品!';
|
||||
@@ -153,11 +155,11 @@ $lang->story->sourceList['tester'] = '測試人員';
|
||||
$lang->story->sourceList['bug'] = 'Bug';
|
||||
$lang->story->sourceList['other'] = '其他';
|
||||
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
$lang->story->priList[] = '';
|
||||
$lang->story->priList[3] = '3';
|
||||
$lang->story->priList[1] = '1';
|
||||
$lang->story->priList[2] = '2';
|
||||
$lang->story->priList[4] = '4';
|
||||
|
||||
$lang->story->legendBasicInfo = '基本信息';
|
||||
$lang->story->legendLifeTime = '需求的一生';
|
||||
|
||||
@@ -55,8 +55,8 @@
|
||||
<?php endforeach;?>
|
||||
<tr>
|
||||
<td colspan='5' class='text-center'>
|
||||
<?php echo html::submitButton();?>
|
||||
<?php echo html::backButton();?>
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -92,7 +92,8 @@
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td colspan="<?php echo count($visibleFields) + 3?>" class="text-center">
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary') . ' ' . html::backButton('', '', "btn btn-wide");?>
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide btn-gray");?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
@@ -45,12 +45,12 @@ foreach(explode(',', $showFields) as $field)
|
||||
<?php endif;?>
|
||||
<th class='w-150px'><?php echo $lang->story->module;?></th>
|
||||
<th class='w-150px<?php echo zget($visibleFields, 'plan', ' hidden')?>'><?php echo $lang->story->planAB;?></th>
|
||||
<th class='w-150px'> <?php echo $lang->story->title;?> <span class='required'></span></th>
|
||||
<th class='w-150px'><?php echo $lang->story->title;?> <span class='required'></span></th>
|
||||
<th class='w-50px<?php echo zget($visibleFields, 'estimate', ' hidden')?>'> <?php echo $lang->story->estimateAB;?></th>
|
||||
<th class='w-70px<?php echo zget($visibleFields, 'pri', ' hidden')?>'> <?php echo $lang->priAB;?></th>
|
||||
<th class='w-100px<?php echo zget($visibleFields, 'assignedTo', ' hidden')?>'> <?php echo $lang->story->assignedTo;?></th>
|
||||
<th class='w-100px<?php echo zget($visibleFields, 'source', ' hidden')?>'> <?php echo $lang->story->source;?></th>
|
||||
<th class='w-80px'> <?php echo $lang->story->status;?></th>
|
||||
<th class='w-80px'><?php echo $lang->story->status;?></th>
|
||||
<th class='w-100px<?php echo zget($visibleFields, 'stage', ' hidden')?>'> <?php echo $lang->story->stageAB;?></th>
|
||||
<th class='w-130px<?php echo zget($visibleFields, 'closedBy', ' hidden')?>'><?php echo $lang->story->closedBy;?></th>
|
||||
<th class='w-100px<?php echo zget($visibleFields, 'closedReason', ' hidden')?>'> <?php echo $lang->story->closedReason;?></th>
|
||||
@@ -132,7 +132,12 @@ foreach(explode(',', $showFields) as $field)
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr><td colspan='<?php echo count($visibleFields) + ($branchProduct ? 3 : 2);?>' class='text-center'><?php echo html::submitButton();?></td></tr>
|
||||
<tr>
|
||||
<td colspan='<?php echo count($visibleFields) + ($branchProduct ? 3 : 2);?>' class='text-center'>
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
@@ -109,13 +109,15 @@ $lang->task->lblPri = 'P';
|
||||
$lang->task->lblHour = '(h)';
|
||||
$lang->task->deniedNotice = '此任務只允許由團隊第一人開始。';
|
||||
|
||||
$lang->task->ditto = '同上';
|
||||
$lang->task->dittoNotice = "該任務與上一任務不屬於同一項目!";
|
||||
$lang->task->selectAllUser = '全部';
|
||||
$lang->task->noStory = '無需求';
|
||||
$lang->task->noAssigned = '未指派';
|
||||
$lang->task->noFinished = '未完成';
|
||||
$lang->task->noClosed = '未關閉';
|
||||
$lang->task->ditto = '同上';
|
||||
$lang->task->dittoNotice = "該任務與上一任務不屬於同一項目!";
|
||||
$lang->task->selectAllUser = '全部';
|
||||
$lang->task->noStory = '無需求';
|
||||
$lang->task->noAssigned = '未指派';
|
||||
$lang->task->noFinished = '未完成';
|
||||
$lang->task->noClosed = '未關閉';
|
||||
$lang->task->yesterdayFinished = '昨日完成';
|
||||
$lang->task->allTasks = '總任務';
|
||||
|
||||
$lang->task->statusList[''] = '';
|
||||
$lang->task->statusList['wait'] = '未開始';
|
||||
|
||||
@@ -166,7 +166,10 @@
|
||||
<td colspan='3'><?php echo html::radio('after', $lang->task->afterChoices, $this->config->global->flow == 'onlyTask' || !empty($task->id) ? 'toTaskList' : 'continueAdding');?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='4' class='text-center'><?php echo html::submitButton('', '', 'btn btn-primary btn-wide') . html::backButton('', '', 'btn btn-gray btn-wide');?></td>
|
||||
<td colspan='4' class='text-center'>
|
||||
<?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-gray btn-wide');?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -196,7 +199,9 @@
|
||||
</tr>
|
||||
<?php endfor;?>
|
||||
<tr>
|
||||
<td colspan='3' class='text-center'><?php echo html::a('javascript:void(0)', $lang->confirm, '', "class='btn btn-primary' data-dismiss='modal'") ?></td>
|
||||
<td colspan='3' class='text-center'>
|
||||
<?php echo html::a('javascript:void(0)', $lang->confirm, '', "class='btn btn-primary' data-dismiss='modal'");?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -190,7 +190,7 @@
|
||||
<?php
|
||||
echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary');
|
||||
echo ' ';
|
||||
echo html::backButton($lang->goback, '', 'btn btn-wide');
|
||||
echo html::backButton($lang->goback, '', 'btn btn-wide btn-gray');
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
<div class="row form-group form-actions">
|
||||
<div class="col-sm-offset-2 col-sm-10">
|
||||
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide');?>
|
||||
<?php echo html::backButton('', '', 'btn btn-wide btn-gray');?>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -829,7 +829,7 @@ class treeModel extends model
|
||||
{
|
||||
$projectID = $extra['projectID'];
|
||||
$productID = $extra['productID'];
|
||||
return html::a(helper::createLink('project', 'story', "root={$projectID}&orderBy=&type=byModule¶m={$module->id}"), $module->name, '_self', "id='module{$module->id}'");
|
||||
return html::a(helper::createLink('project', 'story', "projectID={$projectID}&orderBy=&type=byModule¶m={$module->id}"), $module->name, '_self', "id='module{$module->id}'");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -102,7 +102,8 @@
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td colspan="<?php echo count($visibleFields) + 6?>" class="text-center">
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary') . ' ' . html::backButton('', '', "btn btn-wide");?>
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide btn-gray");?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
@@ -94,7 +94,8 @@
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td colspan="<?php echo count($visibleFields) + 4;?>" class="text-center">
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary') . ' ' . html::backButton('', '', "btn btn-wide");?>
|
||||
<?php echo html::submitButton($lang->save, '', 'btn btn-wide btn-primary');?>
|
||||
<?php echo html::backButton('', '', "btn btn-wide btn-gray");?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
Reference in New Issue
Block a user