From f19535c5f88d6f1639ccccbfd8b2c964f227eb76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Pe=CC=81rez=20Crespo?= <jaime.perez@uninett.no> Date: Mon, 26 Aug 2019 10:41:49 +0200 Subject: [PATCH] Make sure we can load templates regardless of the extension This ensures that we don't break any existing modules by renaming a template from ".php" to ".tpl.php". --- lib/SimpleSAML/XHTML/Template.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/lib/SimpleSAML/XHTML/Template.php b/lib/SimpleSAML/XHTML/Template.php index 3df5866a1..cf6b270e6 100644 --- a/lib/SimpleSAML/XHTML/Template.php +++ b/lib/SimpleSAML/XHTML/Template.php @@ -568,6 +568,7 @@ class Template extends Response private function findTemplatePath($template, $throw_exception = true) { assert(is_string($template)); + $extensions = ['.tpl.php', '.php']; list($templateModule, $templateName) = $this->findModuleAndTemplateName($template); $templateModule = ($templateModule !== null) ? $templateModule : 'default'; @@ -587,8 +588,11 @@ class Template extends Response $filename = $base.$templateName; } - if (file_exists($filename)) { - return $filename; + $filename = $this->normalizeTemplateName($filename); + foreach ($extensions as $extension) { + if (file_exists($filename.$extension)) { + return $filename.$extension; + } } // not found in current theme @@ -607,8 +611,11 @@ class Template extends Response $filename = $base.'/'.$templateName; } - if (file_exists($filename)) { - return $filename; + $filename = $this->normalizeTemplateName($filename); + foreach ($extensions as $extension) { + if (file_exists($filename.$extension)) { + return $filename.$extension; + } } // not found in default template -- GitLab