X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=0.2.1%2Finc%2Flibs%2Fnewsletter_functions.php;h=aa75f75f36dbe65949030e3950a160160005344c;hb=7bc25dd08431c94ce9edca131d56c1a36b13c28a;hp=2cc971667d7ab088da48f62b4ad503f98a5e904e;hpb=157ee010917df5ca07e6d31b42f67417b2516d74;p=mailer.git diff --git a/0.2.1/inc/libs/newsletter_functions.php b/0.2.1/inc/libs/newsletter_functions.php index 2cc971667d..aa75f75f36 100644 --- a/0.2.1/inc/libs/newsletter_functions.php +++ b/0.2.1/inc/libs/newsletter_functions.php @@ -1,185 +1,185 @@ -", $test)) - { - $check = strtolower(substr($test, strpos($test, "<") + 1, strpos($test, ">") - strpos($test, "<") - 1)); - $check = str_replace("/", "", $check); - if (!in_array($check, $HTML_TAGS)) - { - // Invalid tag found! - return ""; - } - $test = substr($test, strpos($test, ">") + 1); - } - // Return tested code - return $html; -} -// -function NL_INSERT_URLS($text) -{ - global $URL_ENDS, $VALID_EMAIL_CHARS; - $test = $text; - - // First replace URLs... - while (ereg("http://", $test)) - { - $check = substr($test, strpos($test, "http://")); $check2 = $check; - - // See ext-html.php if you want to add more URL ends... - foreach ($URL_ENDS as $end) - { - if (ereg($end, $check)) $check = substr($check, 0, strpos($check, $end)); - } - - // Now replace the URL against anchor container and pray... - $text = substr($text, 0, strpos($text, $check2)) . DEREFERER($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)); - } - - // Now do the (nearly) same thing with email addresses - // but now we have the problem that email addresses didn't have - // a start mark like http:// and our templates are lame didn't have - // a mailto: ... :-( - $test = $text; - - // ... what will the email address be out the @... ;-) - $PARTS = array(); - while (ereg("@", $test)) - { - $pos = strpos($test, "@"); - $test2 = substr($test, 0, $pos); - - // First check backwards - $idx = $pos - 1; - while ($idx > 0) - { - $check = substr($test2, $idx, 1); - if (!in_array($check, $VALID_EMAIL_CHARS)) - { - // Char found so we end here - break; - } - $idx--; - } - if ($idx > 0) - { - // Starting mark is found - $check2 = substr($test, 0, ($idx + 1)); - $test = substr($test, ($idx + 1)); - } - - // And now go forward... - $idx = 0; - while ($idx < strlen($test)) - { - $check = substr($test, $idx, 1); - if ((!in_array($check, $VALID_EMAIL_CHARS)) && ($check != "@")) - { - // Char found so end here again - break; - } - $idx++; - } - if ($idx > 0) - { - // Maybe this is the email address? - $check = substr($test, 0, $idx); - } - - // Now replace the email against anchor with mailto and pray... - $PARTS[] = $check2.$check; - - // Remove email from testing string (see above why...) - $test = substr($test, strlen($check)); - } - // Now put all parts together - $text = ""; $PARTS[] = $test; - foreach ($PARTS as $part) - { - $text .= $part; - } - - // Compile possible own HTML tags out... - return COMPILE_CODE($text); -} -// -function SEND_NEWSLETTER($TO, $SUBJECT, $MSG, $MODE) -{ - global $_POST; - // Send mail away as HTML - if ($_POST['auto_urls'] == "Y") { - // Automatically insert URLs into newsletter - if ((EXT_IS_ACTIVE("html")) && ($MODE == "html")) { - // Send HTML mail - SEND_EMAIL($TO, $SUBJECT, HTML_INSERT_URLS($MSG), "Y"); - } else { - // Send normal mail - SEND_EMAIL($TO, $SUBJECT, NL_INSERT_URLS($MSG), "N"); - } - } else { - // Regular send-out - if ((EXT_IS_ACTIVE("html")) && ($MODE == "html")) { - SEND_EMAIL($TO, $SUBJECT, $MSG, "Y"); - } else { - SEND_EMAIL($TO, $SUBJECT, $MSG); - } - } -} -// -?> +", $test)) + { + $check = strtolower(substr($test, strpos($test, "<") + 1, strpos($test, ">") - strpos($test, "<") - 1)); + $check = str_replace("/", "", $check); + if (!in_array($check, $HTML_TAGS)) + { + // Invalid tag found! + return ""; + } + $test = substr($test, strpos($test, ">") + 1); + } + // Return tested code + return $html; +} +// +function NL_INSERT_URLS($text) +{ + global $URL_ENDS, $VALID_EMAIL_CHARS; + $test = $text; + + // First replace URLs... + while (ereg("http://", $test)) + { + $check = substr($test, strpos($test, "http://")); $check2 = $check; + + // See ext-html.php if you want to add more URL ends... + foreach ($URL_ENDS as $end) + { + if (ereg($end, $check)) $check = substr($check, 0, strpos($check, $end)); + } + + // Now replace the URL against anchor container and pray... + $text = substr($text, 0, strpos($text, $check2)) . DEREFERER($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)); + } + + // Now do the (nearly) same thing with email addresses + // but now we have the problem that email addresses didn't have + // a start mark like http:// and our templates are lame didn't have + // a mailto: ... :-( + $test = $text; + + // ... what will the email address be out the @... ;-) + $PARTS = array(); + while (ereg("@", $test)) + { + $pos = strpos($test, "@"); + $test2 = substr($test, 0, $pos); + + // First check backwards + $idx = $pos - 1; + while ($idx > 0) + { + $check = substr($test2, $idx, 1); + if (!in_array($check, $VALID_EMAIL_CHARS)) + { + // Char found so we end here + break; + } + $idx--; + } + if ($idx > 0) + { + // Starting mark is found + $check2 = substr($test, 0, ($idx + 1)); + $test = substr($test, ($idx + 1)); + } + + // And now go forward... + $idx = 0; + while ($idx < strlen($test)) + { + $check = substr($test, $idx, 1); + if ((!in_array($check, $VALID_EMAIL_CHARS)) && ($check != "@")) + { + // Char found so end here again + break; + } + $idx++; + } + if ($idx > 0) + { + // Maybe this is the email address? + $check = substr($test, 0, $idx); + } + + // Now replace the email against anchor with mailto and pray... + $PARTS[] = $check2.$check; + + // Remove email from testing string (see above why...) + $test = substr($test, strlen($check)); + } + // Now put all parts together + $text = ""; $PARTS[] = $test; + foreach ($PARTS as $part) + { + $text .= $part; + } + + // Compile possible own HTML tags out... + return COMPILE_CODE($text); +} +// +function SEND_NEWSLETTER($TO, $SUBJECT, $MSG, $MODE) +{ + global $_POST; + // Send mail away as HTML + if ($_POST['auto_urls'] == "Y") { + // Automatically insert URLs into newsletter + if ((EXT_IS_ACTIVE("html")) && ($MODE == "html")) { + // Send HTML mail + SEND_EMAIL($TO, $SUBJECT, HTML_INSERT_URLS($MSG), "Y"); + } else { + // Send normal mail + SEND_EMAIL($TO, $SUBJECT, NL_INSERT_URLS($MSG), "N"); + } + } else { + // Regular send-out + if ((EXT_IS_ACTIVE("html")) && ($MODE == "html")) { + SEND_EMAIL($TO, $SUBJECT, $MSG, "Y"); + } else { + SEND_EMAIL($TO, $SUBJECT, $MSG); + } + } +} +// +?>