Changeset f6aac38 in github for program/steps/mail/func.inc


Ignore:
Timestamp:
Oct 13, 2010 3:15:51 PM (3 years ago)
Author:
alecpl <alec@…>
Branches:
master, HEAD, courier-fix, dev-browser-capabilities, pdo, release-0.6, release-0.7, release-0.8
Children:
1c1e1e3
Parents:
ad334a12
Message:
  • Minimize session data size by storing only last search result and by removing search result from session after listing with empty search filter
File:
1 edited

Legend:

Unmodified
Added
Removed
  • program/steps/mail/func.inc

    rba12c76 rf6aac38  
    7373 
    7474// set message set for search result 
    75 if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']])) 
    76   { 
    77   $IMAP->set_search_set($_SESSION['search'][$_REQUEST['_search']]); 
     75if (!empty($_REQUEST['_search']) && isset($_SESSION['search']) 
     76    && $_SESSION['search_request'] == $_REQUEST['_search'] 
     77) { 
     78  $IMAP->set_search_set($_SESSION['search']); 
    7879  $OUTPUT->set_env('search_request', $_REQUEST['_search']); 
    7980  $OUTPUT->set_env('search_text', $_SESSION['last_text_search']); 
    80   } 
     81} 
    8182 
    8283// set main env variables, labels and page title 
    83 if (empty($RCMAIL->action) || $RCMAIL->action == 'list') 
    84   { 
     84if (empty($RCMAIL->action) || $RCMAIL->action == 'list') { 
    8585  $mbox_name = $IMAP->get_mailbox_name(); 
    8686 
    87   if (empty($RCMAIL->action)) 
    88     { 
     87  if (empty($RCMAIL->action)) { 
    8988    // initialize searching result if search_filter is used 
    90     if ($_SESSION['search_filter'] && $_SESSION['search_filter'] != 'ALL') 
    91       { 
     89    if ($_SESSION['search_filter'] && $_SESSION['search_filter'] != 'ALL') { 
    9290      $search_request = md5($mbox_name.$_SESSION['search_filter']); 
    9391 
    9492      $IMAP->search($mbox_name, $_SESSION['search_filter'], RCMAIL_CHARSET, $_SESSION['sort_col']); 
    95       $_SESSION['search'][$search_request] = $IMAP->get_search_set(); 
     93      $_SESSION['search'] = $IMAP->get_search_set(); 
     94      $_SESSION['search_request'] = $search_request; 
    9695      $OUTPUT->set_env('search_request', $search_request); 
    9796      } 
     
    9998      $search_mods = $RCMAIL->config->get('search_mods', $SEARCH_MODS_DEFAULT); 
    10099      $OUTPUT->set_env('search_mods', $search_mods); 
    101     } 
     100  } 
    102101 
    103102  // set current mailbox and some other vars in client environment 
     
    136135 
    137136  $OUTPUT->set_pagetitle(rcmail_localize_foldername($mbox_name)); 
    138   } 
     137} 
    139138 
    140139 
Note: See TracChangeset for help on using the changeset viewer.