0
|
1 local Luan = require "luan:Luan.luan"
|
|
2 local error = Luan.error
|
1
|
3 local ipairs = Luan.ipairs or error()
|
0
|
4
|
|
5
|
|
6 local Shared = {}
|
|
7
|
|
8 function Shared.head()
|
|
9 %>
|
|
10 <meta name="viewport" content="width=device-width, initial-scale=1">
|
|
11 <style>
|
|
12 @import "/site.css";
|
|
13 </style>
|
|
14 <%
|
|
15 end
|
|
16
|
1
|
17 local function header(crumbs)
|
0
|
18 %>
|
|
19 <div header>
|
|
20 <a href="/">Reactionary Software</a>
|
1
|
21 <% for _, crumb in ipairs(crumbs or {}) do %>
|
|
22 / <%=crumb%>
|
|
23 <% end %>
|
0
|
24 </div>
|
|
25 <%
|
|
26 end
|
1
|
27 Shared.header = header
|
|
28
|
|
29 function Shared.existing_header()
|
|
30 header{[[<a href="/existing.html">Existing</a>]]}
|
|
31 end
|
|
32
|
|
33 function Shared.needed_header()
|
|
34 header{[[<a href="/needed.html">Needed</a>]]}
|
|
35 end
|
0
|
36
|
|
37 return Shared
|