mailparser
Advanced tools
Comparing version
@@ -449,3 +449,6 @@ "use strict"; | ||
case "date": | ||
this._currentNode.meta.date = new Date(datetime.strtotime(value)*1000 || Date.now()); | ||
this._currentNode.meta.date = new Date(value); | ||
if(Object.prototype.toString.call(this._currentNode.meta.date) != "[object Date]" || this._currentNode.meta.date.toString() == "Invalid Date"){ | ||
this._currentNode.meta.date = datetime.strtotime(value) && new Date(datetime.strtotime(value) * 1000); | ||
} | ||
break; | ||
@@ -982,2 +985,6 @@ case "to": | ||
if(this.mimeTree.meta.date){ | ||
returnValue.date = this.mimeTree.meta.date; | ||
} | ||
if(this.mailData.attachments.length){ | ||
@@ -984,0 +991,0 @@ returnValue.attachments = []; |
{ | ||
"name": "mailparser", | ||
"description": "Asynchronous and non-blocking parser for mime encoded e-mail messages", | ||
"version": "0.4.0", | ||
"version": "0.4.1", | ||
"author" : "Andris Reinman", | ||
@@ -6,0 +6,0 @@ "maintainers":[ |
@@ -76,3 +76,3 @@ MailParser | ||
* **cc** - an array of parsed `Cc` addresses | ||
* **bcc** - an array of parsed 'Bcc' addresses | ||
* **bcc** - an array of parsed 'Bcc' addresses | ||
* **subject** - the subject line | ||
@@ -84,2 +84,3 @@ * **references** - an array of reference message id values (not set if no reference values present) | ||
* **html** - html body | ||
* **date** - date field as a `Date()` object. If date could not be resolved or is not found this field is not set. Check the original date string from `headers.date` | ||
* **attachments** - an array of attachments | ||
@@ -86,0 +87,0 @@ |
@@ -901,2 +901,38 @@ var MailParser = require("../lib/mailparser").MailParser, | ||
}); | ||
}, | ||
"Valid Date header": function(test){ | ||
var encodedText = "Date: Wed, 08 Jan 2014 09:52:26 -0800\r\n\r\n1cTW3A==", | ||
mail = new Buffer(encodedText, "utf-8"); | ||
var mailparser = new MailParser(); | ||
mailparser.end(mail); | ||
mailparser.on("end", function(mail){ | ||
test.equal(mail.date.toISOString(), "2014-01-08T17:52:26.000Z"); | ||
test.equal(mail.headers.date, "Wed, 08 Jan 2014 09:52:26 -0800"); | ||
test.done(); | ||
}); | ||
}, | ||
"Invalid Date header": function(test){ | ||
var encodedText = "Date: zzzzz\r\n\r\n1cTW3A==", | ||
mail = new Buffer(encodedText, "utf-8"); | ||
var mailparser = new MailParser(); | ||
mailparser.end(mail); | ||
mailparser.on("end", function(mail){ | ||
test.ok(!mail.date); | ||
test.equal(mail.headers.date, "zzzzz"); | ||
test.done(); | ||
}); | ||
}, | ||
"Missing Date header": function(test){ | ||
var encodedText = "Subject: test\r\n\r\n1cTW3A==", | ||
mail = new Buffer(encodedText, "utf-8"); | ||
var mailparser = new MailParser(); | ||
mailparser.end(mail); | ||
mailparser.on("end", function(mail){ | ||
test.ok(!mail.date); | ||
test.equal(mail.headers.date, undefined); | ||
test.done(); | ||
}); | ||
} | ||
@@ -903,0 +939,0 @@ }; |
129638
1.42%2795
1.42%223
0.45%