* Finish task #75241.

This commit is contained in:
daitingting
2022-11-09 07:58:34 +00:00
parent ce1458946e
commit 4632027f9c
3 changed files with 30 additions and 18 deletions
+6 -8
View File
@@ -126,10 +126,10 @@ class release extends control
if(!empty($changes)) $this->action->logHistory($actionID, $changes);
}
$message = $this->executeHooks($releaseID);
if($message) $this->lang->saveSuccess = $message;
$result = $this->executeHooks($releaseID);
$message = $result ? $result : $this->lang->saveSuccess;
return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'locate' => inlink('view', "releaseID=$releaseID")));
return $this->send(array('result' => 'success', 'message' => $message, 'locate' => inlink('view', "releaseID=$releaseID")));
}
$this->loadModel('story');
$this->loadModel('bug');
@@ -137,11 +137,10 @@ class release extends control
/* Get release and build. */
$release = $this->release->getById((int)$releaseID);
$this->commonAction($release->product, $release->branch);
$build = $this->build->getById($release->build);
$this->commonAction($release->product);
$builds = $this->loadModel('build')->getBuildPairs($release->product, $release->branch, 'notrunk|withbranch', $release->project, 'project', $release->build, false);
$releasedBuilds = $this->release->getReleasedBuilds($release->product, $release->branch);
$builds = $this->loadModel('build')->getBuildPairs($release->product, $release->branch, 'notrunk|withbranch', 0, 'project', $release->build, false);
$releasedBuilds = $this->release->getReleasedBuilds($release->product);
foreach($releasedBuilds as $releasedBuild)
{
if($releasedBuild != $build->id) unset($builds[$releasedBuild]);
@@ -151,7 +150,6 @@ class release extends control
$this->view->title = $this->view->product->name . $this->lang->colon . $this->lang->release->edit;
$this->view->position[] = $this->lang->release->edit;
$this->view->release = $release;
$this->view->build = $build;
$this->view->builds = $builds;
$this->view->users = $this->loadModel('user')->getPairs('noclosed');
+16 -5
View File
@@ -1,10 +1,21 @@
$('#submit').click(function()
{
var dateFormat = new RegExp(/^\d{4}\-\d{2}\-\d{2}$/);
var name = $('#name').val();
var date = $('#date').val();
var build = $('#build').val();
if(name && build && typeof(notEmptyBuilds[build]) != 'undefined' && dateFormat.test(date))
var dateFormat = new RegExp(/^\d{4}\-\d{2}\-\d{2}$/);
var name = $('#name').val();
var date = $('#date').val();
var build = $('#build').val();
var notEmptyBuild = false;
$.each(build, function(index, value)
{
if(typeof(notEmptyBuilds[value]) != 'undefined')
{
notEmptyBuild = true;
return false;
}
})
if(name && build && notEmptyBuild && dateFormat.test(date))
{
var result = confirm(confirmLink) ? true : false;
$('#sync').val(result);
+8 -5
View File
@@ -264,11 +264,9 @@ class releaseModel extends model
/* Init vars. */
$releaseID = (int)$releaseID;
$oldRelease = $this->getById($releaseID);
$branch = $this->dao->select('branch')->from(TABLE_BUILD)->where('id')->eq((int)$this->post->build)->fetch('branch');
$release = fixer::input('post')->stripTags($this->config->release->editor->edit['id'], $this->config->allowedTags)
->add('id', $releaseID)
->add('branch', (int)$branch)
->setDefault('mailto', '')
->setDefault('deleteFiles', array())
->join('mailto', ',')
@@ -282,9 +280,14 @@ class releaseModel extends model
/* update release project and branch */
if($release->build)
{
$buildInfo = $this->dao->select('project, branch')->from(TABLE_BUILD)->where('id')->eq($release->build)->fetch();
$release->branch = $buildInfo->branch;
$release->project = $buildInfo->project;
$builds = $this->dao->select('project, branch')->from(TABLE_BUILD)->where('id')->in($release->build)->fetchAll();
foreach($builds as $build)
{
$branches[$build->branch] = $build->branch;
$projects[$build->project] = $build->project;
}
$release->branch = implode(',', $branches);
$release->project = implode(',', $projects);
}
$this->dao->update(TABLE_RELEASE)->data($release, 'deleteFiles')