luci-base: fix rendering ucode templates from template
target
A previous commit inadvertently broke support for rendering ucode templates
from the `template` dispatcher target.
Fixes: #6111
Fixes: fa17c1573f
("luci-base, luci-lua-runtime: adjust Lua template environment")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
parent
7c3705bb0f
commit
a5d21dadbd
2 changed files with 10 additions and 3 deletions
|
@ -774,9 +774,12 @@ function render_action(fn) {
|
|||
function run_action(request_path, lang, tree, resolved, action) {
|
||||
switch (action?.type) {
|
||||
case 'template':
|
||||
render_action(() => {
|
||||
runtime.call('luci.dispatcher', 'render_lua_template', action.path);
|
||||
});
|
||||
if (runtime.is_ucode_template(action.path))
|
||||
runtime.render_ucode(action.path);
|
||||
else
|
||||
render_action(() => {
|
||||
runtime.call('luci.dispatcher', 'render_lua_template', action.path);
|
||||
});
|
||||
break;
|
||||
|
||||
case 'view':
|
||||
|
|
|
@ -61,6 +61,10 @@ const Class = {
|
|||
return this.L;
|
||||
},
|
||||
|
||||
is_ucode_template: function(path) {
|
||||
return access(`${template_directory}/${path}.ut`);
|
||||
},
|
||||
|
||||
render_ucode: function(path, scope) {
|
||||
let tmplfunc = loadfile(path, { raw_mode: false });
|
||||
|
||||
|
|
Loading…
Reference in a new issue