global $username, $attachment_dir, $SERVER_NAME,
$version, $attachments;
- $header = $message->header;
+ $header = $message->rfc822_header;
$hashed_attachment_dir = getHashedDir($username, $attachment_dir);
$recipient_o = $header->dnt;
global $msn_user_support, $default_use_mdn, $draft_folder, $sent_folder,
$default_use_priority, $show_xmailer_default,
$mdn_user_support, $PHP_SELF, $javascript_on;
-
- $header = $message->header;
+
+ $header = $message->rfc822_header;
$env = array();
$env[_("Subject")] = htmlspecialchars($header->subject);
- $from_o = $header->from;
- if (is_object($from_o)) {
- $from_name = $from_o->getAddress();
- } else {
- $from_name = _("Unknown sender");
+ $from_name = $header->getAddr_s('from');
+ if (!$from_name) {
+ $from_name = $header->getAddr_s('sender');
+ if (!$from_name) {
+ $from_name = _("Unknown sender");
+ }
}
$env[_("From")] = htmlspecialchars($from_name);
$env[_("Date")] = getLongDateString($header->date);
$env[_("Read receipt")] = _("send");
} else {
if ( !($mailbox == $draft_folder ||
- $mailbox == $sent_folder || $message->is_deleted)) {
+ $mailbox == $sent_folder ||
+ $message->is_deleted ||
+ $passed_ent_id)) {
$mdn_url = $PHP_SELF . '&sendreceipt=1';
if ($FirstTimeSee && $javascript_on) {
$script = '<script language="JavaScript" type="text/javascript">' ."\n";
}
}
- $s = '<table width="100%" cellpadding="0" cellspacing="0" border="0" ' .
- 'align="center">';
+ $s = '<TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"';
+ $s .= ' ALIGN="center" BGCOLOR="' . $color[0] . '">';
foreach ($env as $key => $val) {
if ($val) {
- $s .= '<tr>';
- $s .= html_tag( 'td', '<b>'.$key.': </b>', 'right', $color[0], 'valign="top" width="20%"') . "\n";
- $s .= html_tag( 'td', $val, 'left', $color[0], 'valign="top" width="80%"');
- $s .= "\n</tr>";
+ $s .= '<TR>';
+ $s .= html_tag('TD', '<B>' . $key . ': </B>', 'RIGHT', '', 'VALIGN="TOP" WIDTH="20%"') . "\n";
+ $s .= html_tag('TD', $val, 'left', '', 'VALIGN="TOP" WIDTH="80%"') . "\n";
+ $s .= '</TR>';
}
}
- $s .= '</table>';
echo $s;
+ do_hook("read_body_header");
+ formatToolbar($mailbox,$passed_id,$passed_ent_id,$message, $color);
+ echo '</table>';
}
function formatMenubar($mailbox, $passed_id, $passed_ent_id, $message, $mbx_response) {
$startMessage, $compose_new_win, $PHP_SELF, $save_as_draft;
$topbar_delimiter = ' | ';
- $urlMailbox = encodeHeader($mailbox);
-
+ $urlMailbox = urlencode($mailbox);
$s = '<table width="100%" cellpadding="3" cellspacing="0" align="center"'.
' border="0" bgcolor="'.$color[9].'"><tr><td align="left" width="33%"><small>';
}
}
- $s .= '</small></td><td align="right" width="33%"><small>';
-
+ $s .= '</small></td><td align="right" width="33%" nowrap><small>';
$comp_action_uri = $comp_uri . '&action=forward';
if ($compose_new_win == '1') {
$s .= '<a href="javascript:void(0)" '.
}
$s .= $topbar_delimiter;
+ $comp_action_uri = $comp_uri . '&action=forward_as_attachment';
+ if ($compose_new_win == '1') {
+ $s .= '<a href="javascript:void(0)" '.
+ 'onclick="comp_in_new(\''.$comp_action_uri.'\')">'._("Forward as Attachment").'</a>';
+ } else {
+ $s .= '<a href="'.$comp_action_uri.'">'._("Forward as Attachment").'</a>';
+ }
+ $s .= $topbar_delimiter;
+
+
+
$comp_action_uri = decodeHeader($comp_uri . '&action=reply');
if ($compose_new_win == '1') {
$s .= '<a href="javascript:void(0)" '.
function formatToolbar($mailbox, $passed_id, $passed_ent_id, $message, $color) {
global $QUERY_STRING, $base_uri;
- $urlMailbox = encodeHeader($mailbox);
- $s = '<table width="100%" cellpadding="3" cellspacing="0" align="center"'.
- ' border="0" bgcolor="'.$color[9].'">'. "\n".
- '<tr align="right"><td valign="top" align="right"><small>';
+ $urlMailbox = urlencode($mailbox);
$url = $base_uri.'src/view_header.php?'.$QUERY_STRING;
+
+ $s = "<TR>\n";
+ $s .= '<TD VALIGN="MIDDLE" ALIGN="RIGHT" WIDTH="20%"><B>' . _("Options") . ": </B></TD>\n";
+ $s .= '<TD VALIGN="MIDDLE" ALIGN="LEFT" WIDTH="80%"><SMALL>';
$s .= '<a href="'.$url.'">'.("View Full Header").'</a>';
- /* Output the printer friendly link if we are in subtle mode. */
- $s .= ' | '.
- printer_friendly_link($mailbox, $passed_id, $passed_ent_id, $color);
+
+ /* Output the printer friendly link if we are in subtle mode. */
+ $s .= ' | ';
+ $s .= printer_friendly_link($mailbox, $passed_id, $passed_ent_id, $color);
echo $s;
do_hook("read_body_header_right");
- echo '</small></td></tr>';
- echo '</table>'."\n";
+ $s = "</SMALL></TD>\n";
+ $s .= "</TR>\n";
+ echo $s;
+
+
}
$message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
$messages[$uidvalidity][$passed_id] = $message;
} else {
-// $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
- $message = $messages[$uidvalidity][$passed_id];
+ $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
+// $message = $messages[$uidvalidity][$passed_id];
}
$FirstTimeSee = !$message->is_seen;
$message->is_seen = true;
$messages[$uidvalidity][$passed_id] = $message;
-if (isset($passed_ent_id)) {
+if (isset($passed_ent_id) && $passed_ent_id) {
$message = $message->getEntity($passed_ent_id);
- $message->id = $passed_id;
- $message->mailbox = $mailbox;
+ if ($message->type0 != 'message' && $message->type1 != 'rfc822') {
+ $message = $message->parent;
+ }
+ $read = sqimap_run_command ($imapConnection, "FETCH $passed_id BODY[$passed_ent_id.HEADER]", true, $response, $msg, $uid_support);
+ $rfc822_header = new rfc822_header();
+ $rfc822_header->parseHeader($read);
+ $message->rfc822_header = $rfc822_header;
} else {
$passed_ent_id = 0;
}
$header = $message->header;
-//do_hook('html_top');
+do_hook('html_top');
/* =============================================================================
* block for handling incoming url vars
$messagebody = '';
$ent_ar = $message->findDisplayEntity(array());
-for ($i = 0; $i < count($ent_ar); $i++) {
+$cnt = count($ent_ar);
+for ($i = 0; $i < $cnt; $i++) {
$messagebody .= formatBody($imapConnection, $message, $color, $wrap_at, $ent_ar[$i], $passed_id, $mailbox);
- $messagebody .= '<hr noshade size=1>';
+ if ($i != $cnt-1) {
+ $messagebody .= '<hr noshade size=1>';
+ }
}
displayPageHeader($color, $mailbox);
do_hook('read_body_top');
formatMenuBar($mailbox, $passed_id, $passed_ent_id, $message, $mbx_response);
formatEnvheader($mailbox, $passed_id, $passed_ent_id, $message, $color, $FirstTimeSee);
-do_hook("read_body_header");
-formatToolbar($mailbox,$passed_id,$passed_ent_id,$message, $color);
-echo '<table width="100%" cellpadding="3" cellspacing="3" align="center"'.
- ' border="0" bgcolor="'.$color[4].'">';
-echo '<tr><td>'.$messagebody.'</td></tr>';
-echo '<tr><td>'.formatAttachments($message,$ent_ar,$mailbox, $passed_id).'</td></tr>';
+echo '<table width="100%" cellpadding="0" cellspacing="5" align="center" border="0">';
+echo ' <tr><td>';
+echo ' <table width="100%" cellpadding="1" cellspacing="0" align="center"'.' border="0" bgcolor="'.$color[9].'">';
+echo ' <tr><td>';
+echo ' <table width="100%" cellpadding="3" cellspacing="0" align="center" border="0">';
+echo ' <tr bgcolor="'.$color[4].'"><td>'.$messagebody. '</td></tr>';
+echo ' </table></td></tr>';
+echo ' </table>';
+echo ' </td></tr>';
+
+$attachmentsdisplay = formatAttachments($message,$ent_ar,$mailbox, $passed_id);
+if ($attachmentsdisplay) {
+ echo ' <tr><td>';
+ echo ' <table width="100%" cellpadding="1" cellspacing="0" align="center"'.' border="0" bgcolor="'.$color[9].'">';
+ echo ' <tr><td>';
+ echo ' <table width="100%" cellpadding="1" cellspacing="0" align="center" border="0" bgcolor="'.$color[4].'">';
+ echo ' <tr><td ALIGN="left" bgcolor="'.$color[9].'"><b>';
+ echo _("Attachments").':</b></td></tr><tr><td>';
+ echo ' <table width="100%" cellpadding="2" cellspacing="2" align="center"'.' border="0" bgcolor="'.$color[0].'">';
+ echo $attachmentsdisplay;
+ echo ' </td></tr></table></table></td></tr>';
+ echo ' </table></td></tr>';
+ echo ' </table>';
+ echo ' </td></tr>';
+}
echo '</table>';
+
/* show attached images inline -- if pref'fed so */
if (($attachment_common_show_images) &&
is_array($attachment_common_show_images_list)) {
'?' .
'passed_id=' . urlencode($img['passed_id']) .
'&mailbox=' . urlencode($mailbox) .
- '&passed_ent_id=' . urlencode($img['ent_id']) .
+ '&ent_id=' . urlencode($img['ent_id']) .
'&absolute_dl=true';
echo html_tag( 'table', "\n" .
do_hook('read_body_bottom');
do_hook('html_bottom');
+//$message->clean_up();
sqimap_logout($imapConnection);
?>
</body>