X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ftemplate-functions.php;h=0c10acd3396a0a8fbc565c25a3062d6dc93f2c4b;hb=7afedc21c1bb4bb91092840a6b6f94ac2cff469f;hp=c82496100db1edd4836ab10be8e89d254c225a94;hpb=c3b4eaf29946349ff058691db2dcb615a5379bb2;p=mailer.git diff --git a/inc/template-functions.php b/inc/template-functions.php index c82496100d..0c10acd339 100644 --- a/inc/template-functions.php +++ b/inc/template-functions.php @@ -261,7 +261,7 @@ function outputRawCode ($htmlCode) { } // Load a template file and return it's content (only it's name; do not use ' or ") -function loadTemplate ($template, $return = false, $content = array()) { +function loadTemplate ($template, $return = false, $content = array(), $compileCode = true) { // @TODO Remove this sanity-check if all is fine if (!is_bool($return)) debug_report_bug(__FUNCTION__, __LINE__, 'return is not bool (' . gettype($return) . ')'); @@ -269,7 +269,7 @@ function loadTemplate ($template, $return = false, $content = array()) { $GLOBALS['current_template'] = $template; // Do we have cache? - if ((isDebuggingTemplateCache() === false) && (isTemplateCached($template))) { + if ((!isDebuggingTemplateCache()) && (isTemplateCached($template))) { // Evaluate the cache eval(readTemplateCache($template)); } elseif (!isset($GLOBALS['template_eval'][$template])) { @@ -309,18 +309,18 @@ function loadTemplate ($template, $return = false, $content = array()) { $ret = '' . $GLOBALS['tpl_content'][$template] . ''; // Prepare eval() command - $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileCode(escapeQuotes($ret)) . '";'; + $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileCode(escapeQuotes($ret), false, true, true, $compileCode) . '";'; } elseif (substr($template, 0, 3) == 'js_') { // JavaScripts don't like entities and timings - $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeJavaScriptQuotes($GLOBALS['tpl_content'][$template])) . '");'; + $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeJavaScriptQuotes($GLOBALS['tpl_content'][$template]), false, true, true, $compileCode) . '");'; } else { // Prepare eval() command, other output doesn't like entities, maybe - $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template])) . '");'; + $GLOBALS['template_eval'][$template] = '$ret = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template]), false, true, true, $compileCode) . '");'; } } else { // Add surrounding HTML comments to help finding bugs faster $ret = '' . $GLOBALS['tpl_content'][$template] . ''; - $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileRawCode(escapeQuotes($ret)) . '";'; + $GLOBALS['template_eval'][$template] = '$ret = "' . getColorSwitchCode($template) . compileRawCode(escapeQuotes($ret), false, true, true, $compileCode) . '";'; } // END - if } elseif ((isAdmin()) || ((isInstalling()) && (!isInstalled()))) { // Only admins shall see this warning or when installation mode is active @@ -331,7 +331,7 @@ function loadTemplate ($template, $return = false, $content = array()) { (' . $template . ')
- {--TEMPLATE_CONTENT--} + {--TEMPLATE_CONTENT--}:
' . print_r($content, true) . '
'; } else { @@ -455,8 +455,13 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0', $loadU // Merge data if valid //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "content()=".count($content)." - PRE
"); if ((isUserDataValid()) && ($loadUserData === true)) { + // It is valid $content = merge_array($content, getUserDataArray()); + + // But we don't like hashed passwords be mailed + unset($content['password']); } // END - if + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "content()=".count($content)." - AFTER
"); } // END - if @@ -485,14 +490,14 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0', $loadU $GLOBALS['tpl_content'][$template] = '$newContent = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template])) . '");'; eval($GLOBALS['tpl_content'][$template]); } elseif (!empty($template)) { - // Template file not found! + // Template file not found $newContent = '
{--TEMPLATE_404--}: ' . $template . '
- {--TEMPLATE_CONTENT--} + {--TEMPLATE_CONTENT--}:
' . print_r($content, true) . '
- {--TEMPLATE_DATA--} + {--TEMPLATE_DATA--}:
' . print_r($DATA, true) . '
'; @@ -543,14 +548,14 @@ function getMenuCssClasses ($data) { } // Generate XHTML code for the CAPTCHA -function generateCaptchaCode ($code, $type, $DATA, $userid) { - return 'Code ' . $code . ''; +function generateCaptchaCode ($code, $type, $type, $userid) { + return 'Code ' . $code . ''; } // Compiles the given HTML/mail code -function compileCode ($code, $simple = false, $constants = true, $full = true) { - // Is the code a string? - if (!is_string($code)) { +function compileCode ($code, $simple = false, $constants = true, $full = true, $compileCode = true) { + // Is the code a string or should we not compile? + if ((!is_string($code)) || ($compileCode === false)) { // Silently return it return $code; } // END - if @@ -576,9 +581,9 @@ function compileCode ($code, $simple = false, $constants = true, $full = true) { // Compiles the code (use compileCode() only for HTML because of the comments) // @TODO $simple/$constants are deprecated -function compileRawCode ($code, $simple = false, $constants = true, $full = true) { - // Is the code a string? - if (!is_string($code)) { +function compileRawCode ($code, $simple = false, $constants = true, $full = true, $compileCode = true) { + // Is the code a string or shall we not compile? + if ((!is_string($code)) || ($compileCode === false)) { // Silently return it return $code; } // END - if @@ -587,7 +592,9 @@ function compileRawCode ($code, $simple = false, $constants = true, $full = true $secChars = $GLOBALS['url_chars']; // Select full set of chars to replace when we e.g. want to compile URLs - if ($full === true) $secChars = $GLOBALS['security_chars']; + if ($full === true) { + $secChars = $GLOBALS['security_chars']; + } // END - if // Compile more through a filter $code = runFilterChain('compile_code', $code); @@ -618,7 +625,7 @@ function compileRawCode ($code, $simple = false, $constants = true, $full = true // Does this entry exist? //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "found={$found},match={$match},set={$set}
"); if ($test == $match) { - // Match found! + // Match found //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "fuzzyFound!
"); $fuzzyFound = true; break; @@ -816,6 +823,7 @@ function generateImageOrCode ($img_code, $headerSent = true) { // Remove image from memory imagedestroy($image); } + // Create selection box or array of splitted timestamp function createTimeSelections ($timestamp, $prefix = '', $display = '', $align = 'center', $return_array=false) { // Do not continue if ONE_DAY is absend @@ -839,7 +847,9 @@ function createTimeSelections ($timestamp, $prefix = '', $display = '', $align = $M2 = getMonth(time() + $timestamp); // If so and if current time is before 02/29 and estimated time is after 02/29 then add 86400 seconds (one day) - if ((floor($TEST) == $TEST) && ($M1 == '02') && ($M2 > '02')) $SWITCH = getOneDay(); + if ((floor($TEST) == $TEST) && ($M1 == '02') && ($M2 > '02')) { + $SWITCH = getOneDay(); + } // END - switch // First of all years... $Y = abs(floor($timestamp / (31536000 + $SWITCH))); @@ -1022,7 +1032,9 @@ function createTimeSelections ($timestamp, $prefix = '', $display = '', $align = // Generate a list of administrative links to a given userid function generateMemberAdminActionLinks ($userid) { // Make sure userid is a number - if ($userid != bigintval($userid)) debug_report_bug(__FUNCTION__, __LINE__, 'userid is not a number!'); + if ($userid != bigintval($userid)) { + debug_report_bug(__FUNCTION__, __LINE__, 'userid is not a number!'); + } // END - if // Define all main targets $targetArray = array('del_user', 'edit_user', 'lock_user', 'add_points', 'sub_points'); @@ -1227,7 +1239,9 @@ function handleCodeMessage () { $ext = 'unknown'; // Is extension given? - if (isGetRequestParameterSet('ext')) $ext = getRequestParameter('ext'); + if (isGetRequestParameterSet('ext')) { + $ext = getRequestParameter('ext'); + } // END - if // Convert the 'code' parameter from URL to a human-readable message $message = getMessageFromErrorCode(getRequestParameter('code')); @@ -1337,7 +1351,7 @@ function linenumberCode ($code) { if ($count_lines == 1) { $r .= 1; } else { - $r .= ($line == ($count_lines - 1)) ? '' : ($line+1); + $r .= ($line == ($count_lines - 1)) ? '' : ($line+1); } $r .= '|'; @@ -1393,7 +1407,7 @@ function determinePageTitle () { // Installation mode $pageTitle = '{--INSTALLER_OF_MAILER--}'; } else { - // Configuration not found! + // Configuration not found $pageTitle = '{--NO_CONFIG_FOUND_TITLE--}'; // Do not add the fatal message in installation mode @@ -1460,7 +1474,7 @@ function escapeQuotes ($str, $single = false) { $str = addslashes($str); } else { // Remove escaping of single quotes - $str = str_replace("\'", "'", $str); + $str = str_replace("\\'", "'", $str); // Escape only double-quotes but prevent double-quoting $str = str_replace("\\\\", "\\", str_replace('"', "\\\"", $str)); @@ -1584,11 +1598,11 @@ function sendModeMails ($mod, $modes) { } // Load template - loadTemplate('admin_settings_saved', false, $content['message']); + displayMessage($content['message']); } // Generates a 'selection box' from given array -function generateSelectionBoxFromArray ($options, $name, $optionValue, $optionContent = '', $extraName = '') { +function generateSelectionBoxFromArray (array $options, $name, $optionValue, $optionContent = '', $extraName = '') { // Start the output $OUT = ''; + + // Add the options + $out .= generateOptionList('/ARRAY/', array('M', 'F', 'C'), array('{--GENDER_M--}', '{--GENDER_F--}', '{--GENDER_C--}'), $selectedGender); + + // Finish HTML code + $out .= ''; + + // Return the code + return $out; +} + //----------------------------------------------------------------------------- // Template helper functions for EL //-----------------------------------------------------------------------------