Wiki source code of Tags
Version 5.1 by Sergiu Dumitriu on 2009/09/09 08:45
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | ## | ||
2 | ## Tag application. | ||
3 | ## | ||
4 | ## - See a Tag Cloud of all tags within the wiki. | ||
5 | ## - See all the pages tagged with the given tag. | ||
6 | ## - Rename a tag. | ||
7 | ## - Delete a tag. | ||
8 | ## | ||
9 | $xwiki.ssx.use('Main.Tags')## | ||
10 | ## | ||
11 | ## Set application variables (action and tag) from URL parameters. | ||
12 | ## | ||
13 | #set($do = "$!{request.get('do')}") | ||
14 | #set($tag = "$!{request.get('tag')}") | ||
15 | ## | ||
16 | ## Macro displayTagAppTitle. Display level1 title of this app. | ||
17 | ## | ||
18 | #macro(displayTagAppTitle $tag $displayButtons) | ||
19 | <h1 class="xapp"> | ||
20 | <span> | ||
21 | <a href="$doc.getURL("view")">$msg.get("xe.tag.tags")</a> | ||
22 | #if($do != '' && $tag != '') | ||
23 | / | ||
24 | <span class="highlight tag"> | ||
25 | <a href="$doc.getURL('view', "do=viewTag&tag=${tag}")">$tag</a> | ||
26 | #if($xwiki.hasAdminRights() && $displayButtons) | ||
27 | <a href="$doc.getURL('view', "do=prepareRename&tag=${tag}")" class="button rename" rel="nofollow">Rename</a> <a href="$doc.getURL('view', "do=prepareDelete&tag=${tag}")" class="button delete" rel="nofollow">Delete</a> | ||
28 | #end | ||
29 | </span> | ||
30 | #end | ||
31 | </span> | ||
32 | </h1> | ||
33 | #end | ||
34 | ## | ||
35 | ## Switch between all possible actions: | ||
36 | ## viewTag, prepareRename, rename, prepareDelete, delete, default (Tag cloud) | ||
37 | ## | ||
38 | #if($do == 'viewTag') | ||
39 | ## | ||
40 | ## View tag | ||
41 | ## | ||
42 | #displayTagAppTitle($tag true) | ||
43 | #if("$!{request.get('renamedTag')}" != '') | ||
44 | #info($msg.get('xe.tag.rename.success', [$request.get('renamedTag')])) | ||
45 | #end | ||
46 | #set ($list = $xwiki.tag.getDocumentsWithTag($tag)) | ||
47 | <div> | ||
48 | <div id="dashboardleft" style="float:left; width: 44.9%;"> | ||
49 | <div style="padding-right:20px;"> | ||
50 | <h3 class="xapp">$msg.get('xe.tag.alldocs', [$tag])</h3> | ||
51 | #displayDocumentList($list true $blacklistedSpaces) | ||
52 | </div> | ||
53 | </div> | ||
54 | <div id="dashboardright" style="float:left; width: 55.1%;"> | ||
55 | <div style="padding-left: 20px;"> | ||
56 | <h3 class="xapp">$msg.get("xe.tag.recentchanges", [$tag])</h3> | ||
57 | #set($rcTag = [$tag]) | ||
58 | #includeInContext('Main.RecentChanges') | ||
59 | </div> | ||
60 | </div> | ||
61 | <div style="clear:both; margin-bottom: 40px;"><!-- --></div> | ||
62 | </div> | ||
63 | #elseif($do == 'prepareRename') | ||
64 | ## | ||
65 | ## Prepare rename tag | ||
66 | ## | ||
67 | #displayTagAppTitle($tag false) | ||
68 | <form id="renameForm" action="$doc.getURL()" method="post"> | ||
69 | <div> | ||
70 | <input name="do" type="hidden" value="renameTag" /> | ||
71 | <input name="tag" type="hidden" value="$tag" /> | ||
72 | $msg.get('xe.tag.rename.renameto', [$tag]) <input type="text" name="renameTo" /> <span class="buttonwrapper"><input type="submit" value="$msg.get('xe.tag.rename')"/></span> | ||
73 | </div> | ||
74 | </form> | ||
75 | #elseif($do == 'renameTag') | ||
76 | ## | ||
77 | ## Rename tag | ||
78 | ## | ||
79 | #set($renameTo = "$!{request.get('renameTo')}") | ||
80 | #set($success = false) | ||
81 | #if ($renameTo != '') | ||
82 | #set($success = $xwiki.tag.renameTag($tag, $renameTo)) | ||
83 | #end | ||
84 | #if ($success == true || $success == 'OK') | ||
85 | $response.sendRedirect($doc.getURL('view', "do=viewTag&tag=${renameTo}&renamedTag=${tag}")) | ||
86 | #else | ||
87 | #error($msg.get('xe.tag.rename.failure', [$tag, $renameTo])) | ||
88 | #end | ||
89 | #elseif($do == 'prepareDelete') | ||
90 | ## | ||
91 | ## Prepare delete tag | ||
92 | ## | ||
93 | #displayTagAppTitle($tag false) | ||
94 | <form id="deleteForm" action="$doc.getURL()" method="post"> | ||
95 | <div> | ||
96 | <input name="do" type="hidden" value="deleteTag" /> | ||
97 | <input name="tag" type="hidden" value="$tag" /> | ||
98 | <span class="buttonwrapper"><input type="submit" value="$msg.get("xe.tag.delete", [$tag])" /></span> | ||
99 | </div> | ||
100 | </form> | ||
101 | #elseif($do == 'deleteTag') | ||
102 | ## | ||
103 | ## Delete tag | ||
104 | ## | ||
105 | #set($success = $xwiki.tag.deleteTag($tag)) | ||
106 | #if ($success == true || $success == 'OK') | ||
107 | $response.sendRedirect($doc.getURL('view', "deletedTag=${tag}")) | ||
108 | #else | ||
109 | #error($msg.get('xe.tag.delete.failure', [$tag])) | ||
110 | #end | ||
111 | #else | ||
112 | ## | ||
113 | ## View all tags (Tag Cloud) | ||
114 | ## | ||
115 | #set($tags = $xwiki.tag.getTags(true)) | ||
116 | #set ($title = 'All Tags') | ||
117 | #displayTagAppTitle("" false) | ||
118 | #if("$!{request.get('deletedTag')}" != '') | ||
119 | #info($msg.get('xe.tag.delete.success', [$request.get('deletedTag')])) | ||
120 | #end | ||
121 | #set($docextras = []) | ||
122 | #includeInContext("XWiki.TagCloud") | ||
123 | #end |