59 lines
2.2 KiB
Plaintext
59 lines
2.2 KiB
Plaintext
<%
|
|
local is_locked = ntob(thread.is_locked)
|
|
local is_stickied = ntob(thread.is_stickied)
|
|
local can_post = (not is_locked and not me:is_guest()) or me:is_mod()
|
|
local can_lock = me.id == thread.user_id or me:is_mod()
|
|
%>
|
|
<% if infobox then %>
|
|
<% render("views.common.infobox", infobox) %>
|
|
<% end %>
|
|
<main>
|
|
<nav class="darkbg">
|
|
<h1 class="thread-title"><%= thread.title %></h1>
|
|
<span>Posted in <a href="<%= url_for("topic", {slug = topic.slug}) %>"><%= topic.name %></a>
|
|
<% if is_stickied then %> • <i>stickied, so it's probably important</i>
|
|
<% end %>
|
|
</span>
|
|
<% if can_lock then %>
|
|
<div>
|
|
<form class="modform" action="<%= url_for("thread_lock", {slug = thread.slug}) %>" method="post">
|
|
<input type=hidden value="<%= not is_locked %>" name="target_op">
|
|
<input class="warn" type="submit" value="<%= is_locked and "Unlock thread" or "Lock thread" %>">
|
|
</form>
|
|
<% if me:is_mod() then %>
|
|
<form class="modform" action="<%= url_for("thread_sticky", {slug = thread.slug}) %>" method="post">
|
|
<input type=hidden value="<%= not is_stickied %>" name="target_op">
|
|
<input class="warn" type="submit" value="<%= is_stickied and "Unsticky thread" or "Sticky thread" %>">
|
|
</form>
|
|
<% end %>
|
|
</div>
|
|
<% end %>
|
|
</nav>
|
|
<% for i, post in ipairs(posts) do %>
|
|
<% render("views.threads.post", {post = post, render_sig = true, is_latest = i == #posts}) %>
|
|
<% end %>
|
|
</main>
|
|
|
|
<nav id="bottomnav">
|
|
<% render("views.common.pagination", {page_count = pages, current_page = page}) %>
|
|
</nav>
|
|
|
|
<% if is_locked then -%>
|
|
<% render("views.common.infobox", {kind = constants.InfoboxKind.LOCK, msg = "This thread is locked."}) %>
|
|
<% end -%>
|
|
<% if can_post then %>
|
|
<h1>Respond to "<%= thread.title %>"</h1>
|
|
<% render("views.common.babycode-editor", {ta_name="post_content"}) %>
|
|
<% end %>
|
|
<dialog id="delete-dialog">
|
|
<div class=delete-dialog-inner>
|
|
Are you sure you want to delete the highlighted post?
|
|
<span>
|
|
<button id=post-delete-dialog-close>Cancel</button>
|
|
<button class="critical" form=post-delete-form>Delete</button>
|
|
<form id="post-delete-form" method="post"></form>
|
|
</span>
|
|
</div>
|
|
</dialog>
|
|
<script src="/static/js/thread.js"></script>
|