sprint_sunjun_201

This commit is contained in:
sunjun
2022-06-10 04:29:30 +00:00
parent 32aaa90fd0
commit e21aff2d5d
6 changed files with 278 additions and 21 deletions
+25 -3
View File
@@ -305,7 +305,7 @@ EOF;
* @access public
* @return void
*/
public function story($type = 'assignedTo', $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
public function story($type = 'assignedTo', $param = 0, $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
{
$this->loadModel('story');
/* Save session. */
@@ -318,11 +318,16 @@ EOF;
/* Append id for secend sort. */
$sort = common::appendOrder($orderBy);
$queryID = ($type == 'bysearch') ? (int)$param : 0;
if($type == 'assignedBy')
{
$stories = $this->loadModel('my')->getAssignedByMe($this->app->user->account, '', $pager, $orderBy, '', 'story');
}
elseif($type == 'bysearch')
{
$stories = $this->my->getStoriesBySearch($queryID, $this->app->rawMethod, $orderBy, $pager);
}
else
{
$stories = $this->loadModel('story')->getUserStories($this->app->user->account, $type, $sort, $pager, 'story', false);
@@ -330,6 +335,11 @@ EOF;
if(!empty($stories)) $stories = $this->story->mergeReviewer($stories);
/* Build the search form. */
$currentMethod = $this->app->rawMethod;
$actionURL = $this->createLink('my', $currentMethod, "mode=story&type=bysearch&param=myQueryID&orderBy={$orderBy}&recTotal={$recTotal}&recPerPage={$recPerPage}&pageID={$pageID}");
$this->my->buildStorySearchForm($queryID, $actionURL, $currentMethod);
/* Assign. */
$this->view->title = $this->lang->my->common . $this->lang->colon . $this->lang->my->story;
$this->view->position[] = $this->lang->my->story;
@@ -337,6 +347,7 @@ EOF;
$this->view->users = $this->user->getPairs('noletter');
$this->view->projects = $this->loadModel('project')->getPairsByProgram();
$this->view->type = $type;
$this->view->param = $param;
$this->view->recTotal = $recTotal;
$this->view->recPerPage = $recPerPage;
$this->view->pageID = $pageID;
@@ -358,7 +369,7 @@ EOF;
* @access public
* @return void
*/
public function requirement($type = 'assignedTo', $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
public function requirement($type = 'assignedTo', $param = 0, $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
{
/* Save session. */
$this->loadModel('story');
@@ -371,11 +382,16 @@ EOF;
/* Append id for secend sort. */
$sort = common::appendOrder($orderBy);
$queryID = ($type == 'bysearch') ? (int)$param : 0;
if($type == 'assignedBy')
{
$stories = $this->loadModel('my')->getAssignedByMe($this->app->user->account, '', $pager, $orderBy, '', 'requirement');
}
elseif($type == 'bysearch')
{
$stories = $this->my->getRequirementsBySearch($queryID, $this->app->rawMethod, $orderBy, $pager);
}
else
{
$stories = $this->loadModel('story')->getUserStories($this->app->user->account, $type, $sort, $pager, 'requirement');
@@ -383,6 +399,11 @@ EOF;
if(!empty($stories)) $stories = $this->story->mergeReviewer($stories);
/* Build the search form. */
$currentMethod = $this->app->rawMethod;
$actionURL = $this->createLink('my', $currentMethod, "mode=requirement&type=bysearch&param=myQueryID&orderBy={$orderBy}&recTotal={$recTotal}&recPerPage={$recPerPage}&pageID={$pageID}");
$this->my->buildRequirementSearchForm($queryID, $actionURL, $currentMethod);
/* Assign. */
$this->view->title = $this->lang->my->common . $this->lang->colon . $this->lang->my->story;
$this->view->position[] = $this->lang->my->story;
@@ -390,6 +411,7 @@ EOF;
$this->view->users = $this->user->getPairs('noletter');
$this->view->projects = $this->loadModel('project')->getPairsByProgram();
$this->view->type = $type;
$this->view->param = $param;
$this->view->recTotal = $recTotal;
$this->view->recPerPage = $recPerPage;
$this->view->pageID = $pageID;
@@ -657,7 +679,6 @@ EOF;
/* Build the search form. */
$currentMethod = $this->app->rawMethod;
$actionURL = $this->createLink('my', $currentMethod, "mode=testcase&type=bysearch&param=myQueryID&orderBy={$orderBy}&recTotal={$recTotal}&recPerPage={$recPerPage}&pageID={$pageID}");
$this->config->testcase->search['onMenuBar'] = 'yes';
$this->my->buildTestcaseSearchForm($queryID, $actionURL, $currentMethod);
/* Assign. */
@@ -667,6 +688,7 @@ EOF;
$this->view->users = $this->user->getPairs('noletter');
$this->view->tabID = 'test';
$this->view->type = $type;
$this->view->param = $param;
$this->view->summary = $this->testcase->summary($cases);
$this->view->recTotal = $recTotal;
$this->view->recPerPage = $recPerPage;
+233 -3
View File
@@ -397,8 +397,8 @@ class myModel extends model
$this->config->testcase->search['module'] = $queryName;
$this->config->testcase->search['queryID'] = $queryID;
$this->config->testcase->search['actionURL'] = $actionURL;
$this->config->testcase->search['params']['product']['values'] = $products;
$this->config->testcase->search['params']['lib']['values'] = $this->loadModel('caselib')->getLibraries();
$this->config->testcase->search['params']['product']['values'] = array('' => '') + $products;
$this->config->testcase->search['params']['lib']['values'] = array('' => '') + $this->loadModel('caselib')->getLibraries();
unset($this->config->testcase->search['fields']['module']);
@@ -418,13 +418,14 @@ class myModel extends model
public function getTestcasesBySearch($queryID, $type, $orderBy, $pager)
{
$queryName = $type == 'contribute' ? 'contributeTestcaseQuery' : 'workTestcaseQuery';
$queryForm = $type == 'openedbyme' ? 'contributeTestcaseForm' : 'workTestcaseForm';
if($queryID)
{
$query = $this->loadModel('search')->getQuery($queryID);
if($query)
{
$this->session->set($queryName, $query->sql);
$this->session->set($queryName . 'Form', $query->form);
$this->session->set($queryForm, $query->form);
}
else
{
@@ -718,4 +719,233 @@ class myModel extends model
return $risks;
}
/**
* Build Story search form.
*
* @param int $queryID
* @param string $actionURL
* @param string $type
* @access public
* @return void
*/
public function buildStorySearchForm($queryID, $actionURL, $type)
{
$products = $this->dao->select('id,name')->from(TABLE_PRODUCT)
->where('deleted')->eq(0)
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->products)->fi()
->orderBy('order_asc')
->fetchPairs();
$productIdList = array_keys($products);
$branchParam = '';
$queryName = $type == 'contribute' ? 'contributeStory' : 'workStory';
$this->app->loadConfig('product');
$this->config->product->search['module'] = $queryName;
$this->config->product->search['queryID'] = $queryID;
$this->config->product->search['actionURL'] = $actionURL;
$this->config->product->search['params']['product']['values'] = array('' => '') + $products;
$this->config->product->search['params']['plan']['values'] = array('' => '') + $this->loadModel('productplan')->getPairs($productIdList, $branchParam);
unset($this->config->product->search['fields']['module']);
$this->loadModel('search')->setSearchParams($this->config->product->search);
}
/**
* Get stories by search.
*
* @param int $queryID
* @param string $type
* @param string $orderBy
* @param int $pager
* @access public
* @return array
*/
public function getStoriesBySearch($queryID, $type, $orderBy, $pager)
{
$queryName = $type == 'contribute' ? 'contributeStoryQuery' : 'workStoryQuery';
$queryForm = $type == 'contribute' ? 'contributeStoryForm' : 'workStoryForm';
if($queryID)
{
$query = $this->loadModel('search')->getQuery($queryID);
if($query)
{
$this->session->set($queryName, $query->sql);
$this->session->set($queryForm, $query->form);
}
else
{
$this->session->set($queryName, ' 1 = 1');
}
}
else
{
if($this->session->$queryName == false) $this->session->set($queryName, ' 1 = 1');
}
$myStoryQuery = $this->session->$queryName;
$myStoryQuery = preg_replace('/`(\w+)`/', 't1.`$1`', $myStoryQuery);
$storyIDList = array();
if($type == 'contribute')
{
$storiesAssignedByMe = $this->getAssignedByMe($this->app->user->account, '', $pager, $orderBy, '', 'story');
foreach($storiesAssignedByMe as $storyID => $story)
{
$storyIDList[$storyID] = $storyID;
}
$stories = $this->dao->select('distinct t1.*, t2.name as productTitle, t4.title as planTitle')->from(TABLE_STORY)->alias('t1')
->leftJoin(TABLE_PRODUCT)->alias('t2')->on('t1.product = t2.id')
->leftJoin(TABLE_PLANSTORY)->alias('t3')->on('t1.id = t3.plan')
->leftJoin(TABLE_PRODUCTPLAN)->alias('t4')->on('t3.plan = t4.id')
->leftJoin(TABLE_STORYREVIEW)->alias('t5')->on('t1.id = t5.story')
->where($myStoryQuery)
->andWhere('t1.type')->eq('story')
->andWhere('t1.openedBy',1)->eq($this->app->user->account)
->orWhere('t5.reviewer')->eq($this->app->user->account)
->orWhere('t1.closedBy')->eq($this->app->user->account)
->orWhere('t1.id')->in($storyIDList)
->markRight(1)
->andWhere('t1.deleted')->eq(0)
->orderBy($orderBy)
->page($pager, 't1.id')
->fetchAll('id');
}
else
{
$stories = $this->dao->select('distinct t1.*, t2.name as productTitle, t4.title as planTitle')->from(TABLE_STORY)->alias('t1')
->leftJoin(TABLE_PRODUCT)->alias('t2')->on('t1.product = t2.id')
->leftJoin(TABLE_PLANSTORY)->alias('t3')->on('t1.id = t3.plan')
->leftJoin(TABLE_PRODUCTPLAN)->alias('t4')->on('t3.plan = t4.id')
->leftJoin(TABLE_STORYREVIEW)->alias('t5')->on('t1.id = t5.story')
->where($myStoryQuery)
->andWhere('t1.type')->eq('story')
->andWhere('t1.assignedTo',1)->eq($this->app->user->account)
->orWhere('t5.reviewer')->eq($this->app->user->account)
->markRight(1)
->andWhere('t1.deleted')->eq(0)
->orderBy($orderBy)
->page($pager, 't1.id')
->fetchAll('id');
}
return $stories;
}
/**
* Build Requirement search form.
*
* @param int $queryID
* @param string $actionURL
* @param string $type
* @access public
* @return void
*/
public function buildRequirementSearchForm($queryID, $actionURL, $type)
{
$products = $this->dao->select('id,name')->from(TABLE_PRODUCT)
->where('deleted')->eq(0)
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->products)->fi()
->orderBy('order_asc')
->fetchPairs();
$productIdList = array_keys($products);
$branchParam = '';
$queryName = $type == 'contribute' ? 'contributeRequirement' : 'workRequirement';
$this->app->loadConfig('product');
$this->config->product->search['module'] = $queryName;
$this->config->product->search['queryID'] = $queryID;
$this->config->product->search['actionURL'] = $actionURL;
$this->config->product->search['params']['product']['values'] = array('' => '') + $products;
$this->config->product->search['params']['plan']['values'] = array('' => '') + $this->loadModel('productplan')->getPairs($productIdList, $branchParam);
$this->lang->story->title = str_replace($this->lang->SRCommon, $this->lang->URCommon, $this->lang->story->title);
$this->lang->story->create = str_replace($this->lang->SRCommon, $this->lang->URCommon, $this->lang->story->create);
$this->config->product->search['fields']['title'] = $this->lang->story->title;
unset($this->config->product->search['fields']['plan']);
unset($this->config->product->search['fields']['stage']);
unset($this->config->product->search['fields']['module']);
$this->loadModel('search')->setSearchParams($this->config->product->search);
}
/**
* Get requirements by search.
*
* @param int $queryID
* @param string $type
* @param string $orderBy
* @param int $pager
* @access public
* @return array
*/
public function getRequirementsBySearch($queryID, $type, $orderBy, $pager)
{
$queryName = $type == 'contribute' ? 'contributeRequirementQuery' : 'workRequirementQuery';
$queryForm = $type == 'contribute' ? 'contributeRequirementForm' : 'workRequirementForm';
if($queryID)
{
$query = $this->loadModel('search')->getQuery($queryID);
if($query)
{
$this->session->set($queryName, $query->sql);
$this->session->set($queryForm, $query->form);
}
else
{
$this->session->set($queryName, ' 1 = 1');
}
}
else
{
if($this->session->$queryName == false) $this->session->set($queryName, ' 1 = 1');
}
$myRequirementQuery = $this->session->$queryName;
$myRequirementQuery = preg_replace('/`(\w+)`/', 't1.`$1`', $myRequirementQuery);
$requirementIDList = array();
if($type == 'contribute')
{
$requirementsAssignedByMe = $this->getAssignedByMe($this->app->user->account, '', $pager, $orderBy, '', 'requirement');
foreach($requirementsAssignedByMe as $requirementID => $requirement)
{
$requirementIDList[$requirementID] = $requirementID;
}
$requirements = $this->dao->select('distinct t1.*, t2.name as productTitle')->from(TABLE_STORY)->alias('t1')
->leftJoin(TABLE_PRODUCT)->alias('t2')->on('t1.product = t2.id')
->leftJoin(TABLE_STORYREVIEW)->alias('t3')->on('t1.id = t3.story')
->where($myRequirementQuery)
->andWhere('t1.type')->eq('requirement')
->andWhere('t1.openedBy',1)->eq($this->app->user->account)
->orWhere('t1.closedBy')->eq($this->app->user->account)
->orWhere('t5.reviewer')->eq($this->app->user->account)
->orWhere('t1.id')->in($requirementIDList)
->markRight(1)
->andWhere('t1.deleted')->eq(0)
->orderBy($orderBy)
->page($pager, 't1.id')
->fetchAll('id');
}
else
{
$requirements = $this->dao->select('distinct t1.*, t2.name as productTitle')->from(TABLE_STORY)->alias('t1')
->leftJoin(TABLE_PRODUCT)->alias('t2')->on('t1.product = t2.id')
->leftJoin(TABLE_STORYREVIEW)->alias('t3')->on('t1.id = t3.story')
->where($myRequirementQuery)
->andWhere('t1.type')->eq('requirement')
->andWhere('t1.assignedTo',1)->eq($this->app->user->account)
->orWhere('t3.reviewer')->eq($this->app->user->account)
->markRight(1)
->andWhere('t1.deleted')->eq(0)
->orderBy($orderBy)
->page($pager, 't1.id')
->fetchAll('id');
}
return $requirements;
}
}
+9 -7
View File
@@ -20,20 +20,22 @@
$recTotalLabel = " <span class='label label-light label-badge'>{$pager->recTotal}</span>";
if($app->rawMethod == 'contribute')
{
echo html::a(inlink($app->rawMethod, "mode=requirement&type=openedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->openedByMe}</span>" . ($type == 'openedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'openedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=reviewedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewedByMe}</span>" . ($type == 'reviewedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=closedBy&&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->closedByMe}</span>" . ($type == 'closedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'closedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=assignedBy&&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedByMe}</span>" . ($type == 'assignedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=openedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->openedByMe}</span>" . ($type == 'openedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'openedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=reviewedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewedByMe}</span>" . ($type == 'reviewedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=closedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->closedByMe}</span>" . ($type == 'closedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'closedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=assignedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedByMe}</span>" . ($type == 'assignedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedBy' ? ' btn-active-text' : '') . "'");
}
else
{
echo html::a(inlink($app->rawMethod, "mode=requirement&type=assignedTo&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedToMe}</span>" . ($type == 'assignedTo' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedTo' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=reviewBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewByMe}</span>" . ($type == 'reviewBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=assignedTo&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedToMe}</span>" . ($type == 'assignedTo' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedTo' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=requirement&type=reviewBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewByMe}</span>" . ($type == 'reviewBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewBy' ? ' btn-active-text' : '') . "'");
}
?>
<a class="btn btn-link querybox-toggle" id='bysearchTab'><i class="icon icon-search muted"></i><?php $this->loadModel('search');echo $lang->search->common;?></a>
</div>
</div>
<div id="mainContent">
<div class="cell<?php if($type == 'bysearch') echo ' show';?>" id="queryBox" data-module=<?php echo ($app->rawMethod == 'contribute' ? 'contributeRequirement' : 'workRequirement');?>></div>
<?php if(!$stories):?>
<div class="table-empty-tip">
<p><span class="text-muted"><?php echo sprintf($lang->my->noData, $lang->URCommon);?></span></p>
@@ -41,7 +43,7 @@
<?php else:?>
<form id='myStoryForm' class="main-table table-story" data-ride="table" method="post">
<table id='storyList' class="table has-sort-head table-fixed">
<?php $vars = "mode=$mode&type=$type&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID"; ?>
<?php $vars = "mode=$mode&type=$type&param=$param&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID"; ?>
<?php
$canBatchEdit = common::hasPriv('story', 'batchEdit');
$canBatchClose = (common::hasPriv('story', 'batchClose') and strtolower($type) != 'closedby');
+9 -7
View File
@@ -20,20 +20,22 @@
$recTotalLabel = " <span class='label label-light label-badge'>{$pager->recTotal}</span>";
if($app->rawMethod == 'contribute')
{
echo html::a(inlink($app->rawMethod, "mode=story&type=openedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->openedByMe}</span>" . ($type == 'openedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'openedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=reviewedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewedByMe}</span>" . ($type == 'reviewedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=closedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->closedByMe}</span>" . ($type == 'closedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'closedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=assignedBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedByMe}</span>" . ($type == 'assignedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=openedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->openedByMe}</span>" . ($type == 'openedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'openedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=reviewedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewedByMe}</span>" . ($type == 'reviewedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=closedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->closedByMe}</span>" . ($type == 'closedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'closedBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=assignedBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedByMe}</span>" . ($type == 'assignedBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedBy' ? ' btn-active-text' : '') . "'");
}
else
{
echo html::a(inlink($app->rawMethod, "mode=story&type=assignedTo&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedToMe}</span>" . ($type == 'assignedTo' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedTo' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=reviewBy&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewByMe}</span>" . ($type == 'reviewBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewBy' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=assignedTo&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->assignedToMe}</span>" . ($type == 'assignedTo' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'assignedTo' ? ' btn-active-text' : '') . "'");
echo html::a(inlink($app->rawMethod, "mode=story&type=reviewBy&param=$param&orderBy=$orderBy&recTotal=$recTotal&recPerPage=$recPerPage&pagerID=$pageID"), "<span class='text'>{$lang->my->storyMenu->reviewByMe}</span>" . ($type == 'reviewBy' ? $recTotalLabel : ''), '', "class='btn btn-link" . ($type == 'reviewBy' ? ' btn-active-text' : '') . "'");
}
?>
<a class="btn btn-link querybox-toggle" id='bysearchTab'><i class="icon icon-search muted"></i><?php $this->loadModel('search');echo $lang->search->common;?></a>
</div>
</div>
<div id="mainContent">
<div class="cell<?php if($type == 'bysearch') echo ' show';?>" id="queryBox" data-module=<?php echo ($app->rawMethod == 'contribute' ? 'contributeStory' : 'workStory');?>></div>
<?php if(!$stories):?>
<div class="table-empty-tip">
<p><span class="text-muted"><?php echo sprintf($lang->my->noData, $lang->SRCommon);?></span></p>
@@ -41,7 +43,7 @@
<?php else:?>
<form id='myStoryForm' class="main-table table-story" data-ride="table" method="post">
<table id='storyList' class="table has-sort-head table-fixed">
<?php $vars = "mode=$mode&type=$type&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID"; ?>
<?php $vars = "mode=$mode&type=$type&param=$param&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID"; ?>
<?php
$canBatchEdit = common::hasPriv('story', 'batchEdit');
$canBatchClose = (common::hasPriv('story', 'batchClose') and strtolower($type) != 'closedby');
+1 -1
View File
@@ -41,7 +41,7 @@
<form id='myCaseForm' class="main-table table-case" data-ride="table" method="post">
<table class="table has-sort-head" id='caseList'>
<?php
$vars = "mode=$mode&type=$type&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID";
$vars = "mode=$mode&type=$type&param=$param&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID";
$this->app->loadLang('testtask');
$canBatchRun = (common::hasPriv('testtask', 'batchRun') and $type == 'assigntome');
$canBatchEdit = (common::hasPriv('testcase', 'batchEdit') and $type == 'assigntome');
+1
View File
@@ -89,6 +89,7 @@ $config->product->search['params']['closedDate'] = array('operator' => '=',
$config->product->search['params']['lastEditedDate'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$config->product->search['params']['activatedDate'] = array('operator' => '=', 'control' => 'input', 'values' => '', 'class' => 'date');
$app->loadLang('product');
$config->product->all = new stdclass();
$config->product->all->search['module'] = 'product';
$config->product->all->search['fields']['name'] = $lang->product->name;