MDL-55597 tool_templatelibrary: Re-inforce logic to skip theme templates

This commit is contained in:
Frédéric Massart
2016-10-07 10:44:40 +02:00
parent 7223cd2518
commit 6da1369913
+10 -6
View File
@@ -117,17 +117,21 @@ class api {
// Get the list of possible template directories.
$dirs = mustache_template_finder::get_template_directories_for_component($component);
$filename = false;
$themedir = core_component::get_plugin_types()['theme'];
foreach ($dirs as $dir) {
// Skip theme dirs - we only want the original plugin/core template.
if (strpos($dir, "/theme/") === false) {
$candidate = $dir . $template . '.mustache';
if (file_exists($candidate)) {
$filename = $candidate;
break;
}
if (strpos($dir, $themedir) === 0) {
continue;
}
$candidate = $dir . $template . '.mustache';
if (file_exists($candidate)) {
$filename = $candidate;
break;
}
}
if ($filename === false) {
throw new moodle_exception('filenotfound', 'error');
}