diff --git a/module/bug/model.php b/module/bug/model.php index 994eaca402..4ed0cef685 100644 --- a/module/bug/model.php +++ b/module/bug/model.php @@ -1897,7 +1897,7 @@ class bugModel extends model { $products = array_keys($this->loadModel('product')->getPrivProducts()); $bugQuery = str_replace($allProduct, '1', $this->session->bugQuery); - $bugQuery = $bugQuery . ' AND `product`' . helper::dbIN($products); + $bugQuery = $bugQuery . ' AND `product` ' . helper::dbIN($products); } if($branch) $bugQuery .= " AND `branch` in('0','$branch')"; $bugs = $this->dao->select('*')->from(TABLE_BUG)->where($bugQuery) diff --git a/module/project/model.php b/module/project/model.php index b77fb16b47..96f708e31a 100644 --- a/module/project/model.php +++ b/module/project/model.php @@ -817,10 +817,11 @@ class projectModel extends model if(strpos($this->session->taskQuery, "deleted =") === false) $this->session->set('taskQuery', $this->session->taskQuery . " AND deleted = '0'"); - $projectQuery = "`project`" . helper::dbIN(array_keys($projects)); - $taskQuery = str_replace("`project` = 'all'", $projectQuery, $this->session->taskQuery); // Search all project. + $taskQuery = $this->session->taskQuery; /* Limit current project when no project. */ if(strpos($taskQuery, "`project` =") === false) $taskQuery = $taskQuery . " AND `project` = $projectID"; + $projectQuery = "`project` " . helper::dbIN(array_keys($projects)); + $taskQuery = str_replace("`project` = 'all'", $projectQuery, $this->session->taskQuery); // Search all project. $this->session->set('taskQueryCondition', $taskQuery); $this->session->set('taskOnlyCondition', true); $this->session->set('taskOrderBy', $sort); diff --git a/module/story/model.php b/module/story/model.php index 6aa42d6953..6e0e01d652 100644 --- a/module/story/model.php +++ b/module/story/model.php @@ -1432,7 +1432,7 @@ class storyModel extends model $storyQuery = str_replace($allProduct, '1', $this->session->storyQuery); $queryProductID = 'all'; } - $storyQuery = $storyQuery . ' AND `product`' . helper::dbIN(array_keys($products)); + $storyQuery = $storyQuery . ' AND `product` ' . helper::dbIN(array_keys($products)); if($projectID != '') { foreach($products as $product) $branches[$product->branch] = $product->branch; @@ -1462,18 +1462,14 @@ class storyModel extends model */ public function getBySQL($productID, $sql, $orderBy, $pager = null) { - $productIDs = array_keys($this->loadModel('product')->getPrivProducts()); - /* Get plans. */ $plans = $this->dao->select('id,title')->from(TABLE_PRODUCTPLAN) ->where('deleted')->eq('0') ->beginIF($productID != 'all' and $productID != '')->andWhere('product')->eq((int)$productID)->fi() - ->beginIF($productID == 'all')->andWhere('product')->in($productIDs)->fi() ->fetchPairs(); $tmpStories = $this->dao->select('*')->from(TABLE_STORY)->where($sql) ->beginIF($productID != 'all' and $productID != '')->andWhere('product')->eq((int)$productID)->fi() - ->beginIF($productID == 'all')->andWhere('product')->in($productIDs)->fi() ->andWhere('deleted')->eq(0) ->orderBy($orderBy) ->page($pager) diff --git a/module/testcase/model.php b/module/testcase/model.php index b5b552cb7c..5ea2a96e36 100644 --- a/module/testcase/model.php +++ b/module/testcase/model.php @@ -331,7 +331,7 @@ class testcaseModel extends model { $products = array_keys($this->loadModel('product')->getPrivProducts()); $caseQuery = str_replace($allProduct, '1', $caseQuery); - $caseQuery = $caseQuery . ' AND `product`' . helper::dbIN($products); + $caseQuery = $caseQuery . ' AND `product` ' . helper::dbIN($products); $queryProductID = 'all'; } $caseQuery .= ')'; diff --git a/module/testtask/model.php b/module/testtask/model.php index a9ffb157f6..c38721203e 100644 --- a/module/testtask/model.php +++ b/module/testtask/model.php @@ -344,7 +344,7 @@ class testtaskModel extends model { $products = array_keys($this->loadModel('product')->getPrivProducts()); $caseQuery = str_replace($allProduct, '1', $this->session->testtaskQuery); - $caseQuery = $caseQuery . ' AND `product`' . helper::dbIN(array_keys($products)); + $caseQuery = $caseQuery . ' AND `product `' . helper::dbIN(array_keys($products)); $queryProductID = 'all'; } @@ -353,6 +353,7 @@ class testtaskModel extends model ->leftJoin(TABLE_CASE)->alias('t2')->on('t1.case = t2.id') ->where($caseQuery) ->andWhere('t1.task')->eq($task->id) + ->beginIF($queryProductID != 'all')->andWhere('t2.product')->eq($queryProductID)->fi() ->beginIF($task->branch)->andWhere('t2.branch')->in("0,{$task->branch}")->fi() ->orderBy(strpos($sort, 'assignedTo') !== false ? ('t1.' . $sort) : ('t2.' . $sort)) ->page($pager)