X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffunctions.php;h=25ae3c78fcf6b8b0d8802f7b8e76672512ffb727;hb=5db786e2dbbd927449a5ca95bfb277f851b678b6;hp=9a9ea0dfc89080b04fd6617f1cbed14bed1afa8b;hpb=f8a2f0c9d334d87fdaf8f010678ca5ad8b95211f;p=mailer.git
diff --git a/inc/functions.php b/inc/functions.php
index 9a9ea0dfc8..25ae3c78fc 100644
--- a/inc/functions.php
+++ b/inc/functions.php
@@ -71,18 +71,15 @@ function OPEN_TABLE($PERCENT = "", $CLASS = "", $ALIGN="left", $VALIGN="", $td_o
// Vertical align is given
if (!empty($VALIGN)) $OUT .= " valign=\"".$VALIGN."\"";
- $OUT .= ">
-
-
";
- OUTPUT_HTML($OUT);
+ OUTPUT_HTML($OUT);
}
// Close a table (you may want to add some footer stuff here)
function CLOSE_TABLE($ADD="") {
- OUTPUT_HTML("
-
");
+ OUTPUT_HTML(" \n");
if (!empty($ADD)) OUTPUT_HTML($ADD);
OUTPUT_HTML("");
}
@@ -140,9 +137,17 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
}
// Compile and run finished rendered HTML code
- while (strpos($OUTPUT, "{!") > 0) {
- $eval = "\$OUTPUT = \"" . COMPILE_CODE(addslashes($OUTPUT)) . "\";";
+ while (strpos($OUTPUT, '{!') > 0) {
+ // Prepare the content and eval() it...
+ $newContent = "";
+ $eval = "\$newContent = \"" . COMPILE_CODE(addslashes($OUTPUT)) . "\";";
@eval($eval);
+
+ if (empty($newContent)) {
+ // Something went wrong!
+ die("Evaluation error:
".htmlentities($eval)."
");
+ }
+ $OUTPUT = $newContent;
}
// Output code here, DO NOT REMOVE! ;-)
@@ -154,9 +159,9 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
}
// Compile and run finished rendered HTML code
- while (strpos($OUTPUT, "{!") > 0) {
+ while (strpos($OUTPUT, '{!') > 0) {
$eval = "\$OUTPUT = \"" . COMPILE_CODE(addslashes($OUTPUT)) . "\";";
- @eval($eval);
+ eval($eval);
}
// Output code here, DO NOT REMOVE! ;-)
@@ -166,21 +171,18 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
// Output the raw HTML code
function OUTPUT_RAW ($HTML) {
- if ((isBooleanConstantAndTrue('mxchange_installed')) && (basename($_SERVER['PHP_SELF']) != "install.php")) {
- // Not in install-mode so strip slashes away
- echo stripslashes($HTML);
- } else {
- // Output directly in install-mode
- echo $HTML;
- }
+ // Output stripped HTML code to avoid broken JavaScript code, etc.
+ echo stripslashes($HTML);
- // Flush the output
- flush();
+ // Flush the output if only _OB_CACHING is not "on"
+ if (_OB_CACHING != "on") {
+ // Flush it
+ flush();
+ }
}
// Add a fatal error message to the queue array
-function ADD_FATAL ($message, $extra="")
-{
+function ADD_FATAL ($message, $extra="") {
global $FATAL;
if (empty($extra)) {
// Regular text message to add to $FATAL
@@ -284,12 +286,12 @@ function LOAD_TEMPLATE($template, $return=false, $content="") {
$tmpl_file = implode("", file($file));
// Replace ' to our own chars to preventing them being quoted
- while (strpos($tmpl_file, "\'") !== false) { $tmpl_file = str_replace("\'", "{QUOT}", $tmpl_file); }
+ while (strpos($tmpl_file, "\'") !== false) { $tmpl_file = str_replace("\'", '{QUOT}', $tmpl_file); }
// Do we have to compile the code?
if ((strpos($tmpl_file, "\$") !== false) || (strpos($tmpl_file, '{--') !== false) || (strpos($tmpl_file, '--}') > 0)) {
// Okay, compile it!
- $tmpl_file = "\$ret=\"".COMPILE_CODE(addslashes($tmpl_file))."\";";
+ $tmpl_file = "\$ret=\"" . COMPILE_CODE(addslashes($tmpl_file)) . "\";";
eval($tmpl_file);
} else {
// Simply return loaded code
@@ -329,7 +331,7 @@ function LOAD_TEMPLATE($template, $return=false, $content="") {
// Send mail out to an email address
function SEND_EMAIL($TO, $SUBJECT, $MSG, $HTML='N', $FROM="") {
// Compile subject line (for POINTS constant etc.)
- $eval = "\$SUBJECT = \"".COMPILE_CODE(addslashes($SUBJECT))."\";";
+ $eval = "\$SUBJECT = \"" . COMPILE_CODE(addslashes($SUBJECT)) . "\";";
eval($eval);
$SUBJECT = html_entity_decode($SUBJECT);
@@ -660,6 +662,9 @@ function GET_LANGUAGE() {
} elseif (!isSessionVariableSet('mx_lang')) {
// Return stored value from cookie
$ret = get_session('mx_lang');
+
+ // Fixes a warning before the session has the mx_lang constant
+ if (empty($ret)) $ret = DEFAULT_LANG;
}
return $ret;
}
@@ -787,7 +792,11 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
break;
case "add-points":
- $points = bigintval($_POST['points']);
+ if (isset($_POST['points'])) {
+ $points = bigintval($_POST['points']);
+ } else {
+ $points = __POINTS_VALUE;
+ }
break;
case "guest_request_confirm":
@@ -915,6 +924,12 @@ function LOAD_URL($URL, $addUrlData=true) {
// Compile out URI codes
$URL = COMPILE_CODE($URL);
+ // Get output buffer
+ $OUTPUT = ob_get_contents();
+
+ // Clear it
+ ob_end_clean();
+
// Add some data to URL if cookies are not accepted
if (((!defined('__COOKIES')) || (!__COOKIES)) && ($addUrlData)) $URL = ADD_URL_DATA($URL);
@@ -931,7 +946,7 @@ function LOAD_URL($URL, $addUrlData=true) {
} else {
// Output error message
include(PATH."inc/header.php");
- OUTPUT_HTML(LOAD_URL_ERROR_1.$URL.LOAD_URL_ERROR_2);
+ LOAD_TEMPLATE("redirect_url", false, str_replace("&", "&", $URL));
include(PATH."inc/footer.php");
}
exit();
@@ -948,11 +963,11 @@ function COMPILE_CODE($code, $simple = false, $constants = true, $full = true) {
if ($constants) {
// BEFORE 0.2.1 : Language and data constants
// WITH 0.2.1+ : Only language constants
- $code = str_replace("{--", '".', str_replace("--}", '."', $code));
+ $code = str_replace('{--', '".', str_replace('--}', '."', $code));
// BEFORE 0.2.1 : Not used
// WITH 0.2.1+ : Data constants
- $code = str_replace("{!", '".', str_replace("!}", '."', $code));
+ $code = str_replace('{!', '".', str_replace("!}", '."', $code));
}
// Compile QUOT and other non-HTML codes
@@ -962,7 +977,7 @@ function COMPILE_CODE($code, $simple = false, $constants = true, $full = true) {
}
// But shall I keep simple quotes for later use?
- if ($simple) $code = str_replace("\'", "{QUOT}", $code);
+ if ($simple) $code = str_replace("\'", '{QUOT}', $code);
// Find $content[bla][blub] entries
@preg_match_all('/\$(content|DATA)((\[([a-zA-Z0-9-_]+)\])*)/', $code, $matches);
@@ -1149,7 +1164,7 @@ function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0")
$OUT .= "