X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Ftemplate-functions.php;h=b838f086a07cb71373d4b43555cb7fa3ab1ac8b4;hp=cec52e7ccbf2f0632e89f4af891ec8daf5e47013;hb=5f25dbe2aab8c57f820caaf48708bef1dd56f417;hpb=ff6e1b8fc739109c5e07413377268231f7a7c50d diff --git a/inc/template-functions.php b/inc/template-functions.php index cec52e7ccb..b838f086a0 100644 --- a/inc/template-functions.php +++ b/inc/template-functions.php @@ -56,7 +56,7 @@ function enableTemplateHtml ($enable = true) { // Default: true function isTemplateHtml () { // Is the output_mode other than 0 (HTML), then no comments are enabled - if (getScriptOutputMode() != 0) { + if (!isHtmlOutputMode()) { // No HTML return false; } else { @@ -82,25 +82,6 @@ function fixEmptyContentToDashes ($str) { return $str; } -// Color-switch helper function -function doTemplateColorSwitch ($template, $clear = false, $return = true) { - // Is it there? - if (!isset($GLOBALS['color_switch'][$template])) { - // Initialize it - initTemplateColorSwitch($template); - } elseif ($clear === false) { - // Switch color if called from loadTemplate() - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'SWITCH:' . $template); - $GLOBALS['color_switch'][$template] = 3 - $GLOBALS['color_switch'][$template]; - } // END - if - - // Return CSS class name - if ($return === true) { - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'RETURN:' . $template . '=' . $GLOBALS['color_switch'][$template]); - return 'switch_sw' . $GLOBALS['color_switch'][$template]; - } // END - if -} - // Init color switch function initTemplateColorSwitch ($template) { //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'INIT:' . $template); @@ -199,14 +180,16 @@ function compileFinalOutput () { $GLOBALS['output'] = doFinalCompilation($GLOBALS['output']); // Extension 'rewrite' installed? - if ((isExtensionActive('rewrite')) && (getScriptOutputMode() != 1)) { + if ((isExtensionActive('rewrite')) && (!isCssOutputMode())) { $GLOBALS['output'] = rewriteLinksInCode($GLOBALS['output']); } // END - if // Compress it? + /** + * @TODO On some pages this is buggy if (!empty($_SERVER['HTTP_ACCEPT_ENCODING']) && (strpos('gzip', $_SERVER['HTTP_ACCEPT_ENCODING']) !== null)) { // Compress it for HTTP gzip - $GLOBALS['output'] = gzencode($GLOBALS['output'], 9, true); + $GLOBALS['output'] = gzencode($GLOBALS['output'], 9); // Add header sendHeader('Content-Encoding: gzip'); @@ -217,6 +200,7 @@ function compileFinalOutput () { // Add header sendHeader('Content-Encoding: deflate'); } + */ // Add final length sendHeader('Content-Length: ' . strlen($GLOBALS['output'])); @@ -226,7 +210,7 @@ function compileFinalOutput () { } // Main compilation loop -function doFinalCompilation ($code, $insertComments = true) { +function doFinalCompilation ($code, $insertComments = true, $enableCodes = true) { // Insert comments? (Only valid with HTML templates, of course) enableTemplateHtml($insertComments); @@ -240,10 +224,11 @@ function doFinalCompilation ($code, $insertComments = true) { $newContent = ''; // Compile it - //* DEBUG: */ debugOutput('
'.encodeEntities($code).''); - $eval = '$newContent = "' . str_replace('{DQUOTE}', '"', compileCode(escapeQuotes($code))) . '";'; - //* DEBUG: */ if (!$insertComments) print('
'.linenumberCode($eval).''); + //* DEBUG: */ debugOutput('
'.linenumberCode($code).''); + $eval = '$newContent = "' . str_replace('{DQUOTE}', '"', compileCode(escapeQuotes($code), false, true, $enableCodes)) . '";'; + //* DEBUG: */ if (!$insertComments) print('EVAL=
'.linenumberCode($eval).''); eval($eval); + //* DEBUG: */ if (!$insertComments) print('NEW=
'.linenumberCode($newContent).''); //* DEBUG: */ die('
'.encodeEntities($newContent).''); // Was that eval okay? @@ -299,9 +284,7 @@ function loadTemplate ($template, $return = false, $content = array()) { $basePath = sprintf("%stemplates/%s/html/", getPath(), getLanguage()); $extraPath = detectExtraTemplatePath($template);; - //////////////////////// - // Generate file name // - //////////////////////// + // Generate FQFN $FQFN = $basePath . $extraPath . $template . '.tpl'; // Does the special template exists? @@ -316,28 +299,28 @@ function loadTemplate ($template, $return = false, $content = array()) { incrementConfigEntry('num_templates'); // The local file does exists so we load it. :) - $GLOBALS['tpl_content'] = readFromFile($FQFN); + $GLOBALS['tpl_content'][$template] = readFromFile($FQFN); // Do we have to compile the code? $ret = ''; - if ((strpos($GLOBALS['tpl_content'], '$') !== false) || (strpos($GLOBALS['tpl_content'], '{--') !== false) || (strpos($GLOBALS['tpl_content'], '{?') !== false) || (strpos($GLOBALS['tpl_content'], '{%') !== false)) { + if ((strpos($GLOBALS['tpl_content'][$template], '$') !== false) || (strpos($GLOBALS['tpl_content'][$template], '{--') !== false) || (strpos($GLOBALS['tpl_content'][$template], '{?') !== false) || (strpos($GLOBALS['tpl_content'][$template], '{%') !== false)) { // Normal HTML output? - if (getScriptOutputMode() == '0') { + if (isHtmlOutputMode()) { // Add surrounding HTML comments to help finding bugs faster - $ret = '' . $GLOBALS['tpl_content'] . ''; + $ret = '' . $GLOBALS['tpl_content'][$template] . ''; // Prepare eval() command $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileCode(escapeQuotes($ret)) . '";'; } elseif (substr($template, 0, 3) == 'js_') { // JavaScripts don't like entities and timings - $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeJavaScriptQuotes($GLOBALS['tpl_content'])) . '");'; + $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeJavaScriptQuotes($GLOBALS['tpl_content'][$template])) . '");'; } else { // Prepare eval() command, other output doesn't like entities, maybe - $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'])) . '");'; + $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template])) . '");'; } } else { // Add surrounding HTML comments to help finding bugs faster - $ret = '' . $GLOBALS['tpl_content'] . ''; + $ret = '' . $GLOBALS['tpl_content'][$template] . ''; $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileRawCode(escapeQuotes($ret)) . '";'; } // END - if } elseif ((isAdmin()) || ((isInstalling()) && (!isInstalled()))) { @@ -497,11 +480,11 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0') { $newContent = ''; if (isFileReadable($FQFN)) { // The local file does exists so we load it. :) - $GLOBALS['tpl_content'] = readFromFile($FQFN); + $GLOBALS['tpl_content'][$template] = readFromFile($FQFN); // Run code - $GLOBALS['tpl_content'] = '$newContent = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'])) . '");'; - eval($GLOBALS['tpl_content']); + $GLOBALS['tpl_content'][$template] = '$newContent = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template])) . '");'; + eval($GLOBALS['tpl_content'][$template]); } elseif (!empty($template)) { // Template file not found! $newContent = '
'; $debug .= debug_get_printable_backtrace(); $debug .= ''; - $debug .= '