src/render.lua

Thu, 22 Jun 2023 21:31:56 +0100

author
Matthew Wild <mwild1@gmail.com>
date
Thu, 22 Jun 2023 21:31:56 +0100
changeset 18
b5c4b245e24c
parent 15
3fe9cef6a187
permissions
-rw-r--r--

http: Add some helpful comments regarding auth/CSRF

0
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 local html = require "util.html";
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2 local json = require "util.json";
15
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
3 local http = require "util.http";
0
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4
15
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
5 local render_funcs = setmetatable({
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
6 basename = function (str)
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
7 return str:match("[^/]+$");
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
8 end;
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
9 date = function (datetime)
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
10 return datetime:sub(1,10);
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
11 end;
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
12 json = json.encode;
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
13 urlencode = http.urlencode;
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
14 }, { __index = html });
0
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15
15
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
16 local render = require"util.interpolation".new("%b{}", html.escape, render_funcs);
0
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18 return {
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19 render = render;
15
3fe9cef6a187 render: Add some new render functions for templates
Matthew Wild <mwild1@gmail.com>
parents: 0
diff changeset
20 funcs = render_funcs;
0
6279a7d40ae7 Initial commit
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21 };

mercurial