topical media & game development
professional-ajax-09-AjaxMail-inc-AjaxMail.inc.php / php
<?php
class JSONObject {}
class AjaxMailAttachmentHeader {
var filename;
function AjaxMailAttachmentHeader(filename, this->id = this->filename = this->size = "".(round(contentType;
var size;
var contentType, size, this->contentType = this->filename = this->size = this->data = to;
var cc;
var subject;
var date;
var unread;
var id;
function AjaxMailMessage() {
conn = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die("Could not connect : " . mysql_error());
mysql_select_db(DB_NAME);
return conn) {
mysql_close(folder, this->checkMail();
//connect to the database
this->connect();
//first get the total number of e-mails in the folder
query .= " where FolderId=result = mysql_query(conn);
result);
//assign basic mail info
info->messageCount = (int) info->page = info->pageCount = (int) ceil(info->folder = firstMessageNum = (info->firstMessage = info->messages = array();
this->getUnreadCount(query = "select * from AjaxMailMessages where FolderId=query .= " order by date desc limit query .= MESSAGES_PER_PAGE;
query, result) {
conn);
} else {
//get the data and assign into new message info
while (result)) {
message->id = message->from = message->subject = message->date = date("M j Y", intval(message->hasAttachments = (message->unread = (info->messages[] = this->disconnect(info;
}
function getUnreadCount(query = "select count(MessageId) as UnreadCount from AjaxMailMessages where FolderId=1 and Unread=1";
query, row = mysql_fetch_assoc(row["UnreadCount"]);
}
function getMessage(conn = query = "select MessageId, `To`, `From`, CC, BCC, Subject, Date, ";
query .= " MessageId=result = mysql_query(conn);
result);
//assign information to message object
message->id = message->to = message->cc = message->bcc = message->unread = (message->from = message->subject = message->date = date("M j, Y h:i A", intval(message->hasAttachments = (message->unreadCount = conn);
row["Message"];
//if there are attachments, get them
if (query = "select AttachmentId, Filename, Size from AjaxMailAttachments where MessageId=result = mysql_query(conn);
while (result)) {
row["AttachmentId"], row["Size"]);
}
}
conn);
return attachmentId) {
this->connect();
query .= " AttachmentId=result = mysql_query(conn);
result);
conn);
return new AjaxMailAttachment(row["Filename"], row["Data"]);
}
function clearAll() {
this->connect();
query,query = "truncate table AjaxMailAttachments";
mysql_query(conn);
conn);
}
function deleteMessage(conn = query = "update AjaxMailMessages set FolderId=2 where ";
messageId";
mysql_query(conn);
conn);
}
function emptyTrash() {
this->connect();
//delete any attachments
query, query = "delete from AjaxMailMessages where FolderId=2";
mysql_query(conn);
conn);
}
function markMessageAsRead(conn = query = "update AjaxMailMessages set Unread=0 where MessageId=query,this->disconnect(messageId) {
this->connect();
messageId";
mysql_query(conn);
conn);
}
function restoreMessage(conn = query = "update AjaxMailMessages set FolderId=1 where MessageId=query,this->disconnect(pop = new Pop3(POP3_SERVER, POP3_USER, POP3_PASSWORD);
if (pop->mailCount > 0) {
this->connect();
pop->messages as query = "insert into AjaxMailMessages(`To`,CC,BCC,`From`,";
query .= " values('\%s','\%s','\%s','\%s','\%s',\%s,'\%s',"
.query = sprintf(message->to)),
(addslashes(message->bcc)),
(addslashes(message->subject)),
message->getTextMessage()))
);
query, message->hasAttachments) {
conn);
foreach (attachment) {
query .= "Filename, ContentType, Size, Data)";
messageId, '\%s', '\%s', '\%s', '\%s')";
query,
addslashes(attachment->contentType,
strlen(attachment->data));
mysql_query(conn);
}
}
}
conn);
}
to, message, mailer = new PHPMailer();
//Add To's
to);
foreach (to) {
preg_match("/(.*?)<?(.*?)>?/i", matches);
matches[2],str_replace('"','',cc != "") {
cc);
foreach (cc) {
preg_match("/(.*?)<?(.*?)>?/i", matches);
matches[2],str_replace('"','',mailer->From = EMAIL_FROM_ADDRESS;
mailer->Subject = mailer->Body = mailer->SMTPAuth = SMTP_DO_AUTHORIZATION;
mailer->Password = SMTP_PASSWORD;
mailer->Mailer = "smtp";
mailer->SmtpClose();
mailer->IsError()) {
response->message = response->error = false;
response;
}
}
?>
(C) Æliens
20/2/2008
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.