Changeset 1775 for trunk/gregarius/cls

Show
Ignore:
Timestamp:
12/27/07 01:28:47 (10 months ago)
Author:
cfriesen
Message:

Option on search form to show only read, unread, or both (default to both)

Location:
trunk/gregarius/cls
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/gregarius/cls/search.php

    r1761 r1775  
    4444define ('QUERY_MATCH_EXACT','exact'); 
    4545define ('QUERY_MATCH_WITHIN', 'within'); 
     46 
     47define ('QUERY_MATCH_STATE', 'state'); 
     48define ('QUERY_MATCH_UNREAD', 'unread'); 
     49define ('QUERY_MATCH_READ', 'read'); 
     50define ('QUERY_MATCH_BOTH', 'both'); 
    4651 
    4752// This is needed for some constants 
     
    213218            $qWhere .= " and not(i.unread & ".RSS_MODE_PRIVATE_STATE.") "; 
    214219        } 
     220 
    215221        $qWhere .= " and not(i.unread & ".RSS_MODE_DELETED_STATE.") "; 
     222         
     223        if(array_key_exists(QUERY_MATCH_STATE, $_REQUEST) && QUERY_MATCH_READ == $_REQUEST[QUERY_MATCH_STATE]) { 
     224                // Show only read items. 
     225                $qWhere .= " and not (i.unread & " . RSS_MODE_UNREAD_STATE . ") "; 
     226                } 
     227                else if(array_key_exists(QUERY_MATCH_STATE, $_REQUEST) && QUERY_MATCH_UNREAD == $_REQUEST[QUERY_MATCH_STATE]) { 
     228                        // Show only unread items. 
     229                        $qWhere .= " and (i.unread & " . RSS_MODE_UNREAD_STATE . ") "; 
     230                } 
    216231 
    217232        if ($this->orderBy == QUERY_ORDER_BY_DATE) { 
  • trunk/gregarius/cls/wrappers/searchform.php

    r1761 r1775  
    6969    return ((array_key_exists(QUERY_MATCH_TYPE, $_REQUEST) && 
    7070        $_REQUEST[QUERY_MATCH_TYPE] == QUERY_MATCH_WITHIN)?" checked=\"checked\"":"");   
     71} 
     72 
     73function rss_search_state_read_checked() { 
     74    return ((array_key_exists(QUERY_MATCH_STATE, $_REQUEST) && 
     75        $_REQUEST[QUERY_MATCH_STATE] == QUERY_MATCH_READ) ?" checked=\"checked\"":"");   
     76} 
     77 
     78function rss_search_state_unread_checked() { 
     79    return ((array_key_exists(QUERY_MATCH_STATE, $_REQUEST) && 
     80        $_REQUEST[QUERY_MATCH_STATE] == QUERY_MATCH_UNREAD) ?" checked=\"checked\"":"");     
     81} 
     82 
     83function rss_search_state_both_checked() { 
     84    return ((array_key_exists(QUERY_MATCH_STATE, $_REQUEST) && 
     85        $_REQUEST[QUERY_MATCH_STATE] == QUERY_MATCH_BOTH) || 
     86        !array_key_exists(QUERY_MATCH_STATE, $_REQUEST) ?" checked=\"checked\"":"");     
    7187} 
    7288