* Finish task #55675.
This commit is contained in:
@@ -816,7 +816,7 @@ function handleDropTask($element, event, kanban)
|
||||
var cardID = $card.data().id;
|
||||
var fromColType = $oldCol.data('type');
|
||||
var toColType = $newCol.data('type');
|
||||
var regionID = $card.closest('.region').data().id;
|
||||
var regionID = groupBy == 'default' ? $card.closest('.region').data().id : executionID;
|
||||
|
||||
changeCardColType(cardID, oldCol.id, newCol.id, oldLane.id, newLane.id, cardType, fromColType, toColType, regionID);
|
||||
}
|
||||
@@ -831,8 +831,6 @@ var kanbanActionHandlers =
|
||||
*/
|
||||
function handleKanbanAction(action, $element, event, kanban)
|
||||
{
|
||||
if(groupBy && groupBy != 'default') return false;
|
||||
|
||||
$('.kanban').attr('data-action-enabled', action);
|
||||
var handler = kanbanActionHandlers[action];
|
||||
if(handler) handler($element, event, kanban);
|
||||
@@ -988,7 +986,8 @@ function changeCardColType(cardID, fromColID, toColID, fromLaneID, toLaneID, car
|
||||
url: link,
|
||||
success: function(data)
|
||||
{
|
||||
updateRegion(regionID, data[regionID]);
|
||||
data = groupBy == 'default' ? data[regionID] : data[groupBy];
|
||||
updateRegion(regionID, data);
|
||||
},
|
||||
error: function(xhr, status, error)
|
||||
{
|
||||
@@ -1017,6 +1016,8 @@ function changeCardColType(cardID, fromColID, toColID, fromLaneID, toLaneID, car
|
||||
function deleteCard(objectType, objectID, regionID)
|
||||
{
|
||||
$.zui.ContextMenu.hide();
|
||||
|
||||
regionID = regionID ? regionID : 0;
|
||||
setTimeout(function()
|
||||
{
|
||||
var objectLang = objectType + 'Lang';
|
||||
@@ -1033,7 +1034,8 @@ function deleteCard(objectType, objectID, regionID)
|
||||
url: url,
|
||||
success: function(data)
|
||||
{
|
||||
updateRegion(regionID, data[regionID]);
|
||||
data = groupBy == 'default' ? data[regionID] : data[groupBy];
|
||||
updateRegion(regionID, data);
|
||||
}
|
||||
});
|
||||
}, 200)
|
||||
@@ -1230,7 +1232,7 @@ function initKanban($kanban)
|
||||
onRenderLaneName: renderLaneName,
|
||||
onRenderHeaderCol: renderHeaderCol,
|
||||
onRenderCount: renderCount,
|
||||
droppable: groupBy == 'default' ? {target: findDropColumns, finish:handleFinishDrop} : false,
|
||||
droppable: {target: findDropColumns, finish:handleFinishDrop},
|
||||
virtualize: true,
|
||||
virtualCardList: true
|
||||
});
|
||||
|
||||
@@ -1479,9 +1479,10 @@ class kanban extends control
|
||||
$this->loadModel($objectType)->delete(constant($table), $objectID);
|
||||
if(dao::isError()) return $this->send(array('result' => 'fail', 'message' => dao::getError()));
|
||||
|
||||
$kanbanID = $this->kanban->getKanbanIDByregion($regionID);
|
||||
$kanbanID = $regionID ? $this->kanban->getKanbanIDByregion($regionID) : $this->session->execution;
|
||||
$browseType = $this->config->vision == 'lite' ? 'task' : $this->session->execLaneType;
|
||||
$kanbanGroup = $this->kanban->getRDKanban($kanbanID, $browseType);
|
||||
$groupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanGroup = $this->kanban->getRDKanban($kanbanID, $browseType, 'id_desc', 0, $groupBy);
|
||||
|
||||
return print(json_encode($kanbanGroup));
|
||||
}
|
||||
@@ -1715,12 +1716,22 @@ class kanban extends control
|
||||
*/
|
||||
public function ajaxMoveCard($cardID = 0, $fromColID = 0, $toColID = 0, $fromLaneID = 0, $toLaneID = 0, $executionID = 0, $browseType = 'all', $groupBy = '', $regionID = 0, $orderBy = '')
|
||||
{
|
||||
$fromCell = $this->dao->select('id, cards')->from(TABLE_KANBANCELL)
|
||||
$fromCell = $this->dao->select('id, cards, lane')->from(TABLE_KANBANCELL)
|
||||
->where('kanban')->eq($executionID)
|
||||
->andWhere('lane')->eq($fromLaneID)
|
||||
->andWhere('`column`')->eq($fromColID)
|
||||
->beginIF(!$groupBy or $groupBy == 'default')->andWhere('lane')->eq($fromLaneID)->fi()
|
||||
->beginIF($groupBy and $groupBy != 'default')
|
||||
->andWhere('type')->eq($browseType)
|
||||
->andWhere('cards')->like("%,$cardID,%")
|
||||
->fi()
|
||||
->fetch();
|
||||
|
||||
if($groupBy and $groupBy != 'default')
|
||||
{
|
||||
$fromLaneID = $fromCell->lane;
|
||||
$toLaneID = $fromCell->lane;
|
||||
}
|
||||
|
||||
$toCell = $this->dao->select('id, cards')->from(TABLE_KANBANCELL)
|
||||
->where('kanban')->eq($executionID)
|
||||
->andWhere('lane')->eq($toLaneID)
|
||||
|
||||
+21
-3
@@ -1456,7 +1456,7 @@ class kanbanModel extends model
|
||||
|
||||
$columns = $this->dao->select('t1.*, GROUP_CONCAT(t1.cards) as cards, t2.`type` as columnType, t2.limit, t2.name as columnName, t2.color')->from(TABLE_KANBANCELL)->alias('t1')
|
||||
->leftJoin(TABLE_KANBANCOLUMN)->alias('t2')->on('t1.`column` = t2.id')
|
||||
->leftJoin(TABLE_KANBANLANE)->alias('t3')->on('t2.group = t3.group')
|
||||
->leftJoin(TABLE_KANBANLANE)->alias('t3')->on('t1.lane = t3.id')
|
||||
->leftJoin(TABLE_KANBANREGION)->alias('t4')->on('t1.kanban = t4.kanban')
|
||||
->where('t1.kanban')->eq($executionID)
|
||||
->andWhere('t1.`type`')->eq($browseType)
|
||||
@@ -1490,6 +1490,7 @@ class kanbanModel extends model
|
||||
$laneData['name'] = (($groupBy == 'pri' or $groupBy == 'severity') and $laneID) ? $this->lang->$browseType->$groupBy . ':' . $lane->name : $lane->name;
|
||||
$laneData['color'] = $lane->color;
|
||||
$laneData['order'] = $lane->order;
|
||||
$laneData['type'] = $browseType;
|
||||
$laneData['defaultCardType'] = $browseType;
|
||||
|
||||
/* Construct kanban column data. */
|
||||
@@ -1507,7 +1508,6 @@ class kanbanModel extends model
|
||||
if($this->isClickable($column, $action)) $column->actions[] = $action;
|
||||
}
|
||||
|
||||
|
||||
$columnData[$column->column]['id'] = $column->column;
|
||||
$columnData[$column->column]['type'] = $column->columnType;
|
||||
$columnData[$column->column]['name'] = $column->columnName;
|
||||
@@ -1621,6 +1621,7 @@ class kanbanModel extends model
|
||||
foreach($objectPairs as $objectID => $objectName)
|
||||
{
|
||||
if(!isset($groupByList[$objectID]) and $objectID) continue;
|
||||
if($browseType == 'task' and $groupBy == 'type' and !$objectID) continue;
|
||||
|
||||
$lane = new stdclass();
|
||||
$lane->id = $groupBy . $objectID;
|
||||
@@ -3132,7 +3133,24 @@ class kanbanModel extends model
|
||||
*/
|
||||
public function moveCard($cardID, $fromColID, $toColID, $fromLaneID, $toLaneID, $kanbanID = 0)
|
||||
{
|
||||
$fromCellCards = $this->dao->select('cards')->from(TABLE_KANBANCELL)->where('lane')->eq($fromLaneID)->andWhere('`column`')->eq($fromColID)->fetch('cards');
|
||||
$groupBy = $this->session->execGroupBy ? $this->session->execGroupBy : '';
|
||||
|
||||
$fromCell = $this->dao->select('cards, lane')->from(TABLE_KANBANCELL)
|
||||
->where('`column`')->eq($fromColID)
|
||||
->beginIF(!$groupBy or $groupBy == 'default')->andWhere('lane')->eq($fromLaneID)->fi()
|
||||
->beginIF($groupBy and $groupBy != 'default')
|
||||
->andWhere('type')->eq($this->session->execLaneType)
|
||||
->andWhere('cards')->like("%,$cardID,%")
|
||||
->fi()
|
||||
->fetch();
|
||||
|
||||
if($groupBy and $groupBy != 'default')
|
||||
{
|
||||
$fromLaneID = $fromCell->lane;
|
||||
$toLaneID = $fromCell->lane;
|
||||
}
|
||||
|
||||
$fromCellCards = $fromCell->cards;
|
||||
$toCell = $this->dao->select('*')->from(TABLE_KANBANCELL)->where('lane')->eq($toLaneID)->andWhere('`column`')->eq($toColID)->fetch();
|
||||
$toCellCards = $this->dao->select('cards')->from(TABLE_KANBANCELL)->where('lane')->eq($toLaneID)->andWhere('`column`')->eq($toColID)->fetch('cards');
|
||||
|
||||
|
||||
+53
-33
@@ -90,7 +90,7 @@ class task extends control
|
||||
if($execution->type == 'kanban')
|
||||
{
|
||||
$regionPairs = $this->kanban->getRegionPairs($execution->id, 0, 'execution');
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : key($regionPairs);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : key($regionPairs);
|
||||
$lanePairs = $this->kanban->getLanePairsByRegion($regionID, 'task');
|
||||
$laneID = isset($output['laneID']) ? $output['laneID'] : key($lanePairs);
|
||||
|
||||
@@ -139,7 +139,7 @@ class task extends control
|
||||
/* if status is exists then this task has exists not new create. */
|
||||
if($taskID['status'] == 'exists') continue;
|
||||
|
||||
$taskID = $taskID['id'];
|
||||
$taskID = $taskID['id'];
|
||||
$this->action->create('task', $taskID, 'Opened', '');
|
||||
}
|
||||
|
||||
@@ -173,8 +173,10 @@ class task extends control
|
||||
{
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->kanban->getRDKanban($executionID, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($executionID, $execLaneType, 'id_desc', 0, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'closeModal' => true, 'callback' => "parent.updateKanban($kanbanData, 0)"));
|
||||
}
|
||||
@@ -347,8 +349,10 @@ class task extends control
|
||||
{
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($executionID, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($executionID, $execLaneType, 'id_desc', 0, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, 0)"));
|
||||
}
|
||||
@@ -397,7 +401,7 @@ class task extends control
|
||||
|
||||
$this->loadModel('kanban');
|
||||
$regionPairs = $this->kanban->getRegionPairs($executionID, 0, 'execution');
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : key($regionPairs);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : key($regionPairs);
|
||||
$lanePairs = $this->kanban->getLanePairsByRegion($regionID, 'task');
|
||||
$laneID = isset($output['laneID']) ? $output['laneID'] : key($lanePairs);
|
||||
|
||||
@@ -503,9 +507,9 @@ class task extends control
|
||||
if(isonlybody())
|
||||
{
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution' and $kanbanGroup == 'default')
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', 0, $kanbanGroup);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData)"));
|
||||
@@ -738,9 +742,9 @@ class task extends control
|
||||
{
|
||||
$task = $this->task->getById($taskID);
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution' and $kanbanGroup == 'default')
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', 0, $kanbanGroup);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData)"));
|
||||
@@ -988,9 +992,11 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
@@ -1050,8 +1056,10 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', 0, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData)"));
|
||||
}
|
||||
@@ -1184,9 +1192,11 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
@@ -1272,9 +1282,11 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
@@ -1328,8 +1340,10 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all');
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', 0, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData)"));
|
||||
}
|
||||
@@ -1399,9 +1413,11 @@ class task extends control
|
||||
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
@@ -1562,9 +1578,11 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
@@ -1618,9 +1636,11 @@ class task extends control
|
||||
$execution = $this->execution->getByID($task->execution);
|
||||
if($execution->type == 'kanban' and $this->app->tab == 'execution')
|
||||
{
|
||||
$regionID = isset($output['regionID']) ? $output['regionID'] : 0;
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $this->session->execLaneType ? $this->session->execLaneType : 'all', 'id_desc', $regionID);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
$regionID = !empty($output['regionID']) ? $output['regionID'] : 0;
|
||||
$execLaneType = $this->session->execLaneType ? $this->session->execLaneType : 'all';
|
||||
$execGroupBy = $this->session->execGroupBy ? $this->session->execGroupBy : 'default';
|
||||
$kanbanData = $this->loadModel('kanban')->getRDKanban($task->execution, $execLaneType, 'id_desc', $regionID, $execGroupBy);
|
||||
$kanbanData = json_encode($kanbanData);
|
||||
|
||||
return print(js::closeModal('parent.parent', '', "parent.parent.updateKanban($kanbanData, $regionID)"));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user