From b25dfd0913f2ca5666124740c30156fa0a6abaef Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Wed, 23 Jun 2010 05:55:08 -0400
Subject: [PATCH] - removed PHP closing tag

---
 program/steps/mail/show.inc |   41 +++++++++++++++++++----------------------
 1 files changed, 19 insertions(+), 22 deletions(-)

diff --git a/program/steps/mail/show.inc b/program/steps/mail/show.inc
index 33e87d5..69b30eb 100644
--- a/program/steps/mail/show.inc
+++ b/program/steps/mail/show.inc
@@ -22,28 +22,18 @@
 $PRINT_MODE = $RCMAIL->action=='print' ? TRUE : FALSE;
 
 // similar code as in program/steps/mail/get.inc
-if ($_GET['_uid']) {
-  $MESSAGE = new rcube_message(get_input_value('_uid', RCUBE_INPUT_GET));
+if ($uid = get_input_value('_uid', RCUBE_INPUT_GET)) {
+  $MESSAGE = new rcube_message($uid);
 
   // if message not found (wrong UID)...
   if (empty($MESSAGE->headers)) {
-    $OUTPUT->show_message('messageopenerror', 'error');
-    // ... display error or preview page
-    if ($RCMAIL->action=='preview' && $OUTPUT->template_exists('messageerror'))
-      $OUTPUT->send('messageerror');
-    else if ($RCMAIL->action=='preview' && $OUTPUT->template_exists('messagepreview'))
-      $OUTPUT->send('messagepreview');
-    // ... go back to the list
-    else {
-      rcmail_overwrite_action('');
-      return;
-    }
+    rcmail_message_error($uid);
   }
 
   send_nocacheing_headers();
 
   $mbox_name = $IMAP->get_mailbox_name();
-  
+
   // show images?
   rcmail_check_safe($MESSAGE);
 
@@ -52,7 +42,7 @@
     $IMAP->set_charset($MESSAGE->headers->charset);
 
   $OUTPUT->set_pagetitle($MESSAGE->subject);
-  
+
   // give message uid to the client
   $OUTPUT->set_env('uid', $MESSAGE->uid);
   // set environement
@@ -74,7 +64,7 @@
 
   if (!$OUTPUT->ajax_call)
     $OUTPUT->add_label('checkingmail', 'deletemessage', 'movemessagetotrash', 'movingmessage');
-        
+
   // check for unset disposition notification
   if ($MESSAGE->headers->mdn_to &&
       !$MESSAGE->headers->mdn_sent && !$MESSAGE->headers->seen &&
@@ -104,7 +94,7 @@
     $next = $prev = $first = $last = -1;
 
     if ($_SESSION['sort_col'] == 'date' && $_SESSION['sort_order'] != 'DESC'
-        && empty($_REQUEST['_search']) && !$IMAP->skip_deleted)
+        && empty($_REQUEST['_search']) && !$CONFIG['skip_deleted'] && !$IMAP->threading)
       {
       // this assumes that we are sorted by date_DESC
       $cnt = $IMAP->messagecount();
@@ -138,11 +128,14 @@
       $OUTPUT->set_env('next_uid', $next);
     if ($last > 0)
       $OUTPUT->set_env('last_uid', $last);
+
+    // Don't need a real messages count value
+    $OUTPUT->set_env('messagecount', 1);
     }
 
-  if (!$MESSAGE->headers->seen)
+  if (!$MESSAGE->headers->seen && ($RCMAIL->action == 'show' || ($RCMAIL->action == 'preview' && intval($CONFIG['preview_pane_mark_read']) == 0)))
     $RCMAIL->plugins->exec_hook('message_read', array('uid' => $MESSAGE->uid,
-      'mailbox' => $IMAP->mailbox, 'message' => $MESSAGE));
+      'mailbox' => $mbox_name, 'message' => $MESSAGE));
 }
 
 
@@ -226,9 +219,13 @@
 
 
 // mark message as read
-if ($MESSAGE && $MESSAGE->headers && !$MESSAGE->headers->seen)
-  $IMAP->set_flag($MESSAGE->uid, 'SEEN');
+if ($MESSAGE && $MESSAGE->headers && !$MESSAGE->headers->seen &&
+  ($RCMAIL->action == 'show' || ($RCMAIL->action == 'preview' && intval($CONFIG['preview_pane_mark_read']) == 0)))
+{
+  if ($IMAP->set_flag($MESSAGE->uid, 'SEEN') && $_SESSION['unseen_count'][$mbox_name])
+    $_SESSION['unseen_count'][$mbox_name] -= 1;
+}
 
 exit;
 
-?>
+

--
Gitblit v1.9.1