public function testGetTemplateNameFromFilename() { $this->assertEquals('some', HTML_Template_PHPLIB_Generator::getTemplateNameFromFilename('some.tpl')); $this->assertEquals('order', HTML_Template_PHPLIB_Generator::getTemplateNameFromFilename('/path/to/templates/order.mail')); /* //does not work on unix $this->assertEquals( 'mytemplate', HTML_Template_PHPLIB_Generator::getTemplateNameFromFilename( 'C:\\mytemplate.ihtml' ) ); */ }
/** * Creates the code to use a given template file * * @param string $strFile Template file * @param string $strTplName Template reference name * @param string $strPrefix Prefix to prepend before the code * * @return string PHP code */ function getCodeBlockDefinition($strFile, $strTplName = null, $strPrefix = '$tpl') { $arBlocks = HTML_Template_PHPLIB_Generator::getBlocks(HTML_Template_PHPLIB_Helper::getLines($strFile)); if ($strTplName === null) { $strTplName = HTML_Template_PHPLIB_Generator::getTemplateNameFromFilename($strFile); } $nl = "\r\n"; $code = ''; $code .= $strPrefix . ' = new HTML_Template_PHPLIB();' . $nl; $code .= HTML_Template_PHPLIB_Generator::getCodeBlock($arBlocks, $strTplName, $strPrefix); $code .= $nl; $code .= '//TODO: do something with the code' . $nl; $code .= $nl; $code .= $strPrefix . '->finish(' . trim($strPrefix) . "->parse('TMP', '" . $strTplName . "'));" . $nl; return $code; }