From bc92ca56ef6c51393d2782b7654eaa162dfc2e10 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Mon, 30 Jul 2012 07:20:56 -0400
Subject: [PATCH] Fixes after default->classic switch
---
program/include/rcube_message_header.php | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 52 insertions(+), 3 deletions(-)
diff --git a/program/include/rcube_message_header.php b/program/include/rcube_message_header.php
index ee7e1e3..378fb98 100644
--- a/program/include/rcube_message_header.php
+++ b/program/include/rcube_message_header.php
@@ -18,9 +18,6 @@
+-----------------------------------------------------------------------+
| Author: Aleksander Machniak <alec@alec.pl> |
+-----------------------------------------------------------------------+
-
- $Id$
-
*/
/**
@@ -184,6 +181,58 @@
* @var array
*/
public $flags = array();
+
+ // map header to rcube_message_header object property
+ private $obj_headers = array(
+ 'date' => 'date',
+ 'from' => 'from',
+ 'to' => 'to',
+ 'subject' => 'subject',
+ 'reply-to' => 'replyto',
+ 'cc' => 'cc',
+ 'bcc' => 'bcc',
+ 'content-transfer-encoding' => 'encoding',
+ 'in-reply-to' => 'in_reply_to',
+ 'content-type' => 'ctype',
+ 'references' => 'references',
+ 'return-receipt-to' => 'mdn_to',
+ 'disposition-notification-to' => 'mdn_to',
+ 'x-confirm-reading-to' => 'mdn_to',
+ 'message-id' => 'messageID',
+ 'x-priority' => 'priority',
+ );
+
+ /**
+ * Returns header value
+ */
+ public function get($name, $decode = true)
+ {
+ $name = strtolower($name);
+
+ if (isset($this->obj_headers[$name])) {
+ $value = $this->{$this->obj_headers[$name]};
+ }
+ else {
+ $value = $this->others[$name];
+ }
+
+ return $decode ? rcube_mime::decode_header($value, $this->charset) : $value;
+ }
+
+ /**
+ * Sets header value
+ */
+ public function set($name, $value)
+ {
+ $name = strtolower($name);
+
+ if (isset($this->obj_headers[$name])) {
+ $this->{$this->obj_headers[$name]} = $value;
+ }
+ else {
+ $this->others[$name] = $value;
+ }
+ }
}
--
Gitblit v1.9.1