1 <div id="reply-<% reply.id|html>" class="reply<%if !reply.sone.local><%if reply.new> new<%/if><%/if>">
2 <a name="reply-<% reply.id|html>"></a>
3 <div class="reply-time hidden"><% reply.time|html></div>
4 <div class="reply-author hidden"><% reply.sone.id|html></div>
5 <div class="reply-author-local hidden"><% reply.sone.local></div>
6 <%include include/soneMenu.html class=="sone-reply-menu" sone=reply.sone>
7 <div class="avatar reply-avatar">
8 <%ifnull !reply.sone.profile.avatar>
9 <% reply.sone.profile.avatar|image-link max-width==36 max-height==36 mode==enlarge title=="Avatar Image">
11 <img src="/WebOfTrust/GetIdenticon?identity=<% reply.sone.id|html>&width=72&height=72" width="36" height="36" alt="Avatar Image" />
14 <div class="inner-part">
16 <div class="author profile-link"><a href="viewSone.html?sone=<% reply.sone.id|html>"><% reply.sone.niceName|html></a></div>
17 <% reply.text|html|store key==originalText text==true>
18 <% reply.text|parse sone=reply.sone|store key==parsedText>
19 <% parsedText|render|store key==renderedText text==true>
20 <% parsedText|shorten length=preferences.charactersPerPost cut-off-length=preferences.postCutOffLength|render|store key==shortText text==true>
21 <div class="reply-text raw-text<%if !raw> hidden<%/if>"><% originalText></div>
22 <div class="reply-text text<%if raw> hidden<%/if><%if !shortText|match key=renderedText> hidden<%/if>"><% renderedText></div>
23 <div class="reply-text short-text<%if raw> hidden<%/if><%if shortText|match key=renderedText> hidden<%/if>"><% shortText></div>
24 <%if !shortText|match value=renderedText><%if !raw><a class="expand-reply-text" href="viewPost.html?post=<% reply.postId|html>&raw=true"><%= View.Post.ShowMore|l10n|html></a><%/if><%/if>
25 <%if !shortText|match value=renderedText><%if !raw><a class="shrink-reply-text hidden"><%= View.Post.ShowLess|l10n|html></a><%/if><%/if>
26 <% parsedText|linked-elements sone=reply.sone|store key==linkedElements>
27 <% foreach linkedElements linkedElement>
28 <%if !linkedElement.failed>
30 <div class="linked-elements">
32 <% linkedElement|render-linked-element>
39 <div class="reply-status-line status-line">
40 <div class="time"><% reply.time|date format=="MMM d, yyyy, HH:mm:ss"></div>
41 <span class='separator'>·</span>
42 <div class="permalink permalink-author"><a href="sone://<%reply.sone.id|html>">[<%= View.Post.PermalinkAuthor|l10n|html>]</a></div>
43 <%if ! originalText|match value=renderedText>
44 <span class='separator'>·</span>
45 <div class="show-reply-source"><a href="viewPost.html?post=<% post.id|html>&raw=<%if raw>false<%else>true<%/if>"><%= View.Post.ShowSource|l10n|html></a></div>
47 <div class="likes<%if reply.likes.size|match value==0> hidden<%/if>">
48 <span class='separator'>·</span>
49 <span title="<% reply.likes.soneNames|html>">↑<span class="like-count"><% reply.likes.size></span></span>
51 <%ifnull ! currentSone>
52 <span class='separator'>·</span>
53 <form class="like like-reply<%if reply.liked> hidden<%/if>" action="like.html" method="post">
54 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
55 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
56 <input type="hidden" name="type" value="reply" />
57 <input type="hidden" name="reply" value="<% reply.id|html>" />
58 <button type="submit" value="1"><%= View.Post.LikeLink|l10n|html></button>
60 <form class="unlike unlike-reply<%if ! reply.liked> hidden<%/if>" action="unlike.html" method="post">
61 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
62 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
63 <input type="hidden" name="type" value="reply" />
64 <input type="hidden" name="reply" value="<% reply.id|html>" />
65 <button type="submit" value="1"><%= View.Post.UnlikeLink|l10n|html></button>
67 <%if !reply.sone.current>
68 <%ifnull !reply.sone.trust>
69 <span class='separator'>·</span>
70 <form class="trust reply-trust<%if reply.sone.trust.assigned> hidden<%/if>" action="trust.html" method="post">
71 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
72 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
73 <input type="hidden" name="sone" value="<% reply.sone.id|html>" />
74 <button type="submit" title="<%= View.Trust.Tooltip.Trust|l10n|html>">✓</button>
76 <form class="distrust reply-distrust<%if reply.sone.trust.assigned> hidden<%/if>" action="distrust.html" method="post">
77 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
78 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
79 <input type="hidden" name="sone" value="<% reply.sone.id|html>" />
80 <button type="submit" title="<%= View.Trust.Tooltip.Distrust|l10n|html>">✗</button>
82 <form class="untrust reply-untrust<%if !reply.sone.trust.assigned> hidden<%/if>" action="untrust.html" method="post">
83 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
84 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
85 <input type="hidden" name="sone" value="<% reply.sone.id|html>" />
86 <button type="submit" title="<%= View.Trust.Tooltip.Untrust|l10n|html>">↶</button>
91 <%if reply.sone.local>
92 <span class='separator'>·</span>
93 <form class="delete delete-reply" action="deleteReply.html" method="post">
94 <input type="hidden" name="formPassword" value="<% formPassword|html>" />
95 <input type="hidden" name="returnPage" value="<% request.uri|html>" />
96 <input type="hidden" name="reply" value="<% reply.id|html>" />
97 <button type="submit"><%= View.Post.Reply.DeleteLink|l10n|html></button>