X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fread_body.php;h=fdc947301469849e68544732621f8543fc1174db;hb=d9b8769ca92973a03c12a6bfffd44d5b6885d2be;hp=3b5ead8bca5fee0334c08a71ea1851ce77d675f3;hpb=3c21f499a99d3459e7d2671588ca7ecbe044fa27;p=squirrelmail.git diff --git a/src/read_body.php b/src/read_body.php index 3b5ead8b..fdc94730 100644 --- a/src/read_body.php +++ b/src/read_body.php @@ -6,7 +6,7 @@ * This file is used for reading the msgs array and displaying * the resulting emails in the right frame. * - * @copyright © 1999-2007 The SquirrelMail Project Team + * @copyright 1999-2012 The SquirrelMail Project Team * @license http://opensource.org/licenses/gpl-license.php GNU Public License * @version $Id$ * @package squirrelmail @@ -554,7 +554,8 @@ function formatMenubar($aMailbox, $passed_id, $passed_ent_id, $message, '&mailbox='.$urlMailbox.'&sort='.$sort. '&startMessage='.$startMessage.'&show_more=0'. "&where=$where&what=$what" . - '&delete_id='.$passed_id; + '&delete_id='.$passed_id . + '&smtoken='.sm_generate_security_token(); } if ($next >= 0) { @@ -562,7 +563,8 @@ function formatMenubar($aMailbox, $passed_id, $passed_ent_id, $message, '&mailbox='.$urlMailbox.'&sort='.$sort. '&startMessage='.$startMessage.'&show_more=0'. "&where=$where&what=$what" . - '&delete_id='.$passed_id; + '&delete_id='.$passed_id . + '&smtoken='.sm_generate_security_token(); } } } @@ -628,8 +630,8 @@ function formatMenubar($aMailbox, $passed_id, $passed_ent_id, $message, // If Draft folder - create Resume link $resume_draft = $edit_as_new = false; - if (($mailbox == $draft_folder) && ($save_as_draft)) { - $resume_draft = true; 'smaction_draft'; + if (isDraftMailbox($mailbox) && ($save_as_draft)) { + $resume_draft = true; } else if (handleAsSent($mailbox)) { $edit_as_new = true; } @@ -674,12 +676,14 @@ function formatMenubar($aMailbox, $passed_id, $passed_ent_id, $message, global $accesskey_read_msg_reply, $accesskey_read_msg_reply_all, $accesskey_read_msg_forward, $accesskey_read_msg_as_attach, $accesskey_read_msg_delete, $accesskey_read_msg_bypass_trash, - $accesskey_read_msg_move, $accesskey_read_msg_move_to; + $accesskey_read_msg_move, $accesskey_read_msg_move_to, + $accesskey_read_msg_copy; } else { $accesskey_read_msg_reply = $accesskey_read_msg_reply_all = $accesskey_read_msg_forward = $accesskey_read_msg_as_attach = $accesskey_read_msg_delete = $accesskey_read_msg_bypass_trash = - $accesskey_read_msg_move = $accesskey_read_msg_move_to = 'NONE'; + $accesskey_read_msg_move = $accesskey_read_msg_move_to = + $accesskey_read_msg_copy = 'NONE'; } $oTemplate->assign('accesskey_read_msg_reply', $accesskey_read_msg_reply); $oTemplate->assign('accesskey_read_msg_reply_all', $accesskey_read_msg_reply_all); @@ -689,6 +693,7 @@ function formatMenubar($aMailbox, $passed_id, $passed_ent_id, $message, $oTemplate->assign('accesskey_read_msg_bypass_trash', $accesskey_read_msg_bypass_trash); $oTemplate->assign('accesskey_read_msg_move_to', $accesskey_read_msg_move_to); $oTemplate->assign('accesskey_read_msg_move', $accesskey_read_msg_move); + $oTemplate->assign('accesskey_read_msg_copy', $accesskey_read_msg_copy); global $null; do_hook('read_body_menu', $null); @@ -962,6 +967,14 @@ if (isset($passed_ent_id) && $passed_ent_id) { } $header = $message->header; +// gmail does not mark messages as read when retrieving the message body +// even though RFC 3501, section 6.4.5 (FETCH Command) says: +// "The \Seen flag is implicitly set; if this causes the flags to change, +// they SHOULD be included as part of the FETCH responses." +// +if ($imap_server_type == 'gmail') { + sqimap_toggle_flag($imapConnection, $passed_id, '\\Seen', true, true); +} /****************************************/ /* Block for handling incoming url vars */