true, 'needs_context' => true, 'is_safe' => array('all') ) ) ); } public function generatePartial($env, $context) { // get arguments (minus env & $context) $args = array_slice(func_get_args(), 2); $args_count = count($args); // default values $alias = null; switch($args_count) { case 2: list($id, $file) = $args; break; case 3: list($id, $file, $alias) = $args; break; default: return; } $rendered_template = twig_include($env, $context, $file); $output = << $rendered_template EOL; if($alias !== null) { $output .= << jQuery(function($) { $(function() { Handlebars.registerPartial( '$alias', jQuery('#$id').html() ); }); }); EOL; } return $output; } }