comparison blog/src/index.html.luan @ 599:50540f0813e2

support default search fields in lucene; add search to blog;
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 16 Sep 2015 20:55:49 -0600
parents 6bb0c83116e9
children ca169567ce07
comparison
equal deleted inserted replaced
598:e930f92d0f61 599:50540f0813e2
6 local Http = require "luan:http/Http" 6 local Http = require "luan:http/Http"
7 local Post = require "site:/lib/Post" 7 local Post = require "site:/lib/Post"
8 8
9 9
10 return function() 10 return function()
11 local query = Http.request.parameter.query
12
11 Io.stdout = Http.response.text_writer() 13 Io.stdout = Http.response.text_writer()
12 %> 14 %>
13 <html> 15 <html>
14 <head> 16 <head>
15 <style> 17 <style>
16 @import "/site.css"; 18 @import "/site.css";
17 </style> 19 </style>
18 </head> 20 </head>
19 <body> 21 <body>
20 <h1>Demo Blog App</h1> 22 <h1><a href="/">Demo Blog App</a></h1>
23
24 <form>
25 <input name=query type=text value="<%= query or "" %>">
26 <input type=submit value=Search>
27 </form>
21 28
22 <div><a href="new">Make New Post</a></div> 29 <div><a href="new">Make New Post</a></div>
23 30
24 <% 31 <%
25 for _, post in ipairs(Post.get_all()) do 32 local posts = query and Post.search(query) or Post.get_all()
33 for _, post in ipairs(posts) do
26 %> 34 %>
27 <a name="p<%= post.id %>"> 35 <a name="p<%= post.id %>">
28 <h2><%= post.subject %></h2> 36 <h2><%= post.subject %></h2>
29 <p><%= Time.format(post.date) %> - <a href="edit?post=<%= post.id %>">Edit</a></p> 37 <p><%= Time.format(post.date) %> - <a href="edit?post=<%= post.id %>">Edit</a></p>
30 <pre><%= post.content %></pre> 38 <pre><%= post.content %></pre>