* Finish task #46165.
This commit is contained in:
@@ -464,12 +464,12 @@ if(!window.kanbanDropRules)
|
||||
},
|
||||
bug:
|
||||
{
|
||||
'unconfirmed': ['confirmed'],
|
||||
'confirmed': ['fixing'],
|
||||
'unconfirmed': ['confirmed', 'fixing', 'fixed'],
|
||||
'confirmed': ['fixing', 'fixed'],
|
||||
'fixing': ['fixed'],
|
||||
'fixed': ['testing'],
|
||||
'testing': ['tested'],
|
||||
'tested': ['closed'],
|
||||
'fixed': ['testing', 'tested', 'fixing'],
|
||||
'testing': ['tested', 'closed', 'fixing'],
|
||||
'tested': ['closed', 'fixing'],
|
||||
'closed': ['fixing'],
|
||||
},
|
||||
task:
|
||||
@@ -529,6 +529,7 @@ function changeCardColType(card, fromColType, toColType, kanbanID)
|
||||
if(typeof card == 'undefined') return false;
|
||||
var objectID = card.id;
|
||||
var showIframe = false;
|
||||
var moveCard = false;
|
||||
|
||||
/* Task lane. */
|
||||
if(kanbanID == 'task')
|
||||
@@ -591,6 +592,60 @@ function changeCardColType(card, fromColType, toColType, kanbanID)
|
||||
showIframe = true;
|
||||
}
|
||||
}
|
||||
else if(toColType == 'fixing')
|
||||
{
|
||||
if(fromColType == 'confirmed' || fromColType == 'unconfirmed') moveCard = true;
|
||||
if((fromColType == 'closed' || fromColType == 'fixed' || fromColType == 'testing' || fromColType == 'tested') && priv.canActivateBug)
|
||||
{
|
||||
var link = createLink('bug', 'activate', 'bugID=' + objectID, '', true);
|
||||
showIframe = true;
|
||||
}
|
||||
}
|
||||
else if(toColType == 'fixed')
|
||||
{
|
||||
if(fromColType == 'fixing' || fromColType == 'confirmed' || fromColType == 'unconfirmed')
|
||||
{
|
||||
var link = createLink('bug', 'resolve', 'bugID=' + objectID, '', true);
|
||||
showIframe = true;
|
||||
}
|
||||
}
|
||||
else if(toColType == 'testing')
|
||||
{
|
||||
if(fromColType == 'fixed') moveCard = true;
|
||||
}
|
||||
else if(toColType == 'tested')
|
||||
{
|
||||
if(fromColType == 'fixed' || fromColType == 'testing') moveCard = true;
|
||||
}
|
||||
else if(toColType == 'closed')
|
||||
{
|
||||
if(fromColType == 'testing' || fromColType == 'tested')
|
||||
{
|
||||
var link = createLink('bug', 'close', 'bugID=' + objectID, '', true);
|
||||
showIframe = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(moveCard)
|
||||
{
|
||||
var colID = card.$col.columnID;
|
||||
var link = createLink('kanban', 'ajaxMoveCard', 'cardID=' + objectID + '&colID=' + colID + '&toColType=' + toColType + '&execitionID=' + executionID + '&browseType=' + browseType + '&groupBy=' + groupBy);
|
||||
$.get(link, function(data)
|
||||
{
|
||||
if(data)
|
||||
{
|
||||
kanbanGroup = $.parseJSON(data);
|
||||
if(groupBy == 'default')
|
||||
{
|
||||
updateKanban('bug', kanbanGroup.bug);
|
||||
}
|
||||
else
|
||||
{
|
||||
updateKanban(browseType, kanbanGroup[groupBy]);
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/* Story lane. */
|
||||
|
||||
@@ -148,14 +148,15 @@ js::set('priv',
|
||||
'canLinkStoryByPlane' => $canLinkStoryByPlane,
|
||||
'canAssignTask' => common::hasPriv('task', 'assignto'),
|
||||
'canAssignStory' => common::hasPriv('story', 'assignto'),
|
||||
'canAssignBug' => common::hasPriv('bug', 'assignto'),
|
||||
'canFinishTask' => common::hasPriv('task', 'finish'),
|
||||
'canPauseTask' => common::hasPriv('task', 'pause'),
|
||||
'canCancelTask' => common::hasPriv('task', 'cancel'),
|
||||
'canCloseTask' => common::hasPriv('task', 'close'),
|
||||
'canActivateTask' => common::hasPriv('task', 'activate'),
|
||||
'canStartTask' => common::hasPriv('task', 'start'),
|
||||
'canConfirmBug' => common::hasPriv('bug', 'confirmBug')
|
||||
'canAssignBug' => common::hasPriv('bug', 'assignto'),
|
||||
'canConfirmBug' => common::hasPriv('bug', 'confirmBug'),
|
||||
'canActivateBug' => common::hasPriv('bug', 'activate')
|
||||
)
|
||||
);
|
||||
?>
|
||||
|
||||
@@ -27,6 +27,7 @@ function fullScreen()
|
||||
var afterEnterFullscreen = function()
|
||||
{
|
||||
$('#kanban').css('background', '#fff');
|
||||
$('.actions').hide();
|
||||
$.cookie('isFullScreen', 1);
|
||||
};
|
||||
|
||||
@@ -63,6 +64,7 @@ function fullScreen()
|
||||
function exitFullScreen()
|
||||
{
|
||||
$('#mainContent').removeClass('scrollbar-hover');
|
||||
$('.actions').show();
|
||||
$.cookie('isFullScreen', 0);
|
||||
}
|
||||
|
||||
|
||||
+21
-11
@@ -1443,6 +1443,11 @@ class kanbanModel extends model
|
||||
{
|
||||
foreach($this->config->kanban->storyColumnStageList as $colType => $stage)
|
||||
{
|
||||
if($story->stage != $stage and strpos($cardPairs[$colType], ",$storyID,") !== false)
|
||||
{
|
||||
$cardPairs[$colType] = str_replace(",$storyID,", ',', $cardPairs[$colType]);
|
||||
}
|
||||
|
||||
if(strpos(',ready,develop,test,', $colType) !== false) continue;
|
||||
|
||||
if($lane->groupby and $story->{$lane->groupby} != $lane->extra)
|
||||
@@ -1457,10 +1462,6 @@ class kanbanModel extends model
|
||||
{
|
||||
$cardPairs[$colType] = empty($cardPairs[$colType]) ? ",$storyID," : ",$storyID" . $cardPairs[$colType];
|
||||
}
|
||||
elseif($story->stage != $stage and strpos($cardPairs[$colType], ",$storyID,") !== false)
|
||||
{
|
||||
$cardPairs[$colType] = str_replace(",$storyID,", ',', $cardPairs[$colType]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1471,34 +1472,43 @@ class kanbanModel extends model
|
||||
{
|
||||
foreach($this->config->kanban->bugColumnStatusList as $colType => $status)
|
||||
{
|
||||
if(strpos(',resolving,fixing,test,testing,tested,', $colType) !== false) continue;
|
||||
if($bug->status != $status and strpos($cardPairs[$colType], ",$bugID,") !== false)
|
||||
{
|
||||
$cardPairs[$colType] = str_replace(",$bugID,", ',', $cardPairs[$colType]);
|
||||
}
|
||||
|
||||
if(strpos(',resolving,test,testing,tested,', $colType) !== false) continue;
|
||||
|
||||
if($lane->groupby and $bug->{$lane->groupby} != $lane->extra)
|
||||
{
|
||||
$cardPairs[$colType] = str_replace(",$bugID,", ',', $cardPairs[$colType]);
|
||||
}
|
||||
elseif($colType == 'unconfirmed' and $bug->status == $status and $bug->confirmed == 0 and strpos($cardPairs['unconfirmed'], ",$bugID,") === false and strpos($cardPairs['fixing'], ",$bugID,") === false)
|
||||
elseif($colType == 'unconfirmed' and $bug->status == $status and $bug->confirmed == 0 and strpos($cardPairs['unconfirmed'], ",$bugID,") === false and strpos($cardPairs['fixing'], ",$bugID,") === false and $bug->activatedCount == 0)
|
||||
{
|
||||
$cardPairs['unconfirmed'] = empty($cardPairs['unconfirmed']) ? ",$bugID," : ",$bugID" . $cardPairs['unconfirmed'];
|
||||
if(strpos($cardPairs['closed'], ",$bugID,") !== false) $cardPairs['closed'] = str_replace(",$bugID,", ',', $cardPairs['closed']);
|
||||
}
|
||||
elseif($colType == 'confirmed' and $bug->status == $status and $bug->confirmed == 1 and strpos($cardPairs['confirmed'], ",$bugID,") === false and strpos($cardPairs['fixing'], ",$bugID,") === false)
|
||||
elseif($colType == 'confirmed' and $bug->status == $status and $bug->confirmed == 1 and strpos($cardPairs['confirmed'], ",$bugID,") === false and strpos($cardPairs['fixing'], ",$bugID,") === false and $bug->activatedCount)
|
||||
{
|
||||
$cardPairs['confirmed'] = empty($cardPairs['confirmed']) ? ",$bugID," : ",$bugID" . $cardPairs['confirmed'];
|
||||
if(strpos($cardPairs['unconfirmed'], ",$bugID,") !== false) $cardPairs['unconfirmed'] = str_replace(",$bugID,", ',', $cardPairs['unconfirmed']);
|
||||
}
|
||||
elseif($colType == 'fixing' and $bug->status == $status and $bug->activatedCount > 0)
|
||||
{
|
||||
$cardPairs['fixing'] = empty($cardPairs['fixing']) ? ",$bugID," : ",$bugID" . $cardPairs['fixing'];
|
||||
if(strpos($cardPairs['confirmed'], ",$bugID,") !== false) $cardPairs['confirmed'] = str_replace(",$bugID,", ',', $cardPairs['confirmed']);
|
||||
if(strpos($cardPairs['unconfirmed'], ",$bugID,") !== false) $cardPairs['unconfirmed'] = str_replace(",$bugID,", ',', $cardPairs['unconfirmed']);
|
||||
}
|
||||
elseif($colType == 'fixed' and $bug->status == $status and strpos($cardPairs['fixed'], ",$bugID,") === false and strpos($cardPairs['testing'], ",$bugID,") === false and strpos($cardPairs['tested'], ",$bugID,") === false)
|
||||
{
|
||||
$cardPairs['fixed'] = empty($cardPairs['fixed']) ? ",$bugID," : ",$bugID" . $cardPairs['fixed'];
|
||||
if(strpos($cardPairs['testing'], ",$bugID,") !== false) $cardPairs['testing'] = str_replace(",$bugID,", ',', $cardPairs['testing']);
|
||||
if(strpos($cardPairs['tested'], ",$bugID,") !== false) $cardPairs['tested'] = str_replace(",$bugID,", ',', $cardPairs['tested']);
|
||||
}
|
||||
elseif($colType == 'closed' and $bug->status == 'closed' and strpos($cardPairs[$colType], ",$bugID,") === false)
|
||||
{
|
||||
$cardPairs[$colType] = empty($cardPairs[$colType]) ? ",$bugID," : ",$bugID". $cardPairs[$colType];
|
||||
}
|
||||
elseif($bug->status != $status and strpos($cardPairs[$colType], ",$bugID,") !== false)
|
||||
{
|
||||
$cardPairs[$colType] = str_replace(",$bugID,", ',', $cardPairs[$colType]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user