Исходный код вики BBClassSheet

Редактировал(а) Dmitry Fedin 2012/03/27 11:26

Последние авторы
1 {{velocity filter="indent"}}
2 #set($ok = $xwiki.ssx.use("BBCode.Skin"))
3 #set ($docextras = [])
4 #set($parent=$doc.getFullName())
5 #set($class = $doc.getObject("BBCode.BBClass").xWikiClass)
6 {{html clean="true" wiki="false"}}
7
8 <input type="hidden" name="parent" value="$parent" />
9 <input type="hidden" name="title" value="" />
10 <div class="bbbigbox">
11 #if($context.action == 'inline')
12 $msg.get("bb_entertitlebb")<br />
13 <input type="text" value="$doc.getValue('bbtitle', $doc.getObject('BBCode.BBClass'))" size="30" name="BBCode.BBClass_0_bbtitle" id="BBCode.BBClass_0_bbtitle"/><br/><br/>
14 $msg.get("bb_enterdescriptionbb")<br />
15 <textarea rows="2" name="BBCode.BBClass_0_bbdescription" id="BBCode.BBClass_0_bbdescription" cols="50">$doc.getValue('bbdescription', $doc.getObject('BBCode.BBClass'))</textarea><br/>
16 #wysiwyg_editProperty($doc "BBCode.BBClass_0_bbdescription" false)
17 ##template('tagedit.vm')
18
19 #set($newbbtitle = $request.nicebbtitle)
20 #if($newbbtitle)
21 #set($newbbtitle = $newbbtitle.replaceAll('"',"'"))
22 <script type="text/javascript">
23 var nicebbtitle = "${newbbtitle}";
24 {{{
25 document.forms.inline["BBCode.BBClass_0_bbtitle"].value = nicebbtitle;
26 document.forms.inline["title"].value = nicebbtitle;
27 }}}
28 </script>
29 #end
30 #if($doc.isNew() == 'false')
31 #set($title = $doc.getValue('bbtitle', $doc.getObject('BBCode.BBClass')))
32 <script type="text/javascript">
33 var nicebbtitle = "${title}";
34 {{{
35 document.forms.inline["title"].value = nicebbtitle;
36 }}}
37 </script>
38 #end
39 #elseif($request.tag && $request.tag != "")
40
41 #set($sql = ", BaseObject as obj, DBStringListProperty as prop where obj.name=doc.fullName and doc.web='$doc.web' and obj.className='XWiki.TagClass' and obj.id=prop.id.id and prop.id.name='tags' and '$request.tag' in elements(prop.list) order by doc.name asc")
42 #set ($list = $xwiki.searchDocuments($sql))
43
44 <span class="bbbigtitle"> $msg.bb_tagresults \"$request.tag\" $msg.bb_tag </span> <span class="bbdatatext"> <a href="$doc.getURL()"> - $msg.bb_backtobb </a> </span>
45
46 <table id="tagslist" class="grid sortable filterable doOddEven bbtable">
47 <tr class="sortHeader">
48 <th>$msg.bb_pagename</th>
49 <th class="selectFilter">$msg.bb_pagetype</th>
50 <th>$msg.bb_editedon</th>
51 <th class="selectFilter">$msg.bb_by</th>
52 </tr>
53 #foreach ($item in $list)
54 #set ($itemdoc = $xwiki.getDocument($item))
55 <tr>
56 <td> <span class="bbtitle"><a href="$itemdoc.getURL('view')">$itemdoc.title></a> </span> </td>
57 <td> #if($itemdoc.getObject('BBCode.BBClass') != "") $msg.bb_bb #elseif($itemdoc.getObject('BBCode.CategoryClass') != "") $msg.bb_category #elseif($itemdoc.getObject('BBCode.TopicClass') != "") $msg.bb_topic #else $msg.bb_other #end </td>
58 <td> $xwiki.formatDate($itemdoc.getDate(), 'dd/MM/yyyy - HH:mm:ss') </td>
59 <td> $xwiki.getUserName($itemdoc.getAuthor(), true) </td>
60 </tr>
61 #end
62 </table>
63 #else
64 ##<span class="bbbigtitle"> #if($doc.getValue('bbtitle', $doc.getObject('BBCode.BBClass')) != "") $doc.display('bbtitle') #else $doc.name #end ##$msg.bb_bb </span> #if($xwiki.hasAdminRights() == 'true') <a class="red" href="$doc.getURL('view', 'deletebb=1')"> &nbsp; ##$msg.bb_deletethisbb</a> #end <br />
65 ##<span class="bbbigtitle">Forum</span>
66 #if($doc.getObject('BBCode.BBClass'))
67 <div class="bulletin-description">
68 $doc.getValue('bbdescription', $doc.getObject('BBCode.BBClass'))
69 </div>
70 #end
71 <br/>
72 #if ($xwiki.hasAdminRights() == 'true')
73 <div id="add-category">
74 <a id="add-link" onclick="$('add-form').toggle();" href="#">$msg.get("bb_addnewcategory")...</a>
75 </div>
76 <div id="add-form" style="display:none">
77 <form action="" id="newdoc" method="post">
78 <input type="hidden" name="template" value="BBCode.CategoryClassTemplate"/>
79 <input type="hidden" name="sheet" value="1"/>
80 <input type="hidden" name="parent" value="${doc.fullName}">
81 <input type="hidden" name="space" value="${doc.space}">
82 <input type="text" onblur="if(this.value=='') this.value='$msg.get('bb_categoryname')'" onfocus="if(this.value=='$msg.get('waterwiki.forum.category')') this.value=''" style="margin: auto;" name="categoryname" value="$msg.get('bb_categoryname')"/>
83 <input type="hidden" name="nicecategoryname" value=""/>
84 <input type="button" value="$msg.bb_addcategory" onclick='this.form.nicecategoryname.value = this.form.categoryname.value; if (updateName(this.form.categoryname)) {this.form.action="../../inline/" + this.form.space.value + "/" + this.form.categoryname.value; this.form.submit(); }'/>
85 </form>
86 </div>
87 #end
88
89 #set ($sql = ", BaseObject as obj where obj.name=doc.fullName and obj.className='BBCode.CategoryClass' and obj.name<>'BBCode.CategoryClassTemplate' and doc.web='$doc.space' order by doc.date desc")
90
91 #set($bbcategories = $xwiki.searchDocuments($sql))
92
93 #if($xwiki.hasAdminRights() == 'true')
94
95 #if($request.deletebb && $!request.deletebb=="1")
96 <div class="deletecategory">
97 <b> $msg.bb_deletebb </b> - <a href="$doc.getURL('view')">$msg.bb_cancelbbdeletion</a> <br /><br/>
98
99 $msg.bb_reallydeletebb <a class="red" href="$doc.getURL('view', 'confirmdeletebb=1')">$msg.bb_deletebbdefinitely</a>
100 <br/>
101 #set ($truc = "where 1=1 and doc.name<>'WebHome' and doc.web='$doc.space' order by doc.date desc")
102 #set($bbpages = $xwiki.searchDocuments($truc))
103
104 $msg.bb_deleteddocs
105 <ul>
106 #if("$doc.getDisplayTitle()" != "" )
107 <li><a href="$doc.getURL('view')">$doc.getDisplayTitle()</a></li>
108 #else
109 <li><a href="$doc.getURL('view')">$doc.name</a></li>
110 #end
111 #foreach($item in $bbpages)
112 #set($itemDoc = $xwiki.getDocument("$item"))
113 #if("$itemDoc.getDisplayTitle()" != "")
114 <li><a href="$itemDoc.getURL('view')">$itemDoc.getDisplayTitle()</a></li>
115 #else
116 <li><a href="$itemDoc.getURL('view')">$itemDoc.name</a></li>
117 #end
118 #end
119 </ul>
120 </div>
121 #end
122
123 #if($request.confirmdeletebb && $request.confirmdeletebb=="1")
124
125 #set ($truc = "where 1=1 and doc.name<>'WebHome' and doc.web='$doc.space' order by doc.date desc")
126 #set($bbpages = $xwiki.searchDocuments($truc))
127
128 #foreach($item in $bbpages)
129 $xwiki.getDocument("$item").delete()
130 #end
131 $xwiki.getDocument($doc.getFullName()).delete()
132 $response.sendRedirect($xwiki.getURL('BBCode.Admin'))
133 #end
134
135 #elseif($request.confirmdeletebb && $request.confirmdeletebb=="1" || $request.deletebb && $request.deletebb=="1")
136 <span class="red"> $msg.bb_adminrightsrequired </span>
137 #end
138
139 #set($tagClass = $xwiki.getClass("XWiki.TagClass"))
140 #set($tagsProp = $tagClass.tags)
141 #set($sep = $tagsProp.getProperty("separator").getValue())
142 #set($cleanbbtags = $doc.tags.replaceAll("[|]", "${sep}"))
143 #set ($tags = $cleanbbtags.split("${sep}"))
144 #set($existingTags = $xwiki.arrayList)
145 #foreach($tag in $tags)
146 #set($discard = $existingTags.add($tag))
147 #end
148
149 <table id="categorylist" class="grid sortable doOddEven bbtable" style="width:100%">
150 <tr class="sortHeader">
151 <th>$msg.bb_category</th>
152 <th>$msg.bb_topics</th>
153 <th>$msg.bb_lastmessageon</th>
154 <th>$msg.bb_inreplyto</th>
155 <th>$msg.bb_by</th>
156 #if($xwiki.hasAdminRights() == 'true') <th>$msg.bb_actions</th> #end
157 </tr>
158 <tr>
159 <td style="text-align: left;" #if($xwiki.hasAdminRights() == 'true') colspan="6" #else colspan="5" #end>
160 <div class="tags">
161 #if ($existingTags.size()>0 && $existingTags.get(0).length()>0)
162 <span class="bbdatatext"> $msg.bb_bbtags
163 #foreach ($tag in $existingTags)
164 <a href='$xwiki.getURL("WebHome")?tag=$tag'> $tag </a>
165 #end
166 </span>
167 #end
168 </div>
169 <span class="bbdatatext"> $msg.bb_currently $bbcategories.size() $msg.bb_categoriessize </span>
170 </td>
171 </tr>
172
173 #foreach ($item in $bbcategories)
174 #set ($categorydoc = $xwiki.getDocument($item))
175 #set($topicsql = ", BaseObject as obj where obj.name=doc.fullName and obj.className='BBCode.TopicClass' and obj.name<>'BBCode.TopicClassTemplate' and doc.parent='$categorydoc.getFullName()' order by doc.date desc")
176 #set($topicsize = $xwiki.searchDocuments($topicsql).size())
177 <tr>
178 <td><span class="bbtitle"> #if ($categorydoc.getValue('categoryname') != "") <a href="$categorydoc.getURL('view')">$categorydoc.display('categoryname')</a> #else <a href="$categorydoc.getURL('view')">$item</a> #end </span> </td>
179 <td> $topicsize </td>
180 #if($topicsize > 0)
181 #set ($topics = $xwiki.searchDocuments($topicsql, 1, 0))
182 #foreach($thing in $topics)
183 #set ($thingdoc = $xwiki.getDocument($thing))
184 <td> $xwiki.formatDate($thingdoc.getDate(), 'dd/MM/yyyy - HH:mm:ss') </td>
185 <td> #if($thingdoc.getValue('topictitle', $thingdoc.getObject('BBCode.TopicClass')) != "") <a href="$thingdoc.getURL('view')">$thingdoc.display('topictitle')</a> #else [$thing] #end </td>
186 <td> $xwiki.getUserName($thingdoc.getAuthor(), true) </td>
187 #end
188 #else
189 <td> $msg.bb_nomessageyet </td>
190 <td> $msg.bb_nomessageyet </td>
191 <td> $msg.bb_nomessageyet </td>
192 #end
193 #if($xwiki.hasAdminRights() == 'true')
194 <td><a class="delete-icon-link" href="$categorydoc.getURL("view","deletecategory=1")"><span class="delete-icon">&nbsp;</span></a><a class="red" href="$categorydoc.getURL("view","deletecategory=1")"><span class="text">$msg.get("bb_deletecategory")</span></a></td>
195 #end
196 </tr>
197 #end
198 </table>
199 </div> ## end bbbigbox
200 #end
201 {{/html}}
202 {{/velocity}}