X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Ffunctions.php;h=da970eb6f5f4b07d62acf20550100a73dc66c608;hb=e0c325d3886bfff13a50a06cfedf9a8da24b2598;hp=d1dffd29b99c1eb04bfb7dfe199127fa17756e00;hpb=2865a2ba42f7be1851708e33a4f3325ecbff0dd1;p=mailer.git
diff --git a/inc/functions.php b/inc/functions.php
index d1dffd29b9..da970eb6f5 100644
--- a/inc/functions.php
+++ b/inc/functions.php
@@ -33,7 +33,7 @@
// Some security stuff...
if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+ $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";
require($INC);
}
@@ -138,8 +138,16 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
// Compile and run finished rendered HTML code
while (strpos($OUTPUT, '{!') > 0) {
- $eval = "\$OUTPUT = \"" . COMPILE_CODE(addslashes($OUTPUT)) . "\";";
- eval($eval);
+ // 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! ;-)
@@ -152,7 +160,7 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
// Compile and run finished rendered HTML code
while (strpos($OUTPUT, '{!') > 0) {
- $eval = "\$OUTPUT = \"" . COMPILE_CODE(addslashes($OUTPUT)) . "\";";
+ $eval = "\$OUTPUT = \"".COMPILE_CODE(addslashes($OUTPUT))."\";";
eval($eval);
}
@@ -163,16 +171,14 @@ 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
@@ -203,9 +209,10 @@ function LOAD_TEMPLATE($template, $return=false, $content="") {
if (empty($GLOBALS['refid'])) $GLOBALS['refid'] = 0;
$REFID = $GLOBALS['refid'];
+ // DEPRECATED!!!
if ($template == "member_support_form") {
// Support request of a member
- $result = SQL_QUERY_ESC("SELECT sex, surname, family FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("SELECT sex, surname, family FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
array($GLOBALS['userid']), __FILE__, __LINE__);
list($sex, $surname, $family) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
@@ -216,7 +223,7 @@ function LOAD_TEMPLATE($template, $return=false, $content="") {
$date_time = MAKE_DATETIME(time(), "1");
// Base directory
- $BASE = PATH."templates/".GET_LANGUAGE()."/html/";
+ $BASE = sprintf("%stemplates/%s/html/", PATH, GET_LANGUAGE());
$MODE = "";
// Check for admin/guest/member templates
@@ -285,7 +292,7 @@ function LOAD_TEMPLATE($template, $return=false, $content="") {
// 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
@@ -325,7 +332,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);
@@ -336,7 +343,7 @@ function SEND_EMAIL($TO, $SUBJECT, $MSG, $HTML='N', $FROM="") {
ADD_MESSAGE_TO_BOX($TO, $SUBJECT, $MSG, $HTML);
return;
} else {
- $result_email = SQL_QUERY_ESC("SELECT email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1", array(bigintval($TO)), __FILE__, __LINE__);
+ $result_email = SQL_QUERY_ESC("SELECT email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", array(bigintval($TO)), __FILE__, __LINE__);
list($TO) = SQL_FETCHROW($result_email);
SQL_FREERESULT($result_email);
}
@@ -362,7 +369,7 @@ function SEND_EMAIL($TO, $SUBJECT, $MSG, $HTML='N', $FROM="") {
}
// Fix HTML parameter (default is no!)
- if (empty($HTML)) $HTML = 'N';
+ if (empty($HTML)) $HTML = "N";
if (isBooleanConstantAndTrue('DEBUG_MODE')) {
// In debug mode we want to display the mail instead of sending it away so we can debug this part
echo "
@@ -371,7 +378,7 @@ To : ".$TO."
Subject : ".$SUBJECT."
Message : ".$MSG."
\n";
- } elseif (($HTML == 'Y') && (EXT_IS_ACTIVE("html_mail", true))) {
+ } elseif (($HTML == "Y") && (EXT_IS_ACTIVE("html_mail", true))) {
// Send mail as HTML away
SEND_HTML_EMAIL($TO, $SUBJECT, $MSG, $FROM);
} elseif (!empty($TO)) {
@@ -380,7 +387,7 @@ Message : ".$MSG."
// Send Mail away
SEND_RAW_EMAIL($TO, COMPILE_CODE($SUBJECT), COMPILE_CODE($MSG), $FROM);
- } elseif ($HTML == 'N') {
+ } elseif ($HTML == "N") {
// Problem found!
SEND_RAW_EMAIL(WEBMASTER, COMPILE_CODE($SUBJECT), COMPILE_CODE($MSG), $FROM);
}
@@ -404,7 +411,7 @@ function SEND_RAW_EMAIL ($to, $subject, $msg, $from) {
// get new instance
$mail = new PHPMailer();
- $mail->PluginDir = PATH."inc/phpmailer/";
+ $mail->PluginDir = sprintf("%sinc/phpmailer/", PATH);
$mail->IsSMTP();
$mail->SMTPAuth = true;
@@ -412,7 +419,11 @@ function SEND_RAW_EMAIL ($to, $subject, $msg, $from) {
$mail->Port = 25;
$mail->Username = SMTP_USER;
$mail->Password = SMTP_PASSWORD;
- $mail->From = $from;
+ if (empty($from)) {
+ $mail->From = WEBMASTER;
+ } else {
+ $mail->From = $from;
+ }
$mail->FromName = MAIN_TITLE;
$mail->Subject = $subject;
if ((EXT_IS_ACTIVE("html_mail")) && (strip_tags($msg) != $msg)) {
@@ -497,8 +508,7 @@ function MAKE_DATETIME($time, $mode="0")
}
// Translates the american decimal dot into a german comma
-function TRANSLATE_COMMA($dotted, $cut=true)
-{
+function TRANSLATE_COMMA($dotted, $cut=true) {
global $_CONFIG;
// Default is 3 you can change this in admin area "Misc -> Misc Options"
if (empty($_CONFIG['max_comma'])) $_CONFIG['max_comma'] = "3";
@@ -555,7 +565,7 @@ function TRANSLATE_COMMA($dotted, $cut=true)
//
function DEREFERER($URL) {
- $URL = URL."/modules.php?module=loader&url=".urlencode(base64_encode(COMPILE_CODE($URL)));
+ $URL = URL."/modules.php?module=loader&url=".urlencode(base64_encode(gzcompress(COMPILE_CODE($URL))));
return $URL;
}
@@ -571,8 +581,7 @@ function TRANSLATE_SEX($sex) {
return $ret;
}
//
-function GET_POOL_TYPE($PT)
-{
+function GET_POOL_TYPE($PT) {
switch ($PT)
{
case "TEMP" : $ret = POOL_TEMP; break;
@@ -586,33 +595,30 @@ function GET_POOL_TYPE($PT)
return $ret;
}
//
-function FRAMETESTER($URL)
-{
- global $_SERVER;
- $URL = URL."/modules.php?module=frametester&url=".urlencode(base64_encode(COMPILE_CODE($URL)));
- return $URL;
+function FRAMETESTER($URL) {
+ // Prepare frametester URL
+ $frametesterUrl = sprintf("%s/modules.php?module=frametester&url=%s",
+ URL,
+ urlencode(base64_encode(gzcompress(COMPILE_CODE($URL))))
+ );
+ return $frametesterUrl;
}
//
-function SELECTION_COUNT($array)
-{
+function SELECTION_COUNT($array) {
$ret = "0";
- if (is_array($array))
- {
- foreach ($array as $key=>$sel)
- {
+ if (is_array($array)) {
+ foreach ($array as $key => $sel) {
if (!empty($sel)) $ret++;
}
}
return $ret;
}
//
-function IMG_CODE ($code, $type, $DATA, $uid)
-{
+function IMG_CODE ($code, $type, $DATA, $uid) {
return "";
}
//
-function TRANSLATE_STATUS($status)
-{
+function TRANSLATE_STATUS($status) {
switch ($status)
{
case "UNCONFIRMED":
@@ -678,7 +684,7 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
// Keept for backward-compatiblity (please replace these variables against our new {--CONST--} syntax!)
$MAIN_TITLE = MAIN_TITLE; $URL = URL; $WEBMASTER = WEBMASTER;
- $surname = ""; $family = ""; $nick = ""; $sex = 'N';
+ $surname = ""; $family = ""; $nick = ""; $sex = "N";
// Prepare IP number and User Agent
$REMOTE_ADDR = getenv('REMOTE_ADDR');
@@ -705,6 +711,7 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
$EXPIRATION = round($_CONFIG['auto_purge']/60/60/24)." "._DAYS;
}
+ // DEPRECATED switch!
switch ($template)
{
case "bonus-mail": // Load data for the bonus mail
@@ -802,13 +809,13 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
if ($UID > 0) {
if (EXT_IS_ACTIVE("nickname")) {
// Load nickname
- $result = SQL_QUERY_ESC("SELECT surname, family, sex, email, nickname FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("SELECT surname, family, sex, email, nickname FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
array(bigintval($UID)), __FILE__, __LINE__);
list($surname, $family, $sex, $email, $nick) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
} else {
// Load normal data
- $result = SQL_QUERY_ESC("SELECT surname, family, sex, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
+ $result = SQL_QUERY_ESC("SELECT surname, family, sex, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
array(bigintval($UID)), __FILE__, __LINE__);
list($surname, $family, $sex, $email) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
@@ -816,7 +823,7 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
}
} else {
// Neutral sex and email address is default
- $sex = 'N';
+ $sex = "N";
$email = WEBMASTER;
}
@@ -827,7 +834,7 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
$DATA['email'] = $email;
// Base directory
- $BASE = PATH."templates/".GET_LANGUAGE()."/emails/";
+ $BASE = sprintf("%stemplates/%s/emails/", PATH, GET_LANGUAGE());
// Check for admin/guest/member templates
if (strpos($template, "admin_") > -1) {
@@ -855,11 +862,10 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
if ((!@file_exists($file)) || (!is_readable($file))) {
// Reset to default template
$file = $BASE.$template.".tpl";
- }
+ } // END - if
// Now does the final template exists?
- if ((@file_exists($file)) && (is_readable($file)))
- {
+ if ((@file_exists($file)) && (is_readable($file))) {
// The local file does exists so we load it. :)
$tmpl_file = @implode("", @file($file));
$tmpl_file = addslashes($tmpl_file);
@@ -873,9 +879,7 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
// Replace HTML confirm chars
$content = html_entity_decode($content);
- }
- elseif (!empty($template))
- {
+ } elseif (!empty($template)) {
// Template file not found!
$content = TEMPLATE_404.": ".$template."
".TEMPLATE_CONTENT."
@@ -886,17 +890,16 @@ function LOAD_EMAIL_TEMPLATE($template, $content="", $UID="0") {
// Debug mode not active? Then remove the HTML tags
if (!DEBUG_MODE) $content = strip_tags($content);
- }
- else
- {
+ } else {
// No template name supplied!
$content = NO_TEMPLATE_SUPPLIED;
}
+
+ // Return compiled content
return COMPILE_CODE($content);
}
//
-function MAKE_TIME($H, $M, $S, $stamp)
-{
+function MAKE_TIME($H, $M, $S, $stamp) {
// Extract day, month and year from given timestamp
$DAY = date("d", $stamp);
$MONTH = date("m", $stamp);
@@ -918,6 +921,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);
@@ -1150,10 +1159,10 @@ function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0")
case "yn":
$OUT .= "