aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md')
-rw-r--r--vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md50
1 files changed, 50 insertions, 0 deletions
diff --git a/vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md b/vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md
new file mode 100644
index 000000000..d8fcbb1ad
--- /dev/null
+++ b/vendor/smarty/smarty/docs/programmers/api-variables/variable-default-template-handler-func.md
@@ -0,0 +1,50 @@
+\$default\_template\_handler\_func {#variable.default.template.handler.func}
+==================================
+
+This function is called when a template cannot be obtained from its
+resource.
+
+> **Note**
+>
+> The default handler is currently only invoked for file resources. It
+> is not triggered when the resource itself cannot be found, in which
+> case a SmartyException is thrown.
+
+
+ <?php
+
+ $smarty = new Smarty();
+ $smarty->default_template_handler_func = 'my_default_template_handler_func';
+
+ /**
+ * Default Template Handler
+ *
+ * called when Smarty's file: resource is unable to load a requested file
+ *
+ * @param string $type resource type (e.g. "file", "string", "eval", "resource")
+ * @param string $name resource name (e.g. "foo/bar.tpl")
+ * @param string &$content template's content
+ * @param integer &$modified template's modification time
+ * @param Smarty $smarty Smarty instance
+ * @return string|boolean path to file or boolean true if $content and $modified
+ * have been filled, boolean false if no default template
+ * could be loaded
+ */
+ function my_default_template_handler_func($type, $name, &$content, &$modified, Smarty $smarty) {
+ if (false) {
+ // return corrected filepath
+ return "/tmp/some/foobar.tpl";
+ } elseif (false) {
+ // return a template directly
+ $content = "the template source";
+ $modified = time();
+ return true;
+ } else {
+ // tell smarty that we failed
+ return false;
+ }
+ }
+
+ ?>
+
+