diff --git a/module/execution/js/edit.js b/module/execution/js/edit.js index a124a0129e..c27b7316bb 100644 --- a/module/execution/js/edit.js +++ b/module/execution/js/edit.js @@ -62,7 +62,7 @@ $(function() { if($.inArray(lastBranch, unmodifiableBranches) != -1) { - if(linkedStoryIDList[last][lastBranch]) bootbox.alert(unLinkProductTip.replace("%s", branchGroups[last][lastBranch])); + if(linkedStoryIDList[last][lastBranch]) bootbox.alert(unLinkProductTip.replace("%s", allProducts[last] + branchGroups[last][lastBranch])); } } else diff --git a/module/execution/js/manageproducts.js b/module/execution/js/manageproducts.js index 0c2028e0a3..5ed5d3fb60 100644 --- a/module/execution/js/manageproducts.js +++ b/module/execution/js/manageproducts.js @@ -23,7 +23,7 @@ $(function() if($.inArray(branchID, unmodifiableBranches) != -1 && linkedStoryIDList[productID][branchID]) { - bootbox.alert(unLinkProductTip.replace("%s", branchGroups[productID][branchID])); + bootbox.alert(unLinkProductTip.replace("%s", allProducts[productID] + branchGroups[productID][branchID])); } } else diff --git a/module/project/control.php b/module/project/control.php index dbeab3a1f9..b7e58503ee 100755 --- a/module/project/control.php +++ b/module/project/control.php @@ -2155,13 +2155,19 @@ class project extends control $diffProductIDs = array_merge(array_diff($oldProductIDs, $newProductIDs), array_diff($newProductIDs, $oldProductIDs)); if($diffProductIDs) $this->loadModel('action')->create('project', $projectID, 'Managed', '', !empty($_POST['products']) ? join(',', $_POST['products']) : ''); - $unlinkedProducts = array_diff($oldProductIDs, $newProductIDs); - if(!empty($unlinkedProducts)) + if($project->multiple) { - $unlinkedProductPairs = array(); - foreach($unlinkedProducts as $unlinkedProduct) $unlinkedProductPairs[$unlinkedProduct] = $oldProducts[$unlinkedProduct]->name; + $unlinkedProducts = array_diff($oldProductIDs, $newProductIDs); + if(!empty($unlinkedProducts)) + { + $unlinkedProductPairs = array(); + foreach($unlinkedProducts as $unlinkedProduct) $unlinkedProductPairs[$unlinkedProduct] = $oldProducts[$unlinkedProduct]->name; - $this->action->create('project', $projectID, 'unlinkproduct', '', implode(',', $unlinkedProductPairs)); + $this->action->create('project', $projectID, 'unlinkproduct', '', implode(',', $unlinkedProductPairs)); + + $executionIDList = $this->execution->getIdList($projectID); + foreach($executionIDList as $executionID) $this->action->create('execution', $executionID, 'unlinkproduct', '', implode(',', $unlinkedProductPairs)); + } } $locateLink = inLink('manageProducts', "projectID=$projectID"); @@ -2251,6 +2257,7 @@ class project extends control $this->view->unmodifiableMainBranches = $unmodifiableMainBranches; $this->view->branchGroups = $branchGroups; $this->view->allBranches = $this->branch->getByProducts(array_keys($allProducts), 'ignoreNormal'); + $this->view->allProducts = $allProducts; $this->view->otherProducts = $otherProducts; $this->display(); diff --git a/module/project/view/manageproducts.html.php b/module/project/view/manageproducts.html.php index 39fc85d839..4fe016a5a7 100644 --- a/module/project/view/manageproducts.html.php +++ b/module/project/view/manageproducts.html.php @@ -14,7 +14,7 @@ - + project->unLinkProductTip);?>