summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2008-02-02 20:30:01 +0000
committerthomascube <thomas@roundcube.net>2008-02-02 20:30:01 +0000
commitff08eed202d77935f277bf221f753dad6f657fdb (patch)
treeabac0380afa88db19d903ca5625d8853bab00d3f /program
parentadc3e41f6e3dabff366dcecbae1cc7466decf983 (diff)
Also respect receipt and priority settings when re-opening a draft message
Diffstat (limited to 'program')
-rw-r--r--program/lib/imap.inc7
-rw-r--r--program/steps/mail/compose.inc8
2 files changed, 12 insertions, 3 deletions
diff --git a/program/lib/imap.inc b/program/lib/imap.inc
index 8cb5d4a05..a7462a373 100644
--- a/program/lib/imap.inc
+++ b/program/lib/imap.inc
@@ -126,6 +126,7 @@ class iilBasicHeader
var $f;
var $internaldate;
var $references;
+ var $priority;
var $mdn_to;
var $mdn_sent = false;
var $is_reply = false;
@@ -1515,7 +1516,7 @@ function iil_C_FetchHeaders(&$conn, $mailbox, $message_set, $uidfetch=false) {
$request .= " FETCH $message_set (BODY.PEEK[HEADER.FIELDS ";
$request .= "(DATE FROM TO SUBJECT REPLY-TO IN-REPLY-TO CC BCC ";
$request .= "CONTENT-TRANSFER-ENCODING CONTENT-TYPE MESSAGE-ID ";
- $request .= "REFERENCES DISPOSITION-NOTIFICATION-TO)])\r\n";
+ $request .= "REFERENCES DISPOSITION-NOTIFICATION-TO X-PRIORITY)])\r\n";
if (!fputs($fp, $request)) {
return false;
@@ -1625,6 +1626,10 @@ function iil_C_FetchHeaders(&$conn, $mailbox, $message_set, $uidfetch=false) {
case 'message-id':
$result[$id]->messageID = $string;
break;
+ case 'x-priority':
+ if (preg_match('/^(\d+)/', $string, $matches))
+ $result[$id]->priority = intval($matches[1]);
+ break;
} // end switch ()
} // end while ()
} else {
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index 915d5a03a..908bc277e 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -736,6 +736,8 @@ function rcmail_compose_attachment_field($attrib)
function rcmail_priority_selector($attrib)
{
+ global $MESSAGE;
+
list($form_start, $form_end) = get_form_tags($attrib);
unset($attrib['form']);
@@ -749,7 +751,7 @@ function rcmail_priority_selector($attrib)
rcube_label('highest')),
array(5, 4, 0, 2, 1));
- $sel = isset($_POST['_priority']) ? $_POST['_priority'] : 0;
+ $sel = isset($_POST['_priority']) ? $_POST['_priority'] : intval($MESSAGE['headers']->priority);
$out = $form_start ? "$form_start\n" : '';
$out .= $selector->show($sel);
@@ -761,6 +763,8 @@ function rcmail_priority_selector($attrib)
function rcmail_receipt_checkbox($attrib)
{
+ global $MESSAGE;
+
list($form_start, $form_end) = get_form_tags($attrib);
unset($attrib['form']);
@@ -772,7 +776,7 @@ function rcmail_receipt_checkbox($attrib)
$checkbox = new checkbox($attrib);
$out = $form_start ? "$form_start\n" : '';
- $out .= $checkbox->show(0);
+ $out .= $checkbox->show($MESSAGE['headers']->mdn_to ? 1 : 0);
$out .= $form_end ? "\n$form_end" : '';
return $out;