...

Any one used ColdfusionMX and IMAP mailserver

rohanrehman
04-26-2003, 04:50 PM
Basically if anyone has and was able to pull the strings...........subject data.........body data.......and from data from a IMAP server using coldfusion then spit that into an swf file?

CFMX RULES
06-23-2003, 02:10 PM
Try this,2 files IMAP.cfm and IMAPfunctions.cfm
IMAP.cfm


<html>
<head>
<title>IMAP.cfm</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<cfinclude template="IMAPfunctions.cfm">

<cfparam name="attributes.server" default="">
<cfparam name="attributes.port" default="143">
<cfparam name="attributes.username" default="">
<cfparam name="attributes.password" default="">
<cfparam name="attributes.action"
default="getHeaderOnly">
<cfparam name="attributes.folder" default="inbox">
<cfparam name="attributes.name" default="">
<cfparam name="attributes.messageNumber" default="">
<cfparam name="attributes.timeout" default="60">

<!--- Open the session and store --->
<cfset obj_Session = getSession(attributes.port,
attributes.timeout)>
<cfset obj_Store = getStore(obj_Session,
attributes.server,
attributes.username,
attributes.password)>

<!--- Manipulate the mailbox based on
the desired action --->
<cfswitch expression="#UCase(attributes.action)#">
<cfcase value="GETHEADERONLY">
<!--- Open the folder read only --->
<cfset obj_Folder = OpenFolder(obj_Store,
attributes.folder,
false)>
<!--- Get the headers --->
<cfset qry_Messages =
GetHeaders(attributes.MessageNumber,
obj_Folder)>
<!--- Return the headers query --->
<cfset "caller.#attributes.name#" = qry_Messages>
</cfcase>
</cfswitch>

<!--- Clean up the objects --->
<cfset obj_Folder.close(false)>
<cfset obj_Store.close()>

</body>
</html>


IMAPfunctions.cfm

<cfscript>
function GetSession(int_Port, int_Timeout)
{
var cls_Session = createObject("Java",
"javax.mail.Session");
var obj_Properties = createObject("Java",
"java.util.Properties");

// Change timeout to milliseconds
var int_MilliTimeout =
arguments.int_Timeout * 1000;

// Set properties
obj_Properties.init();
obj_Properties.put("mail.store.protocol",
"imap");
obj_Properties.put("mail.imap.port",
arguments.int_Port);
obj_Properties.put(
"mail.imap.connectiontimeout",
int_MilliTimeout);
obj_Properties.put("mail.imap.timeout",
int_MilliTimeout);
obj_Session =
cls_Session.getInstance(obj_Properties);
return obj_Session;
}

function GetStore(obj_Session,
str_ServerName,
str_Username,
str_Password)
{
var obj_Store = createObject("Java",
"javax.mail.Store");
obj_Store = obj_Session.getStore();
obj_Store.connect(arguments.str_Servername,
arguments.str_Username,
arguments.str_Password);
return obj_Store;
}

// Get and open the folder
function OpenFolder (obj_Store,
str_Folder, bln_ReadWrite)
{
var obj_Folder =
obj_Store.getFolder(arguments.str_Folder);
// Open the folder (writable if necessary)
if (bln_ReadWrite is true)
obj_Folder.open(obj_Folder.READ_WRITE);
else
obj_Folder.open(obj_Folder.READ_ONLY);
return obj_Folder;
}

function GetMessages(obj_Folder,
lst_MessageNumber)
{
var ar_Messages = "";
// If the user has passed in a list of message
// numbers, get only those numbers. Otherwise,
// get all messages in the folder
var ar_Numbers = ListToArray(
arguments.lst_MessageNumber);
if (ListLen(arguments.lst_MessageNumber) gt 0)
ar_Messages =
obj_Folder.getMessages(ar_Numbers);
else
ar_Messages = obj_Folder.getMessages();
return ar_Messages;
}

// This function populates and returns a query
// containing message header information
function GetHeaders(lst_MessageNumber, obj_Folder)
{
var ar_Messages =
GetMessages(arguments.obj_Folder,
arguments.lst_MessageNumber);
var str_Columns = "date,from,messagenumber"
& ",replyto,subject,cc,to";
var qry_Messages = QueryNew(str_Columns);
var int_CurMes = "";
var obj_Message = "";
var ar_From = "";
var ar_To = "";
var cls_RecipientType =
CreateObject("Java",
"javax.mail.Message$RecipientType");

for (int_CurMes = 1;
int_CurMes lte arrayLen(ar_messages);
int_CurMes = int_CurMes + 1)
{
obj_Message = ar_Messages[int_CurMes];
ar_From = obj_Message.getFrom();
ar_To = obj_Message.getRecipients(
cls_RecipientType.TO);

queryAddRow(qry_Messages);
querySetCell(qry_Messages,"date",
obj_Message.getReceivedDate());
querySetCell(qry_Messages,"from",
arrayToList(ar_From));
querySetCell(qry_Messages,"messagenumber",
obj_Message.getMessageNumber());
querySetCell(qry_Messages,"subject",
obj_Message.getSubject());
querySetCell(qry_Messages,"to",
arrayToList(ar_To));
}
return qry_Messages;
}
</cfscript>



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum