X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fexpression-functions.php;h=dd533a27a7cbcbc53ec6874c9eb99b024ae8c3d9;hp=b3ee099725fead995c04ca8e44694ea05f6721ab;hb=e8ca54fe91872ab95a6ffdc4f1268bf18889021d;hpb=07af932574589f4906be5ebf6733fdb95f30e9a2 diff --git a/inc/expression-functions.php b/inc/expression-functions.php index b3ee099725..dd533a27a7 100644 --- a/inc/expression-functions.php +++ b/inc/expression-functions.php @@ -188,7 +188,8 @@ function doExpressionPipe ($data) { if (!empty($data['callback'])) { //if ($data['callback'] == 'getMemberId') die('
'.encodeEntities(print_r($data, true)).'
'); // If the value is empty, we don't add it - if (empty($data['value'])) { + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'value[' . gettype($data['value']) . ']=' . $data['value']); + if ((empty($data['value'])) && ($data['value'] != '0')) { // No value is set $replacer = '{DQUOTE} . ' . $data['extra_func2'] . '(' . $data['extra_func'] . '(' . $data['callback'] . '())) . {DQUOTE}'; } else { @@ -263,19 +264,28 @@ function doExpressionMessage ($data) { // Expression call-back for template functions function doExpressionTemplate ($data) { - // Do the replacement - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'template='.$GLOBALS['current_template']); - $replacer = '{DQUOTE} . doTemplate' . $data['callback'] . "('" . $GLOBALS['current_template'] . "', true"; - - // Is 'value' set? - if (!empty($data['value'])) { - // Then include it as well - $replacer .= ", '" . $data['value'] . "'"; + // Construct call-back function name + $callback = 'doTemplate' . $data['callback']; + + // Init replacer + $replacer = ''; + + // Is the function there? + if (function_exists($callback)) { + // Do the replacement + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'template='.$GLOBALS['current_template']); + $replacer = '{DQUOTE} . ' . $callback . "('" . $GLOBALS['current_template'] . "', true"; + + // Is 'value' set? + if (!empty($data['value'])) { + // Then include it as well + $replacer .= ", '" . $data['value'] . "'"; + } // END - if + + // Replacer is ready + $replacer .= ') . {DQUOTE}'; } // END - if - // Replacer is ready - $replacer .= ') . {DQUOTE}'; - // Replace the code $code = replaceExpressionCode($data, $replacer);