I noticed the following issues while working on
- The output/external.php logic partially duplicates the code from renderer_base::get_mustache()
- output/external.php is not using mustache_filesystem_loader()
- output/external.php does not support subtypes
- I am not sure how subtypes are supposed to work, but I don't think their directory will be correct in renderer_base::get_mustache() as core_component::get_component_directory('mod_assign_subtype') is an invalid component.
- Add tests.
We should have a standardised way to get mustache to resolve the templates for us. Whether from outputrenderers, or from Ajax, or anywhere else.