* Code for task#59544,#59546. Add update region when delete lane.

This commit is contained in:
xieqiyu
2022-07-05 09:26:18 +08:00
parent 452a25c232
commit c58e61ed26
3 changed files with 17 additions and 7 deletions
+4 -2
View File
@@ -235,10 +235,12 @@ function createLaneMenu(options)
var privs = lane.actions;
if(!privs.length) return [];
var items = [];
var items = [];
var regionID = lane.$kanbanData.region;
var kanbanID = lane.$kanbanData.kanban;
if(privs.includes('editLaneName')) items.push({label: kanbanLang.editLaneName, icon: 'edit', url: createLink('kanban', 'editLaneName', 'laneID=' + lane.id + '&executionID=0&from=kanban'), className: 'iframe', attrs: {'data-toggle': 'modal', 'data-width': '635px'}});
if(privs.includes('editLaneColor')) items.push({label: kanbanLang.editLaneColor, icon: 'color', url: createLink('kanban', 'editLaneColor', 'laneID=' + lane.id + '&executionID=0&from=kanban'), className: 'iframe', attrs: {'data-toggle': 'modal', 'data-width': '635px'}});
if(privs.includes('deleteLane')) items.push({label: kanbanLang.deleteLane, icon: 'trash', url: createLink('kanban', 'deleteLane', 'lane=' + lane.id), attrs: {'target': 'hiddenwin'}});
if(privs.includes('deleteLane')) items.push({label: kanbanLang.deleteLane, icon: 'trash', url: createLink('kanban', 'deleteLane', 'regionID=' + regionID + '&kanbanID=' + kanbanID + '&lane=' + lane.id), attrs: {'target': 'hiddenwin'}});
var bounds = options.$trigger[0].getBoundingClientRect();
items.$options = {x: bounds.right, y: bounds.top};
+9 -3
View File
@@ -604,24 +604,30 @@ class kanban extends control
/**
* Delete a lane.
*
* @param int $regionID
* @param int $kanbanID
* @param int $laneID
* @param string $confirm no|yes
* @access public
* @return void
*/
public function deleteLane($laneID, $confirm = 'no')
public function deleteLane($regionID, $kanbanID, $laneID, $confirm = 'no')
{
if($confirm == 'no')
{
$laneType = $this->kanban->getLaneById($laneID)->type;
$confirmTip = in_array($laneType, array('story', 'task', 'bug')) ? sprintf($this->lang->kanbanlane->confirmDeleteTip, $this->lang->{$laneType}->common) : $this->lang->kanbanlane->confirmDelete;
return print(js::confirm($confirmTip, $this->createLink('kanban', 'deleteLane', "laneID=$laneID&confirm=yes"), ''));
return print(js::confirm($confirmTip, $this->createLink('kanban', 'deleteLane', "regionID=$regionID&kanbanID=$kanbanID&laneID=$laneID&confirm=yes"), ''));
}
else
{
$this->kanban->delete(TABLE_KANBANLANE, $laneID);
return print(js::reload('parent'));
$kanbanGroup = $this->kanban->getKanbanData($kanbanID, $regionID);
$kanbanGroup = json_encode($kanbanGroup);
return print("<script>parent.updateRegion($regionID, $kanbanGroup)</script>");
}
}
+4 -2
View File
@@ -1113,10 +1113,12 @@ function createLaneMenu(options)
var privs = lane.actions;
if(!privs.length) return [];
var items = [];
var items = [];
var regionID = lane.$kanbanData.region;
var kanbanID = lane.$kanbanData.kanban;
if(privs.includes('editLaneName')) items.push({label: kanbanLang.editLaneName, icon: 'edit', url: createLink('kanban', 'editLaneName', 'laneID=' + lane.id + '&executionID=0&from=kanban'), className: 'iframe', attrs: {'data-toggle': 'modal', 'data-width': '635px'}});
if(privs.includes('editLaneColor')) items.push({label: kanbanLang.editLaneColor, icon: 'color', url: createLink('kanban', 'editLaneColor', 'laneID=' + lane.id + '&executionID=0&from=kanban'), className: 'iframe', attrs: {'data-toggle': 'modal', 'data-width': '635px'}});
if(privs.includes('deleteLane')) items.push({label: kanbanLang.deleteLane, icon: 'trash', url: createLink('kanban', 'deleteLane', 'lane=' + lane.id), attrs: {'target': 'hiddenwin'}});
if(privs.includes('deleteLane')) items.push({label: kanbanLang.deleteLane, icon: 'trash', url: createLink('kanban', 'deleteLane', 'regionID=' + regionID + '&kanbanID=' + kanbanID + '&lane=' + lane.id), attrs: {'target': 'hiddenwin'}});
var bounds = options.$trigger[0].getBoundingClientRect();
items.$options = {x: bounds.right, y: bounds.top};