Template for viewing HTML messages in iframes
authorstevetruckstuff <stevetruckstuff@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Thu, 19 Oct 2006 16:08:14 +0000 (16:08 +0000)
committerstevetruckstuff <stevetruckstuff@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Thu, 19 Oct 2006 16:08:14 +0000 (16:08 +0000)
git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@11928 7612ce4b-ef26-0410-bec9-ea0150e637f0

functions/mime.php
templates/default/css/default.css
templates/default/read_html_iframe.tpl [new file with mode: 0644]

index 2ad04ef..c86621a 100644 (file)
@@ -414,33 +414,11 @@ function formatBody($imap_stream, $message, $color, $wrap_at, $ent_num, $id, $ma
                     . '&amp;ent_id=' . $ent_num
                     . '&amp;view_unsafe_images=' . (int) $view_unsafe_images;
 
-                // adding warning message
-                $body = html_tag('div',_("Viewing HTML formatted email"),'center');
-
-                /**
-                 * height can't be set to 100%, because it does not work as expected when
-                 * iframe is inside the table. Browsers do not create full height objects
-                 * even when iframe is not nested. Maybe there is some way to get full size
-                 * with CSS. Tested in firefox 1.02 and opera 7.53
-                 *
-                 * width="100%" does not work as expected, when table width is not set (automatic)
-                 *
-                 * tokul: I think <iframe> are safer sandbox than <object>. Objects might
-                 * need special handling for IE and IE6SP2.
-                 */
-                $body.= "<div><iframe name=\"message_frame\" width=\"100%\" height=\"$iframe_height\" src=\"$iframeurl\""
-                    .' frameborder="1" marginwidth="0" marginheight="0" scrolling="auto">' . "\n";
-
-                // Message for browsers without iframe support
-                //$body.= _("Your browser does not support inline frames.
-                // You can view HTML formated message by following below link.");
-                //$body.= "<br /><a href=\"$iframeurl\">"._("View HTML Message")."</a>";
-
-                // if browser can't render iframe, it renders html message.
-                $body.= $html_body;
-
-                // close iframe
-                $body.="</iframe></div>\n";
+                global $oTemplate;
+                $oTemplate->assign('iframe_url', $iframeurl);
+                $oTemplate->assign('html_body', $html_body);
+                
+                $body = $oTemplate->fetch('read_html_iframe.tpl');
             } else {
                 // old way of html rendering
                 $body = magicHTML($body, $id, $message, $mailbox);
index 2bee390..c18d246 100644 (file)
@@ -1032,5 +1032,15 @@ div.viewHeader span.headerName {
     font-weight: bold;
 }
 
+div.htmlIframe {
+    text-align: center;
+    margin-left: auto;
+    margin-right: auto;
+    width: 100%;
+}
 
+div.htmlIframe iframe {
+    height: 250px;
+    width:100%;
+}
 
diff --git a/templates/default/read_html_iframe.tpl b/templates/default/read_html_iframe.tpl
new file mode 100644 (file)
index 0000000..b673b44
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+/**
+ * read_html_iframe.tpl
+ *
+ * Tempalte for displaying HTML messages within an iframe.
+ * 
+ * The following variables are available in this template:
+ *      $iframe_url - URL to use for the src of the iframe.
+ *      $html_body  - HTML to spit out in case the brwoser does nto support iframes
+ *
+ * @copyright &copy; 1999-2006 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
+ * @package squirrelmail
+ * @subpackage templates
+ */
+
+/** add required includes **/
+
+/** extract template variables **/
+extract($t);
+
+/** Begin template **/
+?>
+<div class="htmlIframe">
+<?php echo _("Viewing HTML formatted email"); ?>
+<iframe name="message_frame" src="<?php echo $iframe_url; ?>" frameborder="1" marginwidth="0" marginheight="0" scrolling="auto">
+<?php echo $html_body; ?>
+</iframe>
+</div>
\ No newline at end of file