Added fallback solution in getTemplate() for 3rd party modules.

Thanks to atari.
This commit is contained in:
Andreas Burchert (scarya)
2011-03-02 10:15:46 +01:00
parent e04ae041ab
commit dc1f33f494

View File

@@ -56,6 +56,18 @@ function getTemplate($template, $noarea = 0)
$templatefile = preg_replace('/<if[ \t]*(.*)>(.*)(<\/if>|<else>(.*)<\/if>)/Uis', '".( ($1) ? ("$2") : ("$4") )."', $templatefile); $templatefile = preg_replace('/<if[ \t]*(.*)>(.*)(<\/if>|<else>(.*)<\/if>)/Uis', '".( ($1) ? ("$2") : ("$4") )."', $templatefile);
} }
} }
elseif(file_exists('./templates/' . $template . '.tpl') && is_readable('./templates/' . $template . '.tpl'))
{
$filename = './templates/' . $template . '.tpl';
$templatefile = addcslashes(file_get_contents($filename), '"\\');
// loop through template more than once in case we have an "if"-statement in another one
while(preg_match('/<if[ \t]*(.*)>(.*)(<\/if>|<else>(.*)<\/if>)/Uis', $templatefile))
{
$templatefile = preg_replace('/<if[ \t]*(.*)>(.*)(<\/if>|<else>(.*)<\/if>)/Uis', '".( ($1) ? ("$2") : ("$4") )."', $templatefile);
}
}
else else
{ {
$templatefile = 'TEMPLATE NOT FOUND: ' . $filename; $templatefile = 'TEMPLATE NOT FOUND: ' . $filename;