Reverse-merged /alfresco/BRANCHES/DEV/IMAP3:r14500,14521,14560,14563,14632

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14657 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2009-06-11 14:00:22 +00:00
parent 1a0c0dc758
commit cb7c4e6593
51 changed files with 2797 additions and 4727 deletions

View File

@@ -44,7 +44,7 @@ function processCommand()
{
var message = "Unknown command: " + command;
logger.log(message);
createEmail(message, message, message);
createEmail(message, message, message, false);
return;
}
@@ -54,7 +54,7 @@ function processCommand()
if (commandFolder == null)
{
var message = "Command Processor: wrong command=" + command;
createEmail(message, message, message);
createEmail(message, message, message, false);
logger.log(message);
return;
}

View File

@@ -75,17 +75,7 @@ function createResponseTextHtml(nodes)
*/
function createContentTextHtml(nodes)
{
var content ="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">" +
"<html><head>" +
"<meta http-equiv=Content-Type content=\"text/html; charset=UTF-8\">" +
"<style type=\"text/css\">" +
"* {font-family:Verdana,Arial,sans-serif;font-size:11px;}" +
".links {border:1px dotted #555555;border-collapse:collapse;width:99%;}" +
".links td {border:1px dotted #555555;padding:5px;}" +
"</style>" +
"</head>" +
"<body>" +
"<div>" + "Command: " + title + "\n<br/><br/>\n";
var content = "Command: " + title + "\n<br/><br/>\n";
content += "<table class=\"links\">\n";
content += "<thead align=\"center\">";
content += "<tr>";
@@ -93,7 +83,7 @@ function createContentTextHtml(nodes)
content += "<td>Url</td>";
content += "<td>Download Url</td>";
content += "</tr>";
content += "</thead>\n" + "</div></body></html>";
content += "</thead>\n"
for (var i = 0; i < nodes.length; i++)
@@ -143,7 +133,7 @@ function commandSearch(params)
if (query == null)
{
createEmail(errorParameter, errorParameter, errorParameter);
createEmail(errorParameter, errorParameter, errorParameter, false);
return;
}
@@ -164,7 +154,7 @@ function commandSearch(params)
}
else
{
createEmail(errorXPathNotValid, errorXPathNotValid, errorXPathNotValid);
createEmail(errorXPathNotValid, errorXPathNotValid, errorXPathNotValid, false);
return;
}
break;
@@ -190,8 +180,8 @@ function commandSearch(params)
createEmail(message, message, subject);
return;
}
/*createEmail(createContentTextPlain(nodes), createResponseTextHtml(nodes), subject);*/
createEmail(createContentTextPlain(nodes), createContentTextHtml(nodes), subject);
/*createEmail(createResponseTextHtml(nodes), createContentTextPlain(nodes), subject, true);*/
createEmail(createContentTextHtml(nodes), createContentTextPlain(nodes), subject, false);
}
/**
* Decode subject
@@ -234,13 +224,13 @@ function main()
else
{
var message = unknownCommand + ": '" + title + "'";
createEmail(message, message, message);
createEmail(message, message, message, false);
}
}
else
{
var message = unknownCommand + ": '" + title + "'";
createEmail(message, message, message);
createEmail(message, message, message, false);
}
document.remove();

View File

@@ -1,8 +1,9 @@
/**
* Create e-mail
* contentEML (string) content message
* contentTextHtml (string) html content
* contentTextPlain (string) text content
*/
function createEmail(messageTXT, messageHTML, subject)
function createEmail(contentTextHtml, contentTextPlain, subject, templateUsed)
{
var command = document.properties["cm:title"];
var userName = person.properties["cm:userName"];
@@ -14,42 +15,42 @@ function createEmail(messageTXT, messageHTML, subject)
return;
}
var response = inboxFolder.createNode("response" + Date.now() + ".eml", "cm:content");
var nextMessageUID = inboxFolder.properties["imap:nextMessageUID"];
inboxFolder.properties["imap:nextMessageUID"] = nextMessageUID + 1;
inboxFolder.save();
var response = inboxFolder.createNode("response" + Date.now(), "imap:imapContent");
response.properties["imap:messageFrom"] = "command@alfresco.com";
response.properties["imap:messageSubject"] = subject;
response.properties["imap:messageTo"] = document.properties["cm:originator"];
response.properties["imap:messageCc"] = "";
response.addAspect("imap:imapContent", null);
response.properties["imap:messageUID"] = nextMessageUID;
response.content = createRFC822Message("command@alfresco.com", document.properties["cm:originator"], subject, messageTXT, messageHTML);
response.save();
}
function createRFC822Message(from, to, subject, textPart, htmlPart)
{
var id = new Number(Date.now()).toString(16);
var boundary = "----------" + id;
var date = new Date().toGMTString();
var messageHeaders = "MIME-Version: 1.0\r\n" +
"Date: " + date + "\r\n" +
"From: " + from + "\r\n" +
"To: " + to + "\r\n" +
"Subject: " + subject + "\r\n" +
"Message-ID: " + id + "\r\n" +
"X-Priority: 3 (Normal)\r\n" +
"Content-Type: multipart/alternative; boundary=\"" + boundary + "\"\r\n\r\n";
var messageBody = "";
messageBody += messageHeaders;
messageBody += "--" + boundary + "\r\n";
messageBody += "Content-Type: text/plain; charset=utf-8\r\n";
//TODO Content-Transfer-Encoding
messageBody += "\r\n";
messageBody += textPart + "\r\n\r\n";
messageBody += "--" + boundary + "\r\n";
messageBody += "Content-Type: text/html; charset=utf-8\r\n";
//TODO Content-Transfer-Encoding
messageBody += "\r\n";
messageBody += htmlPart + "\r\n\r\n";
messageBody += "--" + boundary + "--\r\n\r\n";
return messageBody;
var textBody = response.createNode("Body.txt", "imap:imapBody");
textBody.content = contentTextPlain;
textBody.save();
var htmlBody = response.createNode("Body.html", "imap:imapBody");
if (templateUsed == true)
{
htmlBody.content = contentTextHtml;
}
else
{
htmlBody.content = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">" +
"<html><head>" +
"<meta http-equiv=Content-Type content=\"text/html; charset=UTF-8\">" +
"<style type=\"text/css\">" +
"* {font-family:Verdana,Arial,sans-serif;font-size:11px;}" +
".links {border:1px dotted #555555;border-collapse:collapse;width:99%;}" +
".links td {border:1px dotted #555555;padding:5px;}" +
"</style>" +
"</head>" +
"<body>" +
"<div>" + contentTextHtml + "</div></body></html>";
}
htmlBody.save();
}