Take default swimlane into consideration for SwimlaneModel::getFirstActiveSwimlane()

This commit is contained in:
Frederic Guillot 2016-07-03 10:59:09 -04:00
parent d975a3ac45
commit f87d3334e5
No known key found for this signature in database
GPG Key ID: 92D77191BA7FBC99
3 changed files with 24 additions and 11 deletions

View File

@ -29,6 +29,7 @@ Bug fixes:
* Fixed lexer issue with non word characters
* Flush memory cache in worker to get latest config values
* Fixed empty title for web notification with only one overdue task
* Take default swimlane into consideration for SwimlaneModel::getFirstActiveSwimlane()
Version 1.0.30
--------------

View File

@ -94,15 +94,17 @@ class SwimlaneModel extends Base
*
* @access public
* @param integer $project_id
* @return array
* @return array|null
*/
public function getFirstActiveSwimlane($project_id)
{
return $this->db->table(self::TABLE)
->eq('is_active', self::ACTIVE)
->eq('project_id', $project_id)
->orderBy('position', 'asc')
->findOne();
$swimlanes = $this->getSwimlanes($project_id);
if (empty($swimlanes)) {
return null;
}
return $swimlanes[0];
}
/**
@ -184,18 +186,18 @@ class SwimlaneModel extends Base
->orderBy('position', 'asc')
->findAll();
$default_swimlane = $this->db
$defaultSwimlane = $this->db
->table(ProjectModel::TABLE)
->eq('id', $project_id)
->eq('show_default_swimlane', 1)
->findOneColumn('default_swimlane');
if ($default_swimlane) {
if ($default_swimlane === 'Default swimlane') {
$default_swimlane = t($default_swimlane);
if ($defaultSwimlane) {
if ($defaultSwimlane === 'Default swimlane') {
$defaultSwimlane = t($defaultSwimlane);
}
array_unshift($swimlanes, array('id' => 0, 'name' => $default_swimlane));
array_unshift($swimlanes, array('id' => 0, 'name' => $defaultSwimlane));
}
return $swimlanes;

View File

@ -39,8 +39,18 @@ class SwimlaneTest extends Base
$this->assertEquals(1, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #1', 'is_active' => 0)));
$this->assertEquals(2, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #2')));
$swimlane = $swimlaneModel->getFirstActiveSwimlane(1);
$this->assertEquals(0, $swimlane['id']);
$this->assertEquals('Default swimlane', $swimlane['name']);
$this->assertTrue($swimlaneModel->disableDefault(1));
$swimlane = $swimlaneModel->getFirstActiveSwimlane(1);
$this->assertEquals(2, $swimlane['id']);
$this->assertEquals('Swimlane #2', $swimlane['name']);
$this->assertTrue($swimlaneModel->disable(1, 2));
$this->assertNull($swimlaneModel->getFirstActiveSwimlane(1));
}
public function testGetList()