* - Send mail
* - Save As Draft
*
- * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @copyright © 1999-2009 The SquirrelMail Project Team
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @version $Id$
* @package squirrelmail
sqgetGlobalVar('mail_sent',$mail_sent, $SQ_GLOBAL);
sqgetGlobalVar('passed_id',$passed_id, $SQ_GLOBAL, NULL, SQ_TYPE_BIGINT);
sqgetGlobalVar('passed_ent_id',$passed_ent_id, $SQ_GLOBAL);
+sqgetGlobalVar('fwduid',$fwduid, $SQ_GLOBAL, '');
sqgetGlobalVar('attach',$attach, SQ_POST);
sqgetGlobalVar('draft',$draft, SQ_POST);
'subject', 'newmail', 'send_to_bcc', 'passed_id', 'mailbox',
'from_htmladdr_search', 'identity', 'draft_id', 'delete_draft',
'mailprio', 'edit_as_new', 'attachments', 'composesession',
- 'request_mdn', 'request_dr');
+ 'request_mdn', 'request_dr', 'fwduid');
foreach ($compo_var_list as $var) {
if ( isset($session_expired_post[$var]) && !isset($$var) ) {
$body, $startMessage, $action, $attachments,
$use_signature, $signature, $prefix_sig, $session_expired,
$editor_size, $editor_height, $subject, $newmail,
- $use_javascript_addr_book, $passed_id, $mailbox,
+ $use_javascript_addr_book, $passed_id, $mailbox, $fwduid,
$from_htmladdr_search, $location_of_buttons, $attachment_dir,
$username, $data_dir, $identity, $idents, $delete_draft,
$mailprio, $compose_new_win, $saved_draft, $mail_sent, $sig_first,
echo addHidden('passed_id', $passed_id);
}
+ if (isset($fwduid)) {
+//FIXME: DON'T ECHO HTML FROM CORE!
+ echo addHidden('fwduid', $fwduid);
+ }
+
if ($saved_draft == 'yes') {
$oTemplate->assign('note', _("Your draft has been saved."));
$oTemplate->display('note.tpl');
$oTemplate->assign('bcc', htmlspecialchars($send_to_bcc));
$oTemplate->assign('subject', htmlspecialchars($subject));
+ // access keys...
+ //
+ global $accesskey_compose_to, $accesskey_compose_cc,
+ $accesskey_compose_identity, $accesskey_compose_bcc,
+ $accesskey_compose_subject;
+ $oTemplate->assign('accesskey_compose_identity', $accesskey_compose_identity);
+ $oTemplate->assign('accesskey_compose_to', $accesskey_compose_to);
+ $oTemplate->assign('accesskey_compose_cc', $accesskey_compose_cc);
+ $oTemplate->assign('accesskey_compose_bcc', $accesskey_compose_bcc);
+ $oTemplate->assign('accesskey_compose_subject', $accesskey_compose_subject);
+
$oTemplate->display('compose_header.tpl');
if ($location_of_buttons == 'between') {
$oTemplate->assign('body', $body_str);
$oTemplate->assign('show_bottom_send', $location_of_buttons!='bottom');
+ // access keys...
+ //
+ global $accesskey_compose_body, $accesskey_compose_send;
+ $oTemplate->assign('accesskey_compose_body', $accesskey_compose_body);
+ $oTemplate->assign('accesskey_compose_send', $accesskey_compose_send);
+
$oTemplate->display ('compose_body.tpl');
if ($location_of_buttons == 'bottom') {
$oTemplate->assign('max_file_size', empty($max) ? -1 : $max);
$oTemplate->assign('attachments', $attach);
+ // access keys...
+ //
+ global $accesskey_compose_attach_browse, $accesskey_compose_attach,
+ $accesskey_compose_delete_attach;
+ $oTemplate->assign('accesskey_compose_attach_browse', $accesskey_compose_attach_browse);
+ $oTemplate->assign('accesskey_compose_attach', $accesskey_compose_attach);
+ $oTemplate->assign('accesskey_compose_delete_attach', $accesskey_compose_delete_attach);
+
$oTemplate->display('compose_attachments.tpl');
} // End of file_uploads if-block
/* End of attachment code */
-//FIXME: no direct echoing to browser, no HTML output in core!
- echo addHidden('username', $username).
- addHidden('smaction', $action).
- addHidden('mailbox', $mailbox);
+ $oTemplate->assign('username', $username);
+ $oTemplate->assign('smaction', $action);
+ $oTemplate->assign('mailbox', $mailbox);
sqgetGlobalVar('QUERY_STRING', $queryString, SQ_SERVER);
-//FIXME: no direct echoing to browser, no HTML output in core!
- echo addHidden('composesession', $composesession).
- addHidden('querystring', $queryString).
- (!empty($attach_array) ?
- addHidden('attachments', urlencode(serialize($attach_array))) : '').
- "</form>\n";
+ $oTemplate->assign('querystring', $queryString);
+ $oTemplate->assign('composesession', $composesession);
+ $oTemplate->assign('send_button_count', unique_widget_name('send', TRUE));
+ if (!empty($attach_array))
+ $oTemplate->assign('attachments', urlencode(serialize($attach_array)));
+
+ $aUserNotices = array();
+
+ // File uploads are off, so we didn't show that part of the form.
+ // To avoid bogus bug reports, tell the user why.
if (!(bool) ini_get('file_uploads')) {
- /* File uploads are off, so we didn't show that part of the form.
- To avoid bogus bug reports, tell the user why. */
-//FIXME: no direct echoing to browser, no HTML output in core!
- echo '<p style="text-align:center">'
- . _("Because PHP file uploads are turned off, you can not attach files to this message. Please see your system administrator for details.")
- . "</p>\r\n";
+ $aUserNotices[] = _("Because PHP file uploads are turned off, you can not attach files to this message. Please see your system administrator for details.");
}
+ $oTemplate->assign('user_notices', $aUserNotices);
+
+ $oTemplate->display('compose_form_close.tpl');
+
if ($compose_new_win=='1') {
$oTemplate->display('compose_newwin_close.tpl');
}
- do_hook('compose_bottom', $null);
-
$oErrorHandler->setDelayedErrors(false);
$oTemplate->display('footer.tpl');
}
$mdn_user_support=getPref($data_dir, $username, 'mdn_user_support',$default_use_mdn);
+ $address_book_button_attribs = array();
+ global $accesskey_compose_addresses;
+ if ($accesskey_compose_addresses != 'NONE')
+ $address_book_button_attribs['accesskey'] = $accesskey_compose_addresses;
if ($use_javascript_addr_book && checkForJavascript()) {
- $addr_book = addButton(_("Addresses"), null, array('onclick' => 'javascript:open_abook();'));
+ $addr_book = addButton(_("Addresses"),
+ null,
+ array_merge($address_book_button_attribs, array('onclick' => 'javascript:open_abook();')));
} else {
- $addr_book = addSubmit(_("Addresses"), 'html_addr_search');
+ $addr_book = addSubmit(_("Addresses"), 'html_addr_search', $address_book_button_attribs);
}
$oTemplate->assign('allow_priority', $default_use_priority==1);
$oTemplate->assign('drafts_enabled', $save_as_draft);
$oTemplate->assign('address_book_button', $addr_book);
+ // access keys...
+ //
+ global $accesskey_compose_priority, $accesskey_compose_on_read,
+ $accesskey_compose_on_delivery, $accesskey_compose_signature,
+ $accesskey_compose_save_draft, $accesskey_compose_send;
+ $oTemplate->assign('accesskey_compose_priority', $accesskey_compose_priority);
+ $oTemplate->assign('accesskey_compose_on_read', $accesskey_compose_on_read);
+ $oTemplate->assign('accesskey_compose_on_delivery', $accesskey_compose_on_delivery);
+ $oTemplate->assign('accesskey_compose_signature', $accesskey_compose_signature);
+ $oTemplate->assign('accesskey_compose_save_draft', $accesskey_compose_save_draft);
+ $oTemplate->assign('accesskey_compose_send', $accesskey_compose_send);
+
$oTemplate->display('compose_buttons.tpl');
}
// mark as replied or forwarded if applicable
//
- global $what, $iAccount, $startMessage, $passed_id, $mailbox;
+ global $what, $iAccount, $startMessage, $passed_id, $fwduid, $mailbox;
if ($action=='reply' || $action=='reply_all' || $action=='forward' || $action=='forward_as_attachment') {
require(SM_PATH . 'functions/mailbox_display.php');
if (in_array('$forwarded',$aMailbox['PERMANENTFLAGS'], true) ||
in_array('\\*',$aMailbox['PERMANENTFLAGS'])) {
- $aUpdatedMsgs = sqimap_toggle_flag($imap_stream, array($passed_id), '$Forwarded', true, false);
- if (isset($aUpdatedMsgs[$passed_id]['FLAGS'])) {
- if (isset($aMailbox['MSG_HEADERS'][$passed_id])) {
- $aMailbox['MSG_HEADERS'][$passed_id]['FLAGS'] = $aMsg['FLAGS'];
+ // when forwarding as an attachment from the message
+ // list, passed_id is not used, need to get UID(s)
+ // from the query string
+ //
+ if (empty($passed_id) && !empty($fwduid))
+ $ids = explode('_', $fwduid);
+ else
+ $ids = array($passed_id);
+
+ $aUpdatedMsgs = sqimap_toggle_flag($imap_stream, $ids, '$Forwarded', true, false);
+
+ foreach ($ids as $id) {
+ if (isset($aUpdatedMsgs[$id]['FLAGS'])) {
+ if (isset($aMailbox['MSG_HEADERS'][$id])) {
+ $aMailbox['MSG_HEADERS'][$id]['FLAGS'] = $aMsg['FLAGS'];
+ }
}
}
}