diff --git a/module/kanban/control.php b/module/kanban/control.php index a99d526a65..022e10d78b 100644 --- a/module/kanban/control.php +++ b/module/kanban/control.php @@ -650,7 +650,10 @@ class kanban extends control if(dao::isError()) $this->send(array('message' => dao::getError(), 'result' => 'fail')); $this->loadModel('action')->create('kanbanColumn', $columnID, 'Created'); - $this->send(array('message' => $this->lang->saveSuccess, 'result' => 'success', 'locate' => 'parent')); + + $region = $this->kanban->getRegionByID($column->region); + $kanbanGroup = $this->kanban->getKanbanData($region->kanban, $region->id); + return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'closeModal' => true, 'callback' => array('target' => 'parent', 'name' => 'updateRegion', 'params' => array($column->region, $kanbanGroup)))); } $this->view->title = $this->lang->kanban->createColumn; @@ -662,21 +665,21 @@ class kanban extends control /** * Split column. * - * @param int $regionID - * @param int $kanbanID * @param int $columnID * @access public * @return void */ - public function splitColumn($regionID, $kanbanID, $columnID) + public function splitColumn($columnID) { if(!empty($_POST)) { $this->kanban->splitColumn($columnID); if(dao::isError()) $this->send(array('message' => dao::getError(), 'result' => 'fail')); - $kanbanGroup = $this->kanban->getKanbanData($kanbanID, $regionID); - return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'closeModal' => true, 'callback' => array('target' => 'parent', 'name' => 'updateRegion', 'params' => array($regionID, $kanbanGroup)))); + $column = $this->kanban->getColumnById($columnID); + $region = $this->kanban->getRegionByID($column->region); + $kanbanGroup = $this->kanban->getKanbanData($region->kanban, $region->id); + return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'closeModal' => true, 'callback' => array('target' => 'parent', 'name' => 'updateRegion', 'params' => array($column->region, $kanbanGroup)))); } $this->display(); @@ -716,8 +719,10 @@ class kanban extends control $this->loadModel('action')->create('kanbancolumn', $columnID, 'archived'); - if(isonlybody()) return print(js::reload('parent.parent')); - return print(js::reload('parent')); + $region = $this->kanban->getRegionByID($column->region); + $kanbanGroup = $this->kanban->getKanbanData($region->kanban, $region->id); + $kanbanGroup = json_encode($kanbanGroup); + return print(""); } } @@ -800,7 +805,10 @@ class kanban extends control $this->dao->delete()->from(TABLE_KANBANCOLUMN)->where('id')->eq($columnID)->exec(); - return print(js::reload('parent')); + $region = $this->kanban->getRegionByID($column->region); + $kanbanGroup = $this->kanban->getKanbanData($region->kanban, $region->id); + $kanbanGroup = json_encode($kanbanGroup); + return print(""); } } diff --git a/module/kanban/js/view.js b/module/kanban/js/view.js index 2d1c63d62b..b6bd322297 100644 --- a/module/kanban/js/view.js +++ b/module/kanban/js/view.js @@ -1280,9 +1280,7 @@ function createColumnMenu(options) items.push({type: 'divider'}); } - var regionID = column.$kanbanData.region; - var kanbanID = column.$kanbanData.kanban; - if(privs.includes('splitColumn')) items.push({label: kanbanLang.splitColumn, icon: 'col-split', url: createLink('kanban', 'splitColumn', 'regionID=' + regionID + '&kanbanID=' + kanbanID + '&columnID=' + column.id, '', true), className: 'iframe', attrs: {'data-toggle': 'modal'}}); + if(privs.includes('splitColumn')) items.push({label: kanbanLang.splitColumn, icon: 'col-split', url: createLink('kanban', 'splitColumn', 'columnID=' + column.id, '', true), className: 'iframe', attrs: {'data-toggle': 'modal'}}); if(privs.includes('createColumn')) { items.push({label: kanbanLang.createColumnOnLeft, icon: 'col-add-left', url: createLink('kanban', 'createColumn', 'columnID=' + column.id + '&position=left'), className: 'iframe', attrs: {'data-toggle': 'modal'}});