diff options
author | Igor Wiedler <igor@wiedler.ch> | 2012-04-07 18:27:30 +0200 |
---|---|---|
committer | Igor Wiedler <igor@wiedler.ch> | 2012-04-07 18:27:30 +0200 |
commit | 24daef1aafb0a733c3428122d740fea17d4f34a0 (patch) | |
tree | 19338a7c549089437f2f9cb708f6afb8a26e733a /phpBB/includes/style/template_renderer_eval.php | |
parent | 3963b39634225a68687cf1b817a47ae1eeb6ac79 (diff) | |
parent | 713e7129e2dfb1039f5198c03c8808c8410f434a (diff) | |
download | forums-24daef1aafb0a733c3428122d740fea17d4f34a0.tar forums-24daef1aafb0a733c3428122d740fea17d4f34a0.tar.gz forums-24daef1aafb0a733c3428122d740fea17d4f34a0.tar.bz2 forums-24daef1aafb0a733c3428122d740fea17d4f34a0.tar.xz forums-24daef1aafb0a733c3428122d740fea17d4f34a0.zip |
Merge branch 'develop' into feature/avatars
* develop: (335 commits)
[ticket/10575] Adding public visibility to the methods.
[ticket/10575] Fixing non-static access to static functions get_instance
[ticket/10547] User is not logged in as admin after installation
[ticket/10650] Revert merge of 'rahulr92/ticket/10650' into develop
[ticket/10650] Added checking for empty subjects
[ticket/10650] Corrected intendation
[ticket/10650]Added permission checking and utf8 functions
[ticket/10650] Cropped subject and inserted newline
[ticket/10650] Corrected space before true
[ticket/10650] Changed language files and forumlist
[ticket/10650] Added static sql files
[ticket/10650] Displaying last topic on forum list
[ticket/10760] Fix numbering in php fun facts.
[ticket/10760] Value must be quoted as it might be two words.
[ticket/10760] PHP is great. This commit is the proof.
[ticket/10760] Catch both versions of parse error output in php.
[ticket/10607] Added 'Powered by' translation string.
[ticket/10760] Account for display_errors=stderr in pre-commit hook.
[ticket/10760] Quote PHP_BIN when using it.
[ticket/10760] Use echo -e only if echo understands -e.
...
Diffstat (limited to 'phpBB/includes/style/template_renderer_eval.php')
-rw-r--r-- | phpBB/includes/style/template_renderer_eval.php | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/phpBB/includes/style/template_renderer_eval.php b/phpBB/includes/style/template_renderer_eval.php new file mode 100644 index 0000000000..3e08b06e69 --- /dev/null +++ b/phpBB/includes/style/template_renderer_eval.php @@ -0,0 +1,60 @@ +<?php +/** +* +* @package phpBB3 +* @copyright (c) 2011 phpBB Group +* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 +* +*/ + +/** +* @ignore +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +/** +* Template renderer that stores compiled template's php code and +* displays it via eval. +* +* @package phpBB3 +*/ +class phpbb_style_template_renderer_eval implements phpbb_style_template_renderer +{ + /** + * Template code to be eval'ed. + */ + private $code; + + /** + * Constructor. Stores provided code for future evaluation. + * Template includes are delegated to template object $template. + * + * @param string $code php code of the template + * @param phpbb_style_template $template template object + */ + public function __construct($code, $template) + { + $this->code = $code; + $this->template = $template; + } + + /** + * Displays the template managed by this renderer by eval'ing php code + * of the template. + * + * @param phpbb_style_template_context $context Template context to use + * @param array $lang Language entries to use + */ + public function render($context, $lang) + { + $_template = $this->template; + $_tpldata = &$context->get_data_ref(); + $_rootref = &$context->get_root_ref(); + $_lang = $lang; + + eval(' ?>' . $this->code . '<?php '); + } +} |