X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffunctions.php;h=64fb5c3a211c466035b40e7898cdcc9ca7b6b207;hb=4de4188e5f00d6f7eb3762b69983a80e05b06851;hp=5a3d2155ca18b4e7c9392c2a0e53a8ce4a1e2c5d;hpb=4939d0ea8f0846283675f45c1d47f15b587789aa;p=mailer.git diff --git a/inc/functions.php b/inc/functions.php index 5a3d2155ca..64fb5c3a21 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -43,6 +43,9 @@ if (!defined('__SECURITY')) { // Output HTML code directly or 'render' it. You addionally switch the new-line character off function outputHtml ($htmlCode, $newLine = true) { + // Init output + if (!isset($GLOBALS['output'])) $GLOBALS['output'] = ''; + // Transfer username $username = getMessage('USERNAME_UNKNOWN'); if (isset($GLOBALS['username'])) $username = getUsername(); @@ -121,7 +124,7 @@ function outputHtml ($htmlCode, $newLine = true) { } // END - if // Init counter - $cnt = 0; + $cnt = '0'; // Compile and run finished rendered HTML code while (((strpos($GLOBALS['output'], '{--') > 0) || (strpos($GLOBALS['output'], '{!') > 0) || (strpos($GLOBALS['output'], '{?') > 0)) && ($cnt < 3)) { @@ -205,7 +208,7 @@ function addFatalMessage ($F, $L, $message, $extra='') { // Getter for total fatal message count function getTotalFatalErrors () { // Init coun - $count = 0; + $count = '0'; // Do we have at least the first entry? if (!empty($GLOBALS['fatal_messages'][0])) { @@ -226,7 +229,10 @@ function loadTemplate ($template, $return=false, $content=array()) { global $DATA; // Do we have cache? - if (!isset($GLOBALS['template_eval'][$template])) { + if (isTemplateCached($template)) { + // Evaluate the cache + eval(readTemplateCache($template)); + } elseif (!isset($GLOBALS['template_eval'][$template])) { // Add more variables which you want to use in your template files $username = getUsername(); @@ -238,41 +244,7 @@ function loadTemplate ($template, $return=false, $content=array()) { // Init some data $ret = ''; - if (empty($GLOBALS['refid'])) $GLOBALS['refid'] = 0; - - // Generate date/time string - $date_time = generateDateTime(time(), 1); - - // Is content an array - if (is_array($content)) $content['date_time'] = $date_time; - - // @DEPRECATED Try to rewrite the if() condition - if ($template == 'member_support_form') { - // Support request of a member - $result = SQL_QUERY_ESC("SELECT `userid`, `gender`, `surname`, `family`, `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", - array(getUserId()), __FUNCTION__, __LINE__); - - // Is content an array? - if (is_array($content)) { - // Merge data - $content = merge_array($content, SQL_FETCHARRAY($result)); - - // Translate gender - $content['gender'] = translateGender($content['gender']); - } else { - // @DEPRECATED - // @TODO Find all templates which are using these direct variables and rewrite them. - // @TODO After this step is done, this else-block is history - list($gender, $surname, $family, $email) = SQL_FETCHROW($result); - - // Translate gender - $gender = translateGender($gender); - logDebugMessage(__FUNCTION__, __LINE__, sprintf("DEPRECATION-WARNING: content is not array [%s], template=%s.", gettype($content), $template)); - } - - // Free result - SQL_FREERESULT($result); - } // END - if + if (empty($GLOBALS['refid'])) $GLOBALS['refid'] = '0'; // Base directory $basePath = sprintf("%stemplates/%s/html/", getConfig('PATH'), getLanguage()); @@ -353,12 +325,15 @@ function loadTemplate ($template, $return=false, $content=array()) { $ret = ''; if ((strpos($GLOBALS['tpl_content'], '$') !== false) || (strpos($GLOBALS['tpl_content'], '{--') !== false) || (strpos($GLOBALS['tpl_content'], '{!') !== false) || (strpos($GLOBALS['tpl_content'], '{?') !== false)) { // Normal HTML output? - if ($GLOBALS['output_mode'] == 0) { + if (getOutputMode() == '0') { // Add surrounding HTML comments to help finding bugs faster $ret = "\n" . $GLOBALS['tpl_content'] . "\n"; // Prepare eval() command - $eval = '$ret = "' . compileCode(smartAddSlashes($GLOBALS['tpl_content'])) . '";'; + $eval = '$ret = "' . compileCode(smartAddSlashes($ret)) . '";'; + } elseif (substr($template, 0, 3) == 'js_') { + // JavaScripts don't like entities + $eval = '$ret = decodeEntities("' . compileCode(smartAddSlashes($GLOBALS['tpl_content'])) . '");'; } else { // Prepare eval() command $eval = '$ret = "' . compileCode(smartAddSlashes($GLOBALS['tpl_content'])) . '";'; @@ -374,20 +349,20 @@ function loadTemplate ($template, $return=false, $content=array()) { // Eval the code eval($GLOBALS['template_eval'][$template]); - } else { - // No file! - $GLOBALS['template_eval'][$template] = '404'; - } - } elseif (((isAdmin()) || ((isInstalling()) && (!isInstalled()))) && ($GLOBALS['template_eval'][$template] == '404')) { - // Only admins shall see this warning or when installation mode is active - $ret = '{--TEMPLATE_404--} + } elseif ((isAdmin()) || ((isInstalling()) && (!isInstalled()))) { + // Only admins shall see this warning or when installation mode is active + $ret = '{--TEMPLATE_404--} (' . $template . ') {--TEMPLATE_CONTENT--}
' . print_r($content, true) . '
' . print_r($DATA, true) . '