X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Flibs%2Fhtml_mail_functions.php;h=e891c061bc59483ddbf8484b5f9903a1cc0f25d1;hp=7071a163a422539888f5bab91dcae49cd34011f2;hb=99966a712b3b3d8b521524762e153353d1d20bd4;hpb=3afdce4fe00b4af570122ce7b8158ced44aec7d3 diff --git a/inc/libs/html_mail_functions.php b/inc/libs/html_mail_functions.php index 7071a163a4..e891c061bc 100644 --- a/inc/libs/html_mail_functions.php +++ b/inc/libs/html_mail_functions.php @@ -1,7 +1,7 @@ ", $test)) { - $check = strtolower(substr($test, strpos($test, "<") + 1, strpos($test, ">") - strpos($test, "<") - 1)); + while (isInString('<', $test) && isInString('>', $test)) { + $check = strtolower(substr($test, strpos($test, '<') + 1, strpos($test, '>') - strpos($test, '<') - 1)); $check = str_replace('/', '', $check); if (!in_array($check, $GLOBALS['html_tags'])) { - // Invalid tag found! - return ""; - } - $test = substr($test, strpos($test, ">") + 1); - } + // Invalid tag found + $html = ''; + break; + } // END - if + $test = substr($test, strpos($test, '>') + 1); + } // END - while + // Return tested code return $html; } + // -function HTML_INSERT_URLS ($text) { +function insertUrlsIntoHtml ($text) { $test = $text; // First replace URLs... - while (ereg('http://', $test)) { + while (isInString('http://', $test)) { $check = substr($test, strpos($test, 'http://')); $check2 = $check; // See ext-html.php if you want to add more URL ends... foreach ($GLOBALS['url_ends'] as $end) { - if (ereg($end, $check)) $check = substr($check, 0, strpos($check, $end)); + if (isInString($end, $check)) $check = substr($check, 0, strpos($check, $end)); } // END - foreach // Now replace the URL against anchor container and pray... - $text = substr($text, 0, strpos($text, $check2))."".$check."".substr($text, strpos($text, $check2) + strlen($check)); + $text = substr($text, 0, strpos($text, $check2)) . '' . $check . '' . substr($text, strpos($text, $check2) + strlen($check)); // Finally remove the url from testing string (or we have a loop and maybe server overload!) $test = substr($test, strpos($test, $check) + strlen($check)); @@ -95,8 +97,8 @@ function HTML_INSERT_URLS ($text) { // ... what will the email address be out the @... ;-) $PARTS = array(); - while (ereg("@", $test)) { - $pos = strpos($test, "@"); + while (isInString('@', $test)) { + $pos = strpos($test, '@'); $test2 = substr($test, 0, $pos); // First check backwards @@ -106,57 +108,49 @@ function HTML_INSERT_URLS ($text) { if (!in_array($check, $GLOBALS['valid_email_chars'])) { // Char found so we end here break; - } + } // END - if $idx--; - } + } // END - while if ($idx > 0) { // Starting mark is found $check2 = substr($test, 0, ($idx + 1)); $test = substr($test, ($idx + 1)); - } + } // END - if // And now go forward... $idx = 0; while ($idx < strlen($test)) { $check = substr($test, $idx, 1); - if ((!in_array($check, $GLOBALS['valid_email_chars'])) && ($check != "@")) { + if ((!in_array($check, $GLOBALS['valid_email_chars'])) && ($check != '@')) { // Char found so end here again break; - } + } // END - if $idx++; - } + } // END - while if ($idx > 0) { // Maybe this is the email address? $check = substr($test, 0, $idx); - } + } // END - if // Now replace the email against anchor with mailto and pray... - $PARTS[] = $check2."".$check.""; + array_push($PARTS, $check2 . '' . $check . ''); // Remove email from testing string (see above why...) $test = substr($test, strlen($check)); } // Now put all parts together - $text = ''; $PARTS[] = $test; + $text = ''; + array_push($PARTS, $test); foreach ($PARTS as $part) { $text .= $part; - } + } // END - foreach // Replace new-lines agains
-s and finally compile possible own HTML tags out... - return COMPILE_CODE(str_replace("\n", "
\n", $text)); -} - -// Sends a HTML mail to the user -function sendHtmlEmail($to, $subject, $message, $FROM) { - if (EXT_IS_ACTIVE('html_mail')) { - // Send mail away as HTML - $FROM = "Content-Type: text/html\n" . $FROM; - sendEmail($to, $subject, $message, 'N', $FROM); - } + return preCompileCode(str_replace(PHP_EOL, '
' . PHP_EOL, $text)); } -// +// [EOF] ?>