${thread_row(i, thread)}
Topics Replies Views Last Post Subscribed
${forum_row(i, forum)}
ForumTopicsPostsLast PostSubscribed
[icon] $forum.name($forum.shortname)
${Markup(g.markdown.convert(forum.description))} Subforums: , $sf.name ${forum.num_topics} ${forum.num_posts} ${post_summary(forum.last_post)} ${checkbox('forum-%s.subscribed' % i, None, forum.subscription())}
[X]
${Markup(g.markdown.convert(comment.text))} ${comment.posted_ago}
${display_comment(cc)}
${thread.subject or '(no subject)'} $thread.num_replies $thread.num_views ${post_summary(thread.last_post)} ${checkbox('thread-%s.subscribed' % i, None, thread.subscription())} by ${post.author().display_name} ${h.ago(post.timestamp)}

Page ${1 + cur_page} of ${1 + num_pages}

<< < > >>
${post.subject or '(no subject)'} by ${post.author().display_name} ${h.ago(post.timestamp)}
Permalink
${submit_button('Flag this post as inappropriate or spam')}
Moderate
Promote post to its own thread ${text_field('subject', 'Thread title', post.subject)} ${submit_button('Promote to thread')}
${submit_button('Spam Post', 'spam')} ${submit_button('Delete Post', 'delete')}

${Markup(g.markdown.convert(post.text))}
Edit Post
${text_field('subject', 'Subject', post.subject)} ${text_area('text', 'Content', post.text)} ${submit_button('Update post')}
Reply to ${post.author().display_name}
${text_field('subject', 'Subject', post.reply_subject())} ${text_area('text', 'Content', '')} ${submit_button('Send Reply')}
New Attachment
${file_field('file_info', 'File to upload')} ${submit_button('Attach file')}
${att.metadata.filename} ($att.length bytes)
View $att.metadata.filename