62 lines
2.5 KiB
Plaintext
62 lines
2.5 KiB
Plaintext
|
extends base.pug
|
||
|
|
||
|
mixin entryLine(line)
|
||
|
if (line[0] == ">")
|
||
|
p.quote= line
|
||
|
else
|
||
|
p= line
|
||
|
|
||
|
block meta_description
|
||
|
meta(name='description' content="This is my guestbook. Welcome.")
|
||
|
|
||
|
block append head
|
||
|
link(href='/assets/css/guestbook.css' rel='stylesheet')
|
||
|
script(src='/assets/js/captcha_refresh.js' defer='')
|
||
|
|
||
|
block nav
|
||
|
a(href='/') Home
|
||
|
a(href='/stuff') Stuff
|
||
|
a(href='/mindflow') Mindflow
|
||
|
a(href='/about') About
|
||
|
h1 Guestbook
|
||
|
|
||
|
block content
|
||
|
:go:func About(title, captcha_id string, posts []guestbook.Posts)
|
||
|
form#new-post(action='/guestbook', method='POST')
|
||
|
input(type='text' maxlength='80' placeholder='Name (Anonymous if left blank)' name='name')
|
||
|
input(type='text' maxlength='255' placeholder='Website (optional)' name='website')
|
||
|
textarea(maxlength='4096' placeholder='Your message' name='message' required)
|
||
|
span.checkboxes
|
||
|
input(type='checkbox' id='hide-website' name='hide_website' checked)
|
||
|
label(for='hide-website') Hide website #[small (only I can see if set)]
|
||
|
span.captcha
|
||
|
input(type='hidden' value=captcha_id name='captcha_id')
|
||
|
img(src='/api/captcha/'+captcha_id+'/image', alt="CAPTCHA" width='160' height='40')
|
||
|
input(type='text' maxlength='6' placeholder='CAPTCHA' name='captcha_answer' required)
|
||
|
small Valid for #[b 10] minutes.
|
||
|
input(type='submit' value='Send a post')
|
||
|
section#posts
|
||
|
if (posts)
|
||
|
each post in posts
|
||
|
article
|
||
|
header
|
||
|
| Post ##{post.ID} by #[span.highlighted= post.Name] #{post.Website} on #[time(datetime=post.Created)= date_(post.Created, tz)]
|
||
|
each line in post.message.split("\n")
|
||
|
+entryLine(line)
|
||
|
if post.feedback
|
||
|
.reply
|
||
|
header
|
||
|
| Reply by #[span.highlighted #{owner}] on #[time(datetime=post.feedback_created)= date_(post.feedback_created, tz)]
|
||
|
each line in post.feedback.split("\n")
|
||
|
+entryLine(line)
|
||
|
else
|
||
|
if (posts === null)
|
||
|
p.center Cannot establish database connection.
|
||
|
else
|
||
|
p.center No posts.
|
||
|
if pages_count > 1
|
||
|
section#pagination
|
||
|
- let n = 1;
|
||
|
while n <= pages_count
|
||
|
a(href='/guestbook?p='+n)= n++
|