Wiki source code of TopicClassSheet
Last modified by Administrator on 2022/05/03 16:48
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{velocity}} | ||
2 | ## | ||
3 | ## Disable footer | ||
4 | ## | ||
5 | #set ($docextras = []) | ||
6 | ## | ||
7 | ## Include style | ||
8 | ## | ||
9 | $xwiki.ssx.use("BBCode.Skin") | ||
10 | $xwiki.jsx.use("BBCode.Skin", {'defer' : false}) | ||
11 | #if($request.parent && $request.parent!="") | ||
12 | #set($parent=$request.parent) | ||
13 | #else | ||
14 | #set($parent=$doc.parent) | ||
15 | #end | ||
16 | {{html}} | ||
17 | <input type="hidden" name="parent" value="$parent" /> | ||
18 | #set($class = $doc.getObject("BBCode.TopicClass").xWikiClass) | ||
19 | <input type="hidden" name="title" value="" /> | ||
20 | <input type="hidden" name="BBCode.PostClass_0_postauthor" value="$context.user" /> | ||
21 | <input type="hidden" name="BBCode.PostClass_0_postdate" value="$datetool.get('yyyy/MM/dd HH:mm')"/> | ||
22 | <div class="bbbigbox"> | ||
23 | {{/html}} | ||
24 | |||
25 | #if ($context.action == 'inline') | ||
26 | ## | ||
27 | ## Edit topic | ||
28 | ## | ||
29 | $msg.bb_entertopictitle | ||
30 | |||
31 | $doc.display('topictitle') | ||
32 | |||
33 | |||
34 | $msg.get("bb_entertopiccontent") | ||
35 | |||
36 | $doc.display("postcontent") | ||
37 | #set($newtopictitle = $request.nicetopictitle) | ||
38 | #if($newtopictitle) | ||
39 | #set($newtopictitle = $newtopictitle.replaceAll('"',"'")) | ||
40 | |||
41 | {{html wiki=false}} | ||
42 | <script type="text/javascript"> | ||
43 | var nicetopictitle = "${newtopictitle}"; | ||
44 | document.forms.inline["BBCode.TopicClass_0_topictitle"].value = nicetopictitle; | ||
45 | document.forms.inline["title"].value = nicetopictitle; | ||
46 | </script> | ||
47 | {{/html}} | ||
48 | |||
49 | #end | ||
50 | #else | ||
51 | {{html clean="false"}} | ||
52 | ## | ||
53 | ## Topic title | ||
54 | ## | ||
55 | #if("$parent" != "") | ||
56 | #set($parentDoc = $xwiki.getDocument("$parent")) | ||
57 | <span class="topic-category"> | ||
58 | #if("$parentDoc.getDisplayTitle()" != "") | ||
59 | $msg.get("bb_topiccategory") <a href="$parentDoc.getURL('view')">$parentDoc.getDisplayTitle()</a> | ||
60 | #else | ||
61 | $msg.get("bb_topiccategory") <a href="$parentDoc.getURL('view')">$parentDoc.name</a> | ||
62 | #end | ||
63 | </span> | ||
64 | #end | ||
65 | |||
66 | <h1><span>#if ($doc.getValue('topictitle', $doc.getObject('BBCode.TopicClass')) != "") $doc.display('topictitle') #else $doc.name #end</span></h1> | ||
67 | #set($postclass = $doc.getObjects('BBCode.PostClass')) | ||
68 | <span class="bbdatatext">$postclass.size() $msg.bb_messagesintopic </span> | ||
69 | <table class="topictable"> | ||
70 | ## | ||
71 | ## Loop over posts | ||
72 | ## | ||
73 | #foreach($item in $postclass) | ||
74 | #set ($postauthor = $xwiki.getUserName($doc.display('postauthor', $item), true)) | ||
75 | <tr class="#if($postindex % 2 == 0) evenpost #end"> | ||
76 | <td id="posttd"> | ||
77 | #set ($localpostauthor = $doc.display('postauthor', $item)) | ||
78 | #set ($index = $localpostauthor.indexOf(":")) | ||
79 | #set ($index = $index + 1) | ||
80 | #set ($localpostauthor = $localpostauthor.substring($index)) | ||
81 | <div class="postauthor">$postauthor</div> | ||
82 | <div class="avatar"> | ||
83 | <a href="$xwiki.getURL($localpostauthor)">#useravatar($localpostauthor)</a><br /> | ||
84 | </div> | ||
85 | </td> | ||
86 | <td id="posttd"> <div id="message$item.number"> | ||
87 | <textarea id="quotecontent$item.number" style="display:none">$item.getProperty("postcontent").getValue()</textarea> | ||
88 | <script type="text/javascript"> | ||
89 | var quote$item.number = XWiki.bulletinboard.addQuote($("quotecontent$item.number").value, "$xwiki.getLocalUserName($doc.display('postauthor', $item), false)", "$doc.display('postdate', $item)"); | ||
90 | </script> | ||
91 | <span class="bbdatatext">$msg.bb_postedon $doc.display('postdate', $item) - <a name=$velocityCount href="#$velocityCount"><img src="$xwiki.getSkinFile("icons/silk/link_go.gif")" title="Direct link to post #$velocityCount" /></a> - <a href="#" onclick="XWiki.bulletinboard.insertInReply(XWiki.bulletinboard.getQuote(quote$item.number)); XWiki.bulletinboard.jumpToReply(); return false;"><img src="$xwiki.getSkinFile("icons/silk/comment_add.gif")" title="Quote this message" /></a> #if(($context.user == $doc.display('postauthor', $item) || $xwiki.hasAdminRights() == 'true') && $velocityCount > 1) - <a href="$doc.getURL("objectremove", "classname=BBCode.PostClass&classid=${item.number}&form_token=$!{services.csrf.getToken()}&xredirect=${request.getRequestURL()}")"><img src="$xwiki.getSkinFile("icons/silk/bin.gif")" title="$msg.bb_deletethismessage" /></a> #end </span> | ||
92 | <div class="postcontent"> | ||
93 | {{/html}} | ||
94 | |||
95 | $doc.display('postcontent', $item) | ||
96 | |||
97 | {{html clean="false"}} | ||
98 | </div> | ||
99 | </div> | ||
100 | </td> | ||
101 | </tr> | ||
102 | #end | ||
103 | <tr> | ||
104 | <td> </td> | ||
105 | <td> | ||
106 | #if ($context.user == 'XWiki.XWikiGuest') | ||
107 | <span class="bbdatatext"> $msg.bb_needloginmessage </span> | ||
108 | #else | ||
109 | #set ($lastpostid = $postclass.size() + 1) | ||
110 | <a id="reply"></a> | ||
111 | <span class="bbsmalltitle"> <a name=postmessage href="#postmessage"> $msg.bb_postmessage </a> </span> | ||
112 | <form method="post" action="$doc.getURL("objectadd")" class="postreply"> | ||
113 | ## CSRF prevention | ||
114 | <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> | ||
115 | <input type="hidden" name="xredirect" value="$doc.getURL()#$lastpostid" /> | ||
116 | <input type="hidden" name="classname" value="BBCode.PostClass" /> | ||
117 | <input type="hidden" name="BBCode.PostClass_postauthor" value="$context.user" /> | ||
118 | <textarea rows="10" cols="65" id="BBCode.PostClass_postcontent" name="BBCode.PostClass_postcontent" /></textarea><br /> | ||
119 | <span class="buttonwrapper"><input class="button" id="BBCode.PostClass_postbutton" type="submit" value="Post!" /></span> | ||
120 | </form> | ||
121 | #end | ||
122 | </td> | ||
123 | </tr> | ||
124 | </table> | ||
125 | {{/html}} | ||
126 | #end | ||
127 | |||
128 | {{html}} | ||
129 | </div> | ||
130 | {{/html}} | ||
131 | {{/velocity}} |