Changeset b46edc0f in github


Ignore:
Timestamp:
Dec 1, 2010 4:52:23 AM (2 years ago)
Author:
alecpl <alec@…>
Branches:
master, HEAD, courier-fix, dev-browser-capabilities, pdo, release-0.6, release-0.7, release-0.8
Children:
53604a0
Parents:
43fb35b
Message:
  • Fix "Cannot use scalar value..." warning (#1487066)
Location:
program/steps/mail
Files:
6 edited

Legend:

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

    rb72e2f9 rb46edc0f  
    5454  { 
    5555    $success = $IMAP->clear_mailbox($mbox); 
    56    
     56 
    5757    if ($success && !empty($_REQUEST['_reload'])) 
    5858    { 
     
    6363      $OUTPUT->command('set_unread_count', $mbox, 0); 
    6464      $OUTPUT->command('set_quota', rcmail_quota_content()); 
    65       $_SESSION['unseen_count'][$mbox] = 0; 
     65      rcmail_set_unseen_count($mbox, 0); 
    6666    } 
    6767    else 
  • program/steps/mail/func.inc

    ra4c9705 rb46edc0f  
    546546  global $RCMAIL; 
    547547 
    548   $old_unseen = $_SESSION['unseen_count'][$mbox_name]; 
     548  $old_unseen = rcmail_get_unseen_count($mbox_name); 
    549549 
    550550  if ($count === null) 
     
    556556    $RCMAIL->output->command('set_unread_count', $mbox_name, $unseen, ($mbox_name == 'INBOX')); 
    557557 
     558  rcmail_set_unseen_count($mbox_name, $unseen); 
     559 
     560  return $unseen; 
     561} 
     562 
     563 
     564function rcmail_set_unseen_count($mbox_name, $count) 
     565{ 
    558566  // @TODO: this data is doubled (session and cache tables) if caching is enabled 
    559   $_SESSION['unseen_count'][$mbox_name] = $unseen; 
    560  
    561   return $unseen; 
     567 
     568  // Make sure we have an array here (#1487066) 
     569  if (!is_array($_SESSION['unseen_count'])) 
     570    $_SESSION['unseen_count'] = array(); 
     571 
     572  $_SESSION['unseen_count'][$mbox_name] = $count; 
     573} 
     574 
     575 
     576function rcmail_get_unseen_count($mbox_name) 
     577{ 
     578  if (is_array($_SESSION['unseen_count']) && array_key_exists($mbox_name, $_SESSION['unseen_count'])) 
     579    return $_SESSION['unseen_count'][$mbox_name]; 
     580  else 
     581    return null; 
    562582} 
    563583 
  • program/steps/mail/getunread.inc

    re019f2d rb46edc0f  
    2929 
    3030  foreach ($a_folders as $mbox_row) { 
    31     if (!$check_all && isset($_SESSION['unseen_count'][$mbox_row]) && $mbox_row != $current) 
    32       $unseen = $_SESSION['unseen_count'][$mbox_row]; 
     31    $unseen_old = rcmail_get_unseen_count($mbox_row); 
     32 
     33    if (!$check_all && $unseen_old !== null && $mbox_row != $current) 
     34      $unseen = $unseen_old; 
    3335    else 
    34       $unseen = $IMAP->messagecount($mbox_row, 'UNSEEN', !isset($_SESSION['unseen_count'][$mbox_row])); 
     36      $unseen = $IMAP->messagecount($mbox_row, 'UNSEEN', $unseen_old === null); 
    3537 
    36     if ($unseen || !isset($_SESSION['unseen_count'][$mbox_row])) { 
     38    if ($unseen || $unseen_old === null) { 
    3739      $OUTPUT->command('set_unread_count', $mbox_row, $unseen, $inbox && $mbox_row == 'INBOX'); 
    3840    } 
    39     $_SESSION['unseen_count'][$mbox_row] = $unseen; 
     41 
     42    rcmail_set_unseen_count($mbox_row, $unseen); 
    4043  } 
    4144} 
  • program/steps/mail/mark.inc

    r1555ac6 rb46edc0f  
    9999      $mbox = $IMAP->get_mailbox_name(); 
    100100      $unseen_count = $msg_count ? $IMAP->messagecount($mbox, 'UNSEEN') : 0; 
    101       $old_unseen = $_SESSION['unseen_count'][$mbox]; 
     101      $old_unseen = rcmail_get_unseen_count($mbox); 
    102102 
    103103      if ($old_unseen != $unseen_count) { 
    104104        $OUTPUT->command('set_unread_count', $mbox, $unseen_count, ($mbox == 'INBOX')); 
    105             $_SESSION['unseen_count'][$mbox] = $unseen_count; 
     105        rcmail_set_unseen_count($mbox, $unseen_count); 
    106106      } 
    107107      $OUTPUT->command('set_rowcount', rcmail_get_messagecount_text($msg_count)); 
  • program/steps/mail/move_del.inc

    rb72e2f9 rb46edc0f  
    110110  $mbox = $IMAP->get_mailbox_name(); 
    111111  $unseen_count = $msg_count ? $IMAP->messagecount($mbox, 'UNSEEN') : 0; 
    112   $old_unseen = $_SESSION['unseen_count'][$mbox]; 
    113    
     112  $old_unseen = rcmail_get_unseen_count($mbox); 
     113 
    114114  if ($old_unseen != $unseen_count) { 
    115115    $OUTPUT->command('set_unread_count', $mbox, $unseen_count, ($mbox == 'INBOX')); 
    116     $_SESSION['unseen_count'][$mbox] = $unseen_count; 
     116    rcmail_set_unseen_count($mbox, $unseen_count); 
    117117  } 
    118118 
  • program/steps/mail/show.inc

    r29b3973 rb46edc0f  
    197197  ($RCMAIL->action == 'show' || ($RCMAIL->action == 'preview' && intval($CONFIG['preview_pane_mark_read']) == 0))) 
    198198{ 
    199   if ($IMAP->set_flag($MESSAGE->uid, 'SEEN') && $_SESSION['unseen_count'][$mbox_name]) 
    200     $_SESSION['unseen_count'][$mbox_name] -= 1; 
     199  if ($IMAP->set_flag($MESSAGE->uid, 'SEEN')) { 
     200    if ($count = rcmail_get_unseen_count($mbox_name)) { 
     201      rcmail_set_unseen_count($mbox_name, $count - 1); 
     202    } 
     203  } 
    201204} 
    202205 
Note: See TracChangeset for help on using the changeset viewer.