diff --git a/module/tree/model.php b/module/tree/model.php
index 65f2921a90..08ac2bc94c 100644
--- a/module/tree/model.php
+++ b/module/tree/model.php
@@ -783,6 +783,8 @@ class treeModel extends model
*/
public function getProjectStoryTreeMenu($rootID, $startModule = 0, $userFunc)
{
+ $this->app->loadLang('branch');
+
if($this->app->rawModule == 'projectstory') $extra['projectID'] = $rootID;
if($this->app->rawModule == 'execution') $extra['executionID'] = $rootID;
$menu = "
";
@@ -802,8 +804,24 @@ class treeModel extends model
/* Get module according to product. */
$products = $this->loadModel('product')->getProductPairsByProject($rootID);
- $branchGroups = $this->loadModel('branch')->getByProducts(array_keys($products));
- $productNum = count($products);
+ $branchGroups = $this->dao->select('t1.product as product,branch,t3.name')->from(TABLE_PROJECTPRODUCT)->alias('t1')
+ ->leftJoin(TABLE_PRODUCT)->alias('t2')->on('t1.product=t2.id')
+ ->leftJoin(TABLE_BRANCH)->alias('t3')->on('t1.branch=t3.id')
+ ->where('t1.project')->eq($rootID)
+ ->andWhere('t2.type')->ne('normal')
+ ->andWhere('t1.product')->in(array_keys($products))
+ ->andWhere('t2.deleted')->eq('0')
+ ->fetchGroup('product', 'branch');
+
+ foreach($branchGroups as $productID => $branches)
+ {
+ foreach($branches as $branchID => $branchInfo)
+ {
+ $branchGroups[$productID][$branchID] = $branchID == BRANCH_MAIN ? $this->lang->branch->main : $branchInfo->name;
+ }
+ }
+
+ $productNum = count($products);
foreach($products as $id => $product)
{
$extra['productID'] = $id;