summaryrefslogtreecommitdiff
path: root/lib/smarty-2.6.8/internals/core.smarty_include_php.php
diff options
context:
space:
mode:
authorNathan Kinkade <nath@nkinka.de>2008-03-16 20:42:30 +0000
committerNathan Kinkade <nath@nkinka.de>2008-03-16 20:42:30 +0000
commit6d0fbeb0a7fde0cc8bae6c9944ea6b017d96968a (patch)
tree7da954e7aaa5c7a78bd0c0cc6911f718670ea37a /lib/smarty-2.6.8/internals/core.smarty_include_php.php
parent32482b90446a7974e4aa1a392a79f1c8e18ed200 (diff)
Moved some external packages into lib to make system more self contained
Diffstat (limited to 'lib/smarty-2.6.8/internals/core.smarty_include_php.php')
-rw-r--r--lib/smarty-2.6.8/internals/core.smarty_include_php.php50
1 files changed, 50 insertions, 0 deletions
diff --git a/lib/smarty-2.6.8/internals/core.smarty_include_php.php b/lib/smarty-2.6.8/internals/core.smarty_include_php.php
new file mode 100644
index 0000000..30c6e76
--- /dev/null
+++ b/lib/smarty-2.6.8/internals/core.smarty_include_php.php
@@ -0,0 +1,50 @@
+<?php
+/**
+ * Smarty plugin
+ * @package Smarty
+ * @subpackage plugins
+ */
+
+/**
+ * called for included php files within templates
+ *
+ * @param string $smarty_file
+ * @param string $smarty_assign variable to assign the included template's
+ * output into
+ * @param boolean $smarty_once uses include_once if this is true
+ * @param array $smarty_include_vars associative array of vars from
+ * {include file="blah" var=$var}
+ */
+
+// $file, $assign, $once, $_smarty_include_vars
+
+function smarty_core_smarty_include_php($params, &$smarty)
+{
+ $_params = array('resource_name' => $params['smarty_file']);
+ require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
+ smarty_core_get_php_resource($_params, $smarty);
+ $_smarty_resource_type = $_params['resource_type'];
+ $_smarty_php_resource = $_params['php_resource'];
+
+ if (!empty($params['smarty_assign'])) {
+ ob_start();
+ if ($_smarty_resource_type == 'file') {
+ $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
+ } else {
+ $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
+ }
+ $smarty->assign($params['smarty_assign'], ob_get_contents());
+ ob_end_clean();
+ } else {
+ if ($_smarty_resource_type == 'file') {
+ $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
+ } else {
+ $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
+ }
+ }
+}
+
+
+/* vim: set expandtab: */
+
+?>