]> git.mxchange.org Git - mailer.git/blobdiff - inc/filters.php
Possible fix for JavaScript templates #2
[mailer.git] / inc / filters.php
index dbc68d39dad3eaa5f196c3a0b5d6989db2a5bde5..40fb713d99717057726f740728e1541e1455260b 100644 (file)
@@ -423,7 +423,7 @@ function FILTER_COMPILE_CONFIG ($code, $compiled = false) {
 
                                // Use this for replacing
                                $code = str_replace($match, $GLOBALS['compile_config'][$matches[1][$key]], $code);
-                               //* DEBUG: */ if (($match == '{?URL?}') && (strlen($code) > 10000)) die('<pre>'.htmlentities($code).'</pre>');
+                               //* DEBUG: */ if (($match == '{?URL?}') && (strlen($code) > 10000)) die('<pre>'.secureString($code).'</pre>');
                        } // END - foreach
                } // END - if
 
@@ -452,24 +452,28 @@ function FILTER_COMPILE_EXTENSION ($code) {
        if ((count($matches) > 0) && (count($matches[3]) > 0)) {
                // Replace all matches
                foreach ($matches[3] as $key => $cmd) {
-                       // By default we have no extension installed, so 'false' is assumed
-                       $replacer = 'false';
+                       // Init replacer variable
+                       $replacer = '';
 
-                       // Is the extension installed?
-                       if (isExtensionActive($matches[4][$key])) {
+                       // Is the extension installed or code provided?
+                       if ($cmd == 'code') {
+                               // Code asked for
+                               $replacer = "\".getCode(\"" . $matches[4][$key] . "\").\"";
+                       } else {
                                // Construct call-back function name
                                $functionName = 'getExtension' . ucfirst(strtolower($cmd));
 
-                               // Call the function
-                               $replacer = call_user_func_array($functionName, $matches[4][$key]);
-                       } // END - if
+                               // Construct call of the function
+                               $replacer = "\".call_user_func_array('" . $functionName . "', array('" . $matches[4][$key] . "', true)).\"";
+                       }
 
                        // Replace it and insert parameter for GET request
-                       $code = str_replace($matches[0][$key], sprintf("&amp;%s=%s&amp;rev=%s", $cmd, $replacer, getConfig('CURR_SVN_REVISION')), $code);
+                       $code = str_replace($matches[0][$key], sprintf("&amp;%s=%s&amp;rev=\".getConfig('CURR_SVN_REVISION').\"", $cmd, $replacer), $code);
                } // END - foreach
        } // END - if
 
        // Return compiled code
+       //* DEBUG: */ die('<pre>'.secureString($code).'</pre>');
        return $code;
 }
 
@@ -846,7 +850,7 @@ function FILTER_FLUSH_TEMPLATE_CACHE () {
                // Now flush all
                foreach ($GLOBALS['template_eval'] as $template=>$eval) {
                        // Flush the cache (if not yet found)
-                       flushTemplateCache($template, $eval);
+                       //flushTemplateCache($template, $eval);
                } // END - if
        } // END - if
 }