homepage.js/view/guestbook.pug

114 lines
4.9 KiB
Plaintext
Raw Normal View History

2023-02-19 06:30:02 +01:00
extends layout/main.pug
block root
- var title = 'Guestbook'
2023-02-20 03:43:53 +01:00
-
function TimeSince(date) {
var seconds = Math.floor((new Date() - date) / 1000);
var interval = seconds / 31536000;
if (interval > 1) {
return Math.floor(interval) + " years";
}
interval = seconds / 2592000;
if (interval > 1) {
return Math.floor(interval) + " months";
}
interval = seconds / 86400;
if (interval > 1) {
return Math.floor(interval) + " days";
}
interval = seconds / 3600;
if (interval > 1) {
return Math.floor(interval) + " hours";
}
interval = seconds / 60;
if (interval > 1) {
return Math.floor(interval) + " minutes";
}
return Math.floor(seconds) + " seconds";
}
2023-02-19 07:05:36 +01:00
block head
<link rel='stylesheet' href='/static/ui/send_button.css'>
2023-02-19 16:12:09 +01:00
<link rel='stylesheet' href='/static/ui/gb_ui.css'>
2023-02-19 06:30:02 +01:00
block content
h1 Guestbook
p.
Leave a message if you want.
hr
table
tr
td
h4 Message form
form(method='post' action='/guestbook/submit')
table
tr
td Your name:
td
2023-02-20 03:43:53 +01:00
input(type='text' name='name' value='' style='width:50%')
span(style='font-size:9pt;color:red;user-select:none' title='required') *
2023-02-19 06:30:02 +01:00
tr
td Your email:
td
2023-02-20 03:43:53 +01:00
input(type='email' name='email' value='')
2023-02-19 06:30:02 +01:00
tr
td Hide your email?
td
input(type='checkbox' name='hidemail')
2023-02-20 03:43:53 +01:00
// span(style='font-size:9pt;color:red;user-select:none' title='required') *
p(style='margin:6px 0')
| Your message (512 chars max):
span(style='font-size:9pt;color:red;user-select:none' title='required') *
2023-02-19 07:05:36 +01:00
textarea(name='message' style='width:100%;height:150px;max-width:600px;max-height:300px')
p
input(type='submit' class='send_button_1')
2023-02-20 03:43:53 +01:00
if (errors)
br
span(style='font-weight:bold;color:darkred;font-size:9pt') !{errors}
2023-02-19 06:30:02 +01:00
td(style='padding:0 16px;margin:0')
h5 Guidelines
ul
li Follow the DBAA policy.
li
| Do not post spam ads, keep it for humans.
ul
2023-02-19 07:05:36 +01:00
li There is no captcha for a reason. I'd like to keep it this way for as long as possible, so I humbly ask not to ruin it.
2023-02-19 06:30:02 +01:00
span(style='font-size:10pt;color:darkred;font-weight:bold').
Warning: Your ip (#{ip}) will be logged and displayed for everyone.<br/>
2023-02-19 08:07:44 +01:00
You can delete your own message if it was sent from the same ip for 24 hours after it was sent.
2023-02-20 03:43:53 +01:00
p
span(style='font-size:9pt;color:red;user-select:none' title='required') *
| - required
2023-02-19 08:07:44 +01:00
hr
if (!data)
p No records available.
else
2023-02-20 03:43:53 +01:00
table(class='gb_entries')
2023-02-19 08:07:44 +01:00
each entry, id in data
2023-02-20 03:43:53 +01:00
tr(id='gb_entry_' + id)
2023-02-19 08:07:44 +01:00
td(width='20%' class='gb_sender_data')
2023-02-20 03:43:53 +01:00
p(style='font-size:9pt')
| ID:
a(href='gb_entry_' + entry.id) ##{entry.id}
br
| Sender: #{entry.name}
br
if (!entry.hidemail)
| Email: #{entry.email}
else
| Email:
span(class='gb_hidden_mail' style='width:' + (10 * entry.email.length) + 'px')
br
| IP: #{entry.ip}
br
| Date: #{TimeSince(new Date(entry.time * 1000))} ago
if (ip == entry.ip && Math.floor(Date.now() / 1000) - entry.time <= (60 * 60 * 24))
p(style='margin:0;padding:0;padding-bottom:12px')
a(href='/guestbook/del/' + id class='gb_record_del_btn' title='you can delete your own messages') delete
2023-02-19 16:12:09 +01:00
td(width='80%' class='gb_entry_text')
p(class='gb_entry_text_title') Message:
2023-02-19 08:07:44 +01:00
p(style='margin:0;padding:0;font-size:10pt').
2023-02-20 03:43:53 +01:00
#{entry.text}