* finish task #1295.
This commit is contained in:
@@ -393,6 +393,13 @@ class bugModel extends model
|
||||
public function update($bugID)
|
||||
{
|
||||
$oldBug = $this->getById($bugID);
|
||||
if($oldBug->lastEditedDate != $this->post->lastEditedDate)
|
||||
{
|
||||
dao::$errors[] = $this->lang->error->hasEdited;
|
||||
return false;
|
||||
}
|
||||
unset($_POST['lastEditedDate']);
|
||||
|
||||
$now = helper::now();
|
||||
$bug = fixer::input('post')
|
||||
->cleanInt('product,module,severity,project,story,task')
|
||||
|
||||
@@ -56,6 +56,7 @@ js::set('oldResolvedBuild' , $bug->resolvedBuild);
|
||||
</fieldset>
|
||||
<div class='actions'>
|
||||
<?php
|
||||
echo html::hidden('lastEditedDate', $bug->lastEditedDate);
|
||||
echo html::submitButton();
|
||||
$browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");
|
||||
echo html::linkButton($lang->goback, $browseLink);
|
||||
|
||||
@@ -364,6 +364,7 @@ $lang->error->passwordrule = "Password should more than six letters.";
|
||||
$lang->error->accessDenied = 'No purview';
|
||||
$lang->error->pasteImg = 'Your browser does not support the paste image!';
|
||||
$lang->error->noData = 'No data';
|
||||
$lang->error->hasEdited = 'The record may have been changed. Please refresh and re edit!';
|
||||
|
||||
/* Pager. */
|
||||
$lang->pager = new stdclass();
|
||||
|
||||
@@ -364,6 +364,7 @@ $lang->error->passwordrule = "密码应该符合规则,长度至少为六
|
||||
$lang->error->accessDenied = '您没有访问权限';
|
||||
$lang->error->pasteImg = '您的浏览器不支持粘贴图片!';
|
||||
$lang->error->noData = '没有数据';
|
||||
$lang->error->hasEdited = '该记录可能已经被改动。请刷新页面重新编辑!';
|
||||
|
||||
/* 分页信息。*/
|
||||
$lang->pager = new stdclass();
|
||||
|
||||
@@ -222,10 +222,7 @@ class project extends control
|
||||
|
||||
/* team member pairs. */
|
||||
$memberPairs = array();
|
||||
foreach($this->view->teamMembers as $key => $member)
|
||||
{
|
||||
$memberPairs[$key] = $member->realname;
|
||||
}
|
||||
foreach($this->view->teamMembers as $key => $member) $memberPairs[$key] = $member->realname;
|
||||
|
||||
/* Assign. */
|
||||
$this->view->tasks = $tasks;
|
||||
|
||||
+15
-3
@@ -342,7 +342,14 @@ class storyModel extends model
|
||||
{
|
||||
$specChanged = false;
|
||||
$oldStory = $this->getById($storyID);
|
||||
$story = fixer::input('post')->stripTags($this->config->story->editor->change['id'], $this->config->allowedTags)->get();
|
||||
if($oldStory->lastEditedDate != $this->post->lastEditedDate)
|
||||
{
|
||||
dao::$errors[] = $this->lang->error->hasEdited;
|
||||
return false;
|
||||
}
|
||||
unset($_POST['lastEditedDate']);
|
||||
|
||||
$story = fixer::input('post')->stripTags($this->config->story->editor->change['id'], $this->config->allowedTags)->get();
|
||||
if($story->spec != $oldStory->spec or $story->verify != $oldStory->verify or $story->title != $oldStory->title or $this->loadModel('file')->getCount()) $specChanged = true;
|
||||
|
||||
$now = helper::now();
|
||||
@@ -399,6 +406,12 @@ class storyModel extends model
|
||||
{
|
||||
$now = helper::now();
|
||||
$oldStory = $this->getById($storyID);
|
||||
if($oldStory->lastEditedDate != $this->post->lastEditedDate)
|
||||
{
|
||||
dao::$errors[] = $this->lang->error->hasEdited;
|
||||
return false;
|
||||
}
|
||||
unset($_POST['lastEditedDate']);
|
||||
|
||||
$story = fixer::input('post')
|
||||
->cleanInt('product,module,pri')
|
||||
@@ -1192,14 +1205,13 @@ class storyModel extends model
|
||||
{
|
||||
$stories = $this->dao->select('*')->from(TABLE_STORY)
|
||||
->where('product')->in($productID)
|
||||
->beginIF($branch)->andWhere("branch")->eq($branch)->fi()
|
||||
->andWhere('deleted')->eq(0)
|
||||
->andWhere('stage')->in('developed,released')
|
||||
->andWhere('status')->ne('closed')
|
||||
->orderBy($orderBy)
|
||||
->page($pager)
|
||||
->fetchAll('id');
|
||||
$stages = $this->dao->select('*')->from(TABLE_STORYSTAGE)->where('story')->in(array_keys($stories))->andWhere('stage')->notIN('released')->fetchPairs('story', 'story');
|
||||
foreach($stages as $storyID) unset($stories[$storyID]);
|
||||
return $this->mergePlanTitle($productID, $stories, $branch);
|
||||
}
|
||||
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
<tr>
|
||||
<td></td><td class='text-center'>
|
||||
<?php
|
||||
echo html::hidden('lastEditedDate', $story->lastEditedDate);
|
||||
echo html::submitButton('', '', 'btn-primary');
|
||||
echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"));
|
||||
?>
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
</fieldset>
|
||||
<div class='actions actions-form'>
|
||||
<?php
|
||||
echo html::hidden('lastEditedDate', $story->lastEditedDate);
|
||||
echo html::submitButton($lang->save);
|
||||
echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"));
|
||||
?>
|
||||
|
||||
@@ -187,6 +187,13 @@ class taskModel extends model
|
||||
public function update($taskID)
|
||||
{
|
||||
$oldTask = $this->getById($taskID);
|
||||
if($oldTask->lastEditedDate != $this->post->lastEditedDate)
|
||||
{
|
||||
dao::$errors[] = $this->lang->error->hasEdited;
|
||||
return false;
|
||||
}
|
||||
unset($_POST['lastEditedDate']);
|
||||
|
||||
$now = helper::now();
|
||||
$task = fixer::input('post')
|
||||
->setDefault('story, estimate, left, consumed', 0)
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
<div class='form-group'><?php echo $this->fetch('file', 'buildform');?></div>
|
||||
</fieldset>
|
||||
<div class='actions actions-form'>
|
||||
<?php echo html::hidden('lastEditedDate', $task->lastEditedDate);?>
|
||||
<?php echo html::submitButton($lang->save) . html::linkButton($lang->goback, $this->inlink('view', "taskID=$task->id")) .html::hidden('consumed', $task->consumed);?>
|
||||
</div>
|
||||
<?php include '../../common/view/action.html.php';?>
|
||||
|
||||
@@ -226,6 +226,13 @@ class testcaseModel extends model
|
||||
public function update($caseID)
|
||||
{
|
||||
$oldCase = $this->getById($caseID);
|
||||
if($oldCase->lastEditedDate != $this->post->lastEditedDate)
|
||||
{
|
||||
dao::$errors[] = $this->lang->error->hasEdited;
|
||||
return false;
|
||||
}
|
||||
unset($_POST['lastEditedDate']);
|
||||
|
||||
$now = helper::now();
|
||||
$stepChanged = false;
|
||||
$steps = array();
|
||||
|
||||
@@ -76,8 +76,9 @@
|
||||
<div class='form-group'><?php echo $this->fetch('file', 'buildform');?></div>
|
||||
</fieldset>
|
||||
<div class='text-center mgb-20'>
|
||||
<?php echo html::submitButton();?>
|
||||
<input type='button' value='<?php echo $lang->testcase->buttonToList;?>' class='btn' onclick='location.href="<?php echo $this->createLink('testcase', 'browse', "productID=$productID");?>"' />
|
||||
<?php echo html::hidden('lastEditedDate', $case->lastEditedDate);?>
|
||||
<?php echo html::submitButton();?>
|
||||
<input type='button' value='<?php echo $lang->testcase->buttonToList;?>' class='btn' onclick='location.href="<?php echo $this->createLink('testcase', 'browse', "productID=$productID");?>"' />
|
||||
</div>
|
||||
<?php include '../../common/view/action.html.php';?>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user