r1100: We need fetch_on_bits() for canviewownhidden in order to have per-product...
authorRobert Sesek <rsesek@bluestatic.org>
Sun, 20 Aug 2006 21:03:48 +0000 (21:03 +0000)
committerRobert Sesek <rsesek@bluestatic.org>
Sun, 20 Aug 2006 21:03:48 +0000 (21:03 +0000)
includes/class_sort.php
index.php
search.php

index 7af123abcab9ba2913ca8aac179586c585132c44..2bfc5b8a42b7e6c0608bd97d37551f4f27263dcc 100644 (file)
@@ -113,7 +113,7 @@ class ListSorter
        {
                // this WHERE clause is used for all the queries
                $basewhere = "bug.product IN (" . fetch_on_bits('canviewbugs') . ")
-                                       AND (!bug.hidden OR (bug.hidden AND bug.product IN (" . fetch_on_bits('canviewhidden') . "))" . (can_perform('canviewownhidden') ? " OR (bug.hidden AND bug.userid = " . $this->registry->userinfo['userid'] . ")" : "") . ")" .
+                                       AND (!bug.hidden OR (bug.hidden AND bug.product IN (" . fetch_on_bits('canviewhidden') . "))" . (can_perform('canviewownhidden') ? " OR (bug.hidden AND bug.userid = " . $this->registry->userinfo['userid'] . " AND bug.product IN (" . fetch_on_bits('canviewownhidden') . "))" : "") . ")" .
                                        (($this->registry->options['hidestatuses'] OR isset($this->registry->userinfo['hidestatuses'])) ? "
                                        AND bug.status NOT IN (" . ($this->registry->userinfo['hidestatuses'] != '' ? $this->registry->userinfo['hidestatuses'] : $this->registry->options['hidestatuses']) . ")" : "");
                                                
index 3911d99aa0f3bb10451ee094bae604b9fcf4d3ae..599c43fcf937f08f89e89f551741e7e0915b9c96 100644 (file)
--- a/index.php
+++ b/index.php
@@ -47,7 +47,7 @@ $pagination = new Pagination('p', 'pp');
 $count = $db->query_first("
        SELECT COUNT(*) AS count
        FROM " . TABLE_PREFIX . "bug
-       WHERE (!hidden OR (hidden AND product IN (" . fetch_on_bits('canviewhidden') . "))" . (can_perform('canviewownhidden') ? " OR (hidden AND userid = " . $bugsys->userinfo['userid'] . ")" : "") . ")
+       WHERE (!hidden OR (hidden AND product IN (" . fetch_on_bits('canviewhidden') . "))" . (can_perform('canviewownhidden') ? " OR (hidden AND userid = " . $bugsys->userinfo['userid'] . " AND product IN (" . fetch_on_bits('canviewownhidden') . "))" : "") . ")
        AND product IN (" . fetch_on_bits('canviewbugs') . ")" . (($bugsys->options['hidestatuses'] OR isset($bugsys->userinfo['hidestatuses'])) ? "
        AND status NOT IN (" . ($bugsys->userinfo['hidestatuses'] != '' ? $bugsys->userinfo['hidestatuses'] : $bugsys->options['hidestatuses']) . ")" : "")
 );
index 65b703ed458c92d40e708476eebf350024a4575b..4fe82830935ad20cdd98cc5c06da69b2da301d90 100644 (file)
@@ -257,12 +257,12 @@ if ($_REQUEST['do'] == 'process')
                        ON (bug.bugid = bugfieldvalue.bugid)
                WHERE bug.bugid <> 0
                AND bug.product IN (#<'ONBITS:VIEW'>#)
-               AND (!bug.hidden OR (bug.hidden AND bug.product IN (#<'ONBITS:HIDDEN'>#))" . (can_perform('canviewownhidden') ? " OR (bug.hidden AND bug.userid = " . $bugsys->userinfo['userid'] . ")" : "") . ")
+               AND (!bug.hidden OR (bug.hidden AND bug.product IN (#<'ONBITS:HIDDEN'>#))" . (can_perform('canviewownhidden') ? " OR (bug.hidden AND bug.userid = " . $bugsys->userinfo['userid'] . " AND bug.product IN (#<'ONBITS:OWNHIDDEN'>#))" : "") . ")
                " . implode("\n\t\t", $querybuild) . "
                GROUP BY bug.bugid
                $sortclause";
        
-       $runquery = str_replace(array("#<'ONBITS:VIEW'>#", "#<'ONBITS:HIDDEN'>#"), array(fetch_on_bits('canviewbugs'), fetch_on_bits('canviewhidden')), $query);
+       $runquery = str_replace(array("#<'ONBITS:VIEW'>#", "#<'ONBITS:HIDDEN'>#", "#<'ONBITS:OWNHIDDEN'>#"), array(fetch_on_bits('canviewbugs'), fetch_on_bits('canviewhidden'), fetch_on_bits('canviewonhidden')), $query);
        
        $search = $db->query($runquery);