From 9f2e3358cf3e6e2b97ccfd6ae89833f6dc57969c Mon Sep 17 00:00:00 2001 From: michael Date: Wed, 5 Feb 2003 14:16:15 +0000 Subject: [PATCH] reformatted, added the phpmailer class to the object, added a constructor that initialises with the defaults, and a send method that only takes the necessary params as mandatory --- lib/email/Email.inc | 275 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------- 1 file changed, 150 insertions(+), 125 deletions(-) diff --git a/lib/email/Email.inc b/lib/email/Email.inc index 7816bb8..a84f18a 100644 --- a/lib/email/Email.inc +++ b/lib/email/Email.inc @@ -1,132 +1,157 @@ oMailer = new phpmailer(); + $this->oMailer->isSMTP(); + $this->oMailer->Host = $default->system->get("emailServer"); + $this->oMailer->From = (strlen($sFromEmail) == 0) ? $default->system->get("emailFrom") : $sFromEmail; + $this->oMailer->FromName = (strlen($sFromName) == 0) ? $default->system->get("emailFromName") : $sFromName; + $this->oMailer->WordWrap = 100; + $this->oMailer->IsHTML(true); + } + + /** + * Sends an email to a specified recipient. + * + * @param string the sender's email address (optional) + * @param string the sender's name (optional) + * @param string the recipients email address + * @param string the subject of the email + * @param string the body of the email + * @return boolean true on email successfully sent, false otherwise and set $_SESSION["errorMessage"] + */ + function send($sToEmail, $sSubject, $sBody, $sFromEmail = "", $sFromName = "") { + global $default, $lang_err_email; + + // set defaults for optional params + $sFromEmail = ((strlen($sFromEmail) == 0) || ($sFromEmail == "")) ? $default->system->get("emailFrom") : $sFromEmail; + $sFromName = ((strlen($sFromName) == 0) || ($sFromName == "")) ? $default->system->get("emailFromName") : $sFromName; + + // set optional params + if ((strlen($sFromEmail) > 0) && ($sFromEmail != "")) { + $this->oMailer->From = $sFromEmail; + } + if ((strlen($sFromName) > 0) && ($sFromName != "")) { + $this->oMailer->FromName = $sFromName; + } + $this->oMailer->AddAddress($sToEmail); + $this->oMailer->Subject = stripslashes($sSubject); + $this->oMailer->Body = stripslashes($sBody); + + //send the email + if(!$this->oMailer->Send()) { + $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; + return false; + } + return true; + } + + /** + * Sends an email containing a hyperlink to a specified recipient + * + * @param The sender's email address + * @param The sender's Name + * @param The recipients email address + * @param The subject heading for the email + * @param The Body of the email + * @param The hyperlink that should be sent + * + * @return boolean true on email successfully sent, false otherwise and set $_SESSION["errorMessage"] + * + * @todo check for special characters (including encoding the link correctly???) + * @todo need to test this on multiple mail clients, not just Outlook + */ + function sendHyperLink($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody, $hyperlink) { + global $default; + + //get info from relevant fields. + $this->oMailer->From = $FromEmail; + $this->oMailer->FromName = $FromName; + $this->oMailer->AddAddress($ToEmail); + $this->oMailer->Subject = stripslashes($Subj); + $this->oMailer->Body = stripslashes($EmailBody) . ' ' . $hyperlink; + + //send the email + if(!$this->oMailer->Send()) { + $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; + return false; + } + return true; + } + /** + * Sends an email ment for administration, + * + * @param The sender's email address + * @param The sender's Name + * @param The recipients email address + * @param The subject heading for the email + * @param The Body of the email + * @param The hyperlink that should be sent + * + * @return boolean true on email successfully sent, false otherwise and set $_SESSION["errorMessage"] + * + * @todo check for special characters (including encoding the link correctly???) + * @todo need to test this on multiple mail clients, not just Outlook + */ + function sendHelpEmail($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody, $hyperlink) { + global $default; + + //get info from relevant fields. + $this->oMailer->From = $FromEmail; + $this->oMailer->FromName = $FromName; + $this->oMailer->AddAddress($ToEmail); + $this->oMailer->Subject = stripslashes($Subj) . ' ' . $hyperlink; //only difference from above + $this->oMailer->Body = stripslashes($EmailBody) . "
This bug can be found on this page: " . "". $hyperlink .""; + + //send the email + if(!$this->oMailer->Send()) { + $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; + return false; + } + return true; + } + + function sendEmail($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody) { + global $default; -Class Email { - + //get info from relevant fields. + $this->oMailer->From = $FromEmail; + $this->oMailer->FromName = $FromName; + $this->oMailer->AddAddress($ToEmail); + $this->oMailer->Subject = stripslashes($Subj); + $this->oMailer->Body = stripslashes($EmailBody); - /** - * Sends an email containing a hyperlink to a specified recipient - * - * @param The sender's email address - * @param The sender's Name - * @param The recipients email address - * @param The subject heading for the email - * @param The Body of the email - * @param The hyperlink that should be sent - * - * @return boolean true on email successfully sent, false otherwise and set $_SESSION["errorMessage"] - * - * @todo check for special characters (including encoding the link correctly???) - * @todo need to test this on multiple mail clients, not just Outlook - */ - function sendHyperLink($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody, $hyperlink) - { - global $default; - - // create a new phpmailer object. - $emailHyperlink = new phpmailer(); - - //set up info - $emailHyperlink->isSMTP(); - $emailHyperlink->Host = $default->owl_email_server; // SMTP server - - //get info from relevant fields. - $emailHyperlink->From = $FromEmail; - $emailHyperlink->FromName = $FromName; - $emailHyperlink->AddAddress($ToEmail); - $emailHyperlink->Subject = stripslashes($Subj); - $emailHyperlink->Body = stripslashes($EmailBody) . ' ' . $hyperlink; - $emailHyperlink->WordWrap = 100; - $emailHyperlink->IsHTML(true); - - //send the email - if(!$emailHyperlink->Send()) { - $_SESSION["errorMessage"] = $lang_err_email . " " . $emailHyperlink->ErrorInfo; - return false; - } - return true; - } - /** - * Sends an email ment for administration, - * - * @param The sender's email address - * @param The sender's Name - * @param The recipients email address - * @param The subject heading for the email - * @param The Body of the email - * @param The hyperlink that should be sent - * - * @return boolean true on email successfully sent, false otherwise and set $_SESSION["errorMessage"] - * - * @todo check for special characters (including encoding the link correctly???) - * @todo need to test this on multiple mail clients, not just Outlook - */ - function sendHelpEmail($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody, $hyperlink) - { - global $default; - - // create a new phpmailer object. - $emailHyperlink = new phpmailer(); - - //set up info - $emailHyperlink->isSMTP(); - $emailHyperlink->Host = $default->owl_email_server; // SMTP server - - //get info from relevant fields. - $emailHyperlink->From = $FromEmail; - $emailHyperlink->FromName = $FromName; - $emailHyperlink->AddAddress($ToEmail); - $emailHyperlink->Subject = stripslashes($Subj) . ' ' . $hyperlink; //only difference from above - $emailHyperlink->Body = stripslashes($EmailBody) . "
This bug can be found on this page: " . "". $hyperlink .""; - $emailHyperlink->WordWrap = 80; - $emailHyperlink->IsHTML(true); - - //send the email - if(!$emailHyperlink->Send()) { - $_SESSION["errorMessage"] = $lang_err_email . " " . $emailHyperlink->ErrorInfo; - return false; - } - return true; - } - - function sendEmail($FromEmail, $FromName, $ToEmail, $Subj, $EmailBody) - { - global $default; - - // create a new phpmailer object. - $emailHyperlink = new phpmailer(); - - //set up info - $emailHyperlink->isSMTP(); - $emailHyperlink->Host = $default->owl_email_server; // SMTP server - - //get info from relevant fields. - $emailHyperlink->From = $FromEmail; - $emailHyperlink->FromName = $FromName; - $emailHyperlink->AddAddress($ToEmail); - $emailHyperlink->Subject = stripslashes($Subj); - $emailHyperlink->Body = stripslashes($EmailBody); - $emailHyperlink->WordWrap = 100; - $emailHyperlink->IsHTML(true); - - //send the email - if(!$emailHyperlink->Send()) { - $_SESSION["errorMessage"] = $lang_err_email; - return false; - } - return true; - } + //send the email + if(!$this->oMailer->Send()) { + $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; + return false; + } + return true; + } } ?> -- libgit2 0.21.4