* @var mixed
*/
var $date = -1;
+ /**
+ * Original date header as fallback for unparsable dates
+ * @var mixed
+ */
+ var $date_unparsed = '';
/**
* Subject header
* @var string
$d = strtr($value, array(' ' => ' '));
$d = explode(' ', $d);
$this->date = getTimeStamp($d);
+ $this->date_unparsed = strtr($value,'<>',' ');
break;
case 'subject':
$this->subject = $value;
$value = $this->stripComments($value);
$this->mlist('id', $value);
break;
- case 'x-spam-status':
+ case 'x-spam-status':
$this->x_spam_status = $this->parseSpamStatus($value);
break;
default:
* X-MS-Mail-Priority is not parsed because it always coincides
* with one of the other headers.
*
- * NOTE: this is actually a duplicate from the function in
- * functions/imap_messages. I'm not sure if it's ok here to call
+ * NOTE: this is actually a duplicate from the code in
+ * functions/imap_messages:parseFetch().
+ * I'm not sure if it's ok here to call
* that function?
* @param string $sValue literal priority name
* @return integer
*/
function parsePriority($sValue) {
// don't use function call inside array_shift.
- $aValue = split('/\w/',trim($sValue));
+ $aValue = preg_split('/\s/',trim($sValue));
$value = strtolower(array_shift($aValue));
if ( is_numeric($value) ) {