Thu, 22 Jun 2023 21:30:11 +0100
render: Add some new render functions for templates
src/render.lua | file | annotate | diff | comparison | revisions |
--- a/src/render.lua Thu Jun 22 21:29:31 2023 +0100 +++ b/src/render.lua Thu Jun 22 21:30:11 2023 +0100 @@ -1,18 +1,21 @@ local html = require "util.html"; local json = require "util.json"; - -html.basename = function (str) - return str:match("[^/]+$"); -end +local http = require "util.http"; -html.date = function (datetime) - return datetime:sub(1,10); -end +local render_funcs = setmetatable({ + basename = function (str) + return str:match("[^/]+$"); + end; + date = function (datetime) + return datetime:sub(1,10); + end; + json = json.encode; + urlencode = http.urlencode; +}, { __index = html }); -html.json = json.encode; - -local render = require"util.interpolation".new("%b{}", html.escape, html); +local render = require"util.interpolation".new("%b{}", html.escape, render_funcs); return { render = render; + funcs = render_funcs; };