<?php

/**

 * Template Lite

 *

 * Type:	 compile

 * Name:	 section_start

 */



function compile_include($arguments, &$object)

{

	$_args = $object->_parse_arguments($arguments);



	$arg_list = array();

	if (empty($_args['file']))

	{

		$object->trigger_error("missing 'file' attribute in include tag", E_USER_ERROR, __FILE__, __LINE__);

	}



	foreach ($_args as $arg_name => $arg_value)

	{

		if ($arg_name == 'file')

		{

			$include_file = $arg_value;

			continue;

		}

		else if ($arg_name == 'assign')

		{

			$assign_var = $arg_value;

			continue;

		}

		if (is_bool($arg_value))

		{

			$arg_value = $arg_value ? 'true' : 'false';

		}

		$arg_list[] = "'$arg_name' => $arg_value";

	}



	if (isset($assign_var))

	{

		$output = '<?php $_templatelite_tpl_vars = $this->_vars;' .

			"\n\$this->assign(" . $assign_var . ", \$this->_fetch_compile_include(" . $include_file . ", array(".implode(',', (array)$arg_list).")));\n" .

			"\$this->_vars = \$_templatelite_tpl_vars;\n" .

			"unset(\$_templatelite_tpl_vars);\n" .

			' ?>';

	}

	else

	{

		$output = '<?php $_templatelite_tpl_vars = $this->_vars;' .

			"\necho \$this->_fetch_compile_include(" . $include_file . ", array(".implode(',', (array)$arg_list)."));\n" .

			"\$this->_vars = \$_templatelite_tpl_vars;\n" .

			"unset(\$_templatelite_tpl_vars);\n" .

			' ?>';

	}

	return $output;

}

?>