diff --git a/config/filter.php b/config/filter.php index 39b722daec..d54e28622e 100755 --- a/config/filter.php +++ b/config/filter.php @@ -169,6 +169,7 @@ $filter->execution->export = new stdclass(); $filter->tree->browse = new stdclass(); $filter->productplan->browse = new stdclass(); $filter->kanban->space = new stdclass(); +$filter->execution->kanban = new stdclass(); $filter->index->index->get['open'] = 'reg::base64'; @@ -300,6 +301,7 @@ $filter->execution->story->cookie['storyProductParam'] = 'int'; $filter->execution->story->cookie['storyBranchParam'] = 'int'; $filter->execution->story->cookie['executionStoryOrder'] = 'code'; $filter->execution->export->cookie['checkedItem'] = 'reg::checked'; +$filter->execution->kanban->cookie['taskToOpen'] = 'int'; $filter->testcase->browse->cookie['caseModule'] = 'int'; $filter->testcase->browse->cookie['caseSuite'] = 'int'; diff --git a/module/execution/control.php b/module/execution/control.php index dea8b3e57b..560ed521d5 100644 --- a/module/execution/control.php +++ b/module/execution/control.php @@ -2365,10 +2365,10 @@ class execution extends control /** * Kanban. * - * @param int $executionID - * @param string $browseType - * @param string $orderBy - * @param string $groupBy + * @param int $executionID + * @param string $browseType + * @param string $orderBy + * @param string $groupBy * @access public * @return void */ @@ -2422,7 +2422,6 @@ class execution extends control } foreach($products as $product) $productNames[$product->id] = $product->name; - $plans = $this->execution->getPlans($products, 'skipParent', $executionID); $allPlans = array('' => ''); if(!empty($plans)) @@ -2430,6 +2429,9 @@ class execution extends control foreach($plans as $plan) $allPlans += $plan; } + $taskToOpen = !empty($_COOKIE['taskToOpen']) ? $_COOKIE['taskToOpen'] : 0; + setcookie('taskToOpen', 0, time() - 3600, $this->config->webRoot, '', $this->config->cookieSecure, true); + $this->view->title = $this->lang->kanban->view; $this->view->users = $users; $this->view->regions = $kanbanData; @@ -2448,6 +2450,7 @@ class execution extends control $this->view->kanbanData = $kanbanData; $this->view->executionActions = $executionActions; $this->view->kanban = $this->lang->execution->kanban; + $this->view->taskToOpen = $taskToOpen; $this->display(); } diff --git a/module/execution/view/kanban.html.php b/module/execution/view/kanban.html.php index 369c537783..8b596cf632 100644 --- a/module/execution/view/kanban.html.php +++ b/module/execution/view/kanban.html.php @@ -304,4 +304,33 @@ js::set('priv', + + diff --git a/module/task/control.php b/module/task/control.php index e47e6d6074..2f077c93b0 100755 --- a/module/task/control.php +++ b/module/task/control.php @@ -941,7 +941,11 @@ class task extends control } $execution = $this->execution->getById($task->execution); - if(!isonlybody() and $execution->type == 'kanban') return print(js::locate($this->createLink('execution', 'kanban', "executionID=$execution->id"))); + if(!isonlybody() and $execution->type == 'kanban') + { + setcookie('taskToOpen', $taskID, 0, $this->config->webRoot, '', false, true); + return print(js::locate($this->createLink('execution', 'kanban', "executionID=$execution->id"))); + } $this->session->project = $task->project;