Commit fdcd047e6a68aa7f6ced3ae76255fcb6302de7c8
1 parent
d5efc47d
added check for valid email address before attempting to send mail
git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@2087 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
36 additions
and
31 deletions
lib/email/Email.inc
| @@ -46,40 +46,45 @@ class Email { | @@ -46,40 +46,45 @@ class Email { | ||
| 46 | */ | 46 | */ |
| 47 | function send($sToEmail, $sSubject, $sBody, $sFromEmail = "", $sFromName = "") { | 47 | function send($sToEmail, $sSubject, $sBody, $sFromEmail = "", $sFromName = "") { |
| 48 | global $default, $lang_err_email; | 48 | global $default, $lang_err_email; |
| 49 | - | ||
| 50 | - // set defaults for optional params | ||
| 51 | - $sFromEmail = ((strlen($sFromEmail) == 0) || ($sFromEmail == "")) ? $default->system->get("emailFrom") : $sFromEmail; | ||
| 52 | - $sFromName = ((strlen($sFromName) == 0) || ($sFromName == "")) ? $default->system->get("emailFromName") : $sFromName; | ||
| 53 | - | ||
| 54 | - // set optional params | ||
| 55 | - if ((strlen($sFromEmail) > 0) && ($sFromEmail != "")) { | ||
| 56 | - $this->oMailer->From = $sFromEmail; | ||
| 57 | - } | ||
| 58 | - if ((strlen($sFromName) > 0) && ($sFromName != "")) { | ||
| 59 | - $this->oMailer->FromName = $sFromName; | ||
| 60 | - } | ||
| 61 | 49 | ||
| 62 | - // if there are multiple addresses (; separated) | ||
| 63 | - $aEmailAddresses = array(); | ||
| 64 | - if (strpos($sToEmail, ";") > 0) { | ||
| 65 | - // explode them | ||
| 66 | - $aEmailAddresses = explode(";", $sToEmail); | ||
| 67 | - for ($i=0; $i<count($aEmailAddresses); $i++) { | ||
| 68 | - $this->oMailer->AddAddress($aEmailAddresses[$i]); | ||
| 69 | - $default->log->info("Email.inc adding " . $aEmailAddresses[$i]); | ||
| 70 | - } | 50 | + if (strlen($sToEmail) > 0) { |
| 51 | + // set defaults for optional params | ||
| 52 | + $sFromEmail = ((strlen($sFromEmail) == 0) || ($sFromEmail == "")) ? $default->system->get("emailFrom") : $sFromEmail; | ||
| 53 | + $sFromName = ((strlen($sFromName) == 0) || ($sFromName == "")) ? $default->system->get("emailFromName") : $sFromName; | ||
| 54 | + | ||
| 55 | + // set optional params | ||
| 56 | + if ((strlen($sFromEmail) > 0) && ($sFromEmail != "")) { | ||
| 57 | + $this->oMailer->From = $sFromEmail; | ||
| 58 | + } | ||
| 59 | + if ((strlen($sFromName) > 0) && ($sFromName != "")) { | ||
| 60 | + $this->oMailer->FromName = $sFromName; | ||
| 61 | + } | ||
| 62 | + | ||
| 63 | + // if there are multiple addresses (; separated) | ||
| 64 | + $aEmailAddresses = array(); | ||
| 65 | + if (strpos($sToEmail, ";") > 0) { | ||
| 66 | + // explode them | ||
| 67 | + $aEmailAddresses = explode(";", $sToEmail); | ||
| 68 | + for ($i=0; $i<count($aEmailAddresses); $i++) { | ||
| 69 | + $this->oMailer->AddAddress($aEmailAddresses[$i]); | ||
| 70 | + $default->log->info("Email.inc adding " . $aEmailAddresses[$i]); | ||
| 71 | + } | ||
| 72 | + } else { | ||
| 73 | + $this->oMailer->AddAddress($sToEmail); | ||
| 74 | + } | ||
| 75 | + $this->oMailer->Subject = stripslashes($sSubject); | ||
| 76 | + $this->oMailer->Body = stripslashes($sBody); | ||
| 77 | + | ||
| 78 | + //send the email | ||
| 79 | + if(!$this->oMailer->Send()) { | ||
| 80 | + $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; | ||
| 81 | + return false; | ||
| 82 | + } | ||
| 83 | + return true; | ||
| 71 | } else { | 84 | } else { |
| 72 | - $this->oMailer->AddAddress($sToEmail); | 85 | + // no valid email address supplied |
| 86 | + return false; | ||
| 73 | } | 87 | } |
| 74 | - $this->oMailer->Subject = stripslashes($sSubject); | ||
| 75 | - $this->oMailer->Body = stripslashes($sBody); | ||
| 76 | - | ||
| 77 | - //send the email | ||
| 78 | - if(!$this->oMailer->Send()) { | ||
| 79 | - $_SESSION["errorMessage"] = $lang_err_email . " " . $this->oMailer->ErrorInfo; | ||
| 80 | - return false; | ||
| 81 | - } | ||
| 82 | - return true; | ||
| 83 | } | 88 | } |
| 84 | 89 | ||
| 85 | /** | 90 | /** |