From b19097058c02f203321599bf04a5d7da7c2dafe8 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Fri, 01 Dec 2006 13:06:16 -0500
Subject: [PATCH] Introducing preview pane and conditional skin tags

---
 program/steps/mail/show.inc |   38 ++++++++++++--------------------------
 1 files changed, 12 insertions(+), 26 deletions(-)

diff --git a/program/steps/mail/show.inc b/program/steps/mail/show.inc
index c8e4937..8e6c3cd 100644
--- a/program/steps/mail/show.inc
+++ b/program/steps/mail/show.inc
@@ -30,12 +30,18 @@
   $MESSAGE = array('UID' => get_input_value('_uid', RCUBE_INPUT_GET));
   $MESSAGE['headers'] = $IMAP->get_headers($MESSAGE['UID']);
   $MESSAGE['structure'] = $IMAP->get_structure($MESSAGE['UID']);
-    
+  
   // go back to list if message not found (wrong UID)
   if (!$MESSAGE['headers'] || !$MESSAGE['structure'])
     {
-    $_action = 'list';
-    return;
+    show_message('messageopenerror', 'error');
+    if ($_action=='preview' && template_exists('messagepreview'))
+        parse_template('messagepreview');
+    else
+      {
+      $_action = 'list';
+      return;
+      }
     }
 
   $MESSAGE['subject'] = $IMAP->decode_header($MESSAGE['headers']->subject);
@@ -131,28 +137,6 @@
 
 
 
-// return an HTML iframe for loading mail content
-function rcmail_messagecontent_frame($attrib)
-  {
-  global $COMM_PATH, $OUTPUT, $GET_URL, $JS_OBJECT_NAME;
-  
-  // allow the following attributes to be added to the <iframe> tag
-  $attrib_str = create_attrib_string($attrib);
-  $framename = 'rcmailcontentwindow';
-  
-  $out = sprintf('<iframe src="%s" name="%s"%s>%s</iframe>'."\n",
-         $GET_URL,
-         $framename,
-         $attrib_str,
-         rcube_label('loading'));
-
-
-  $OUTPUT->add_script("$JS_OBJECT_NAME.set_env('contentframe', '$framename');");
-
-  return $out;
-  }
-
-
 function rcmail_remote_objects_msg($attrib)
   {
   global $CONFIG, $OUTPUT, $JS_OBJECT_NAME;
@@ -177,8 +161,10 @@
   }
 
 
-if ($_action=='print')
+if ($_action=='print' && template_exists('printmessage'))
   parse_template('printmessage');
+else if ($_action=='preview' && template_exists('messagepreview'))
+    parse_template('messagepreview');
 else
   parse_template('message');
 ?>
\ No newline at end of file

--
Gitblit v1.9.1