]> git.mxchange.org Git - mailer.git/blobdiff - inc/email-functions.php
Opps
[mailer.git] / inc / email-functions.php
index ced06aa03725df374534e08ab6966f8f6daadd92..e0cf2a251e3889e9ddeb2fcb8ba1c0ac42245c37 100644 (file)
@@ -59,7 +59,7 @@ function sendEmail ($toEmail, $subject, $message, $isHtml = 'N', $mailHeader = '
                        // Set webmaster
                        $toEmail = getWebmaster();
                }
-       } elseif ($toEmail == '0') {
+       } elseif (($toEmail == '0') || (is_null($toEmail))) {
                // Is the webmaster!
                $toEmail = getWebmaster();
        }
@@ -91,7 +91,7 @@ function sendEmail ($toEmail, $subject, $message, $isHtml = 'N', $mailHeader = '
 </pre>');
 
                // This is always fine
-               return true;
+               return TRUE;
        } elseif (!empty($toEmail)) {
                // Send Mail away
                return sendRawEmail($toEmail, $subject, $message, $mailHeader);
@@ -116,12 +116,12 @@ function isPhpMailerConfigured () {
 // Send out a raw email with PHPMailer class or plain mail() command
 function sendRawEmail ($toEmail, $subject, $message, $headers) {
        // Just compile all to put out all configs, etc.
-       $eval  = '$toEmail = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($toEmail), false)) . '"); ';
-       $eval .= '$subject = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($subject), false)) . '"); ';
-       $eval .= '$headers = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($headers), false)) . '"); ';
+       $eval  = '$toEmail = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($toEmail), FALSE)) . '"); ';
+       $eval .= '$subject = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($subject), FALSE)) . '"); ';
+       $eval .= '$headers = decodeEntities("' . escapeQuotes(doFinalCompilation(compileRawCode($headers), FALSE)) . '"); ';
 
        // Do not decode entities in the message because we also send HTML mails through this function
-       $eval .= '$message = "' . escapeQuotes(doFinalCompilation(compileRawCode($message), false)) . '";';
+       $eval .= '$message = "' . escapeQuotes(doFinalCompilation(compileRawCode($message), FALSE)) . '";';
 
        // Run the final eval() command
        eval($eval);
@@ -142,7 +142,7 @@ function sendRawEmail ($toEmail, $subject, $message, $headers) {
                $mail->PluginDir  = sprintf("%sinc/phpmailer/", getPath());
 
                $mail->IsSMTP();
-               $mail->SMTPAuth   = true;
+               $mail->SMTPAuth   = TRUE;
                $mail->Host       = getConfig('SMTP_HOSTNAME');
                $mail->Port       = 25;
                $mail->Username   = getConfig('SMTP_USER');
@@ -158,7 +158,7 @@ function sendRawEmail ($toEmail, $subject, $message, $headers) {
                        $mail->Body       = $message;
                        $mail->AltBody    = decodeEntities($message);
                        $mail->WordWrap   = 70;
-                       $mail->IsHTML(true);
+                       $mail->IsHTML(TRUE);
                } else {
                        $mail->Body       = decodeEntities(strip_tags($message));
                }
@@ -176,10 +176,10 @@ function sendRawEmail ($toEmail, $subject, $message, $headers) {
                        logDebugMessage(__FUNCTION__, __LINE__, 'Error while sending mail: ' . $mail->ErrorInfo);
 
                        // Raise an error
-                       return false;
+                       return FALSE;
                } else {
                        // All fine!
-                       return true;
+                       return TRUE;
                }
        } else {
                // Use plain mail() command
@@ -223,5 +223,50 @@ function doTemplateAddExtraHtmlMailHeaders ($templateName, $clear, $extraHeaders
        return $extraHeaders;
 }
 
+// Send mails for del/edit/lock build modes
+// @TODO $rawUserId is currently unused
+function sendGenericBuildMails ($mode, $tableName, $content, $id, $subjectPart = '', $userIdColumn = array('userid'), $rawUserId = array('userid')) {
+       // $tableName must be an array
+       if ((!is_array($tableName)) || (count($tableName) != 1)) {
+               // $tableName is no array
+               reportBug(__FUNCTION__, __LINE__, 'tableName[]=' . gettype($tableName) . '!=array: userIdColumn=' . $userIdColumn);
+       } elseif ((!is_array($userIdColumn)) || (count($userIdColumn) != 1)) {
+               // $tableName is no array
+               reportBug(__FUNCTION__, __LINE__, 'userIdColumn[]=' . gettype($userIdColumn) . '!=array: userIdColumn=' . $userIdColumn);
+       } // END - if
+
+       // Default subject is the subject part
+       $subject = $subjectPart;
+
+       // Is the subject part not set?
+       if (empty($subjectPart)) {
+               // Then use it from the mode
+               $subject = strtoupper($mode);
+       } // END - if
+
+       // Is the raw userid set?
+       if (postRequestElement($userIdColumn[0], $id) > 0) {
+               // Load email template
+               if (!empty($subjectPart)) {
+                       $mail = loadEmailTemplate('member_' . $mode . '_' . strtolower($subjectPart) . '_' . $tableName[0], $content);
+               } else {
+                       $mail = loadEmailTemplate('member_' . $mode . '_' . $tableName[0], $content);
+               }
+
+               // Send email out
+               sendEmail(postRequestElement($userIdColumn[0], $id), strtoupper('{--MEMBER_' . $subject . '_' . $tableName[0] . '_SUBJECT--}'), $mail);
+       } // END - if
+
+       // Generate subject
+       $subject = strtoupper('{--ADMIN_' . $subject . '_' . $tableName[0] . '_SUBJECT--}');
+
+       // Send admin notification out
+       if (!empty($subjectPart)) {
+               sendAdminNotification($subject, 'admin_' . $mode . '_' . strtolower($subjectPart) . '_' . $tableName[0], $content, postRequestElement($userIdColumn[0], $id));
+       } else {
+               sendAdminNotification($subject, 'admin_' . $mode . '_' . $tableName[0], $content, postRequestElement($userIdColumn[0], $id));
+       }
+}
+
 // [EOF]
 ?>