Wiki source code of Tags
Last modified by Thomas Mortagne on 2017/11/21 12:38
Hide last authors
author | version | line-number | content |
---|---|---|---|
1.1 | 1 | {{velocity}} | |
2 | ## | ||
3 | ## Tag application. | ||
4 | ## | ||
5 | ## - See a Tag Cloud of all tags within the wiki. | ||
6 | ## - See all the pages tagged with the given tag. | ||
7 | ## - Rename a tag. | ||
8 | ## - Delete a tag. | ||
9 | ## | ||
10 | $xwiki.ssx.use('Main.Tags')## | ||
11 | ## | ||
12 | ## Set application variables (action and tag) from URL parameters. | ||
13 | ## | ||
6.1 | 14 | #set ($do = "$!{request.get('do')}") | |
15 | #set ($tag = "$!{request.get('tag')}") | ||
16 | #set ($urlEscapedTag = $escapetool.url($tag)) | ||
17 | #set ($htmlEscapedTag = $escapetool.xml($tag)) | ||
1.1 | 18 | ## | |
19 | ## Macro displayTagAppTitle. Display level1 title of this app. | ||
20 | ## | ||
6.1 | 21 | #macro (displayTagAppTitle $urlEscapedTag $htmlEscapedTag $displayButtons) | |
22 | (% class="xapp" %) | ||
23 | = (% class="highlight tag" %)${tag}## | ||
24 | #if ($xwiki.hasAdminRights() && $displayButtons) ## | ||
7.1 | 25 | [[$services.localization.render('xe.tag.rename.link')>>||queryString="do=prepareRename&tag=${urlEscapedTag}" class="button rename" rel="nofollow"]] [[$services.localization.render('xe.tag.delete.link')>>||queryString="do=prepareDelete&tag=${urlEscapedTag}" class="button delete" rel="nofollow"]]## | |
1.1 | 26 | #end | |
6.1 | 27 | (%%) = | |
1.1 | 28 | #end | |
29 | ## | ||
30 | ## Switch between all possible actions: | ||
31 | ## viewTag, prepareRename, rename, prepareDelete, delete, default (Tag cloud) | ||
32 | ## | ||
6.1 | 33 | #if ($do == 'viewTag') | |
1.1 | 34 | ## | |
35 | ## View tag | ||
36 | ## | ||
37 | #displayTagAppTitle($urlEscapedTag $htmlEscapedTag true) | ||
6.1 | 38 | #if ("$!{request.get('renamedTag')}" != '') | |
7.1 | 39 | {{info}}$services.localization.render('xe.tag.rename.success', ["//${request.get('renamedTag')}//"]){{/info}} | |
6.1 | 40 | ||
1.1 | 41 | #end | |
6.1 | 42 | #set ($list = $xwiki.tag.getDocumentsWithTag($tag)) | |
43 | {{container layoutStyle="columns"}} | ||
44 | ((( | ||
45 | (% class="xapp" %) | ||
7.1 | 46 | === $services.localization.render('xe.tag.alldocs', ["//${tag}//"]) === | |
6.1 | 47 | ||
8.1 | 48 | #if ($list.size()> 0) | |
9.1 | 49 | {{html}}#displayDocumentList($list false $blacklistedSpaces){{/html}} | |
8.1 | 50 | #else | |
51 | (% class='noitems' %)$services.localization.render('xe.tag.notags') | ||
52 | #end | ||
6.1 | 53 | ))) | |
54 | ((( | ||
55 | (% class="xapp" %) | ||
7.1 | 56 | === $services.localization.render('xe.tag.activity', ["//${tag}//"]) === | |
6.1 | 57 | ||
9.1 | 58 | {{activity tags="$tag" rss='true'/}} | |
6.1 | 59 | ))) | |
60 | {{/container}} | ||
61 | #elseif ($do == 'prepareRename') | ||
1.1 | 62 | ## | |
63 | ## Prepare rename tag | ||
64 | ## | ||
65 | #displayTagAppTitle($urlEscapedTag $htmlEscapedTag false) | ||
6.1 | 66 | {{html}} | |
1.1 | 67 | <form id="renameForm" action="$doc.getURL()" method="post"> | |
68 | <div> | ||
69 | <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> | ||
70 | <input name="do" type="hidden" value="renameTag" /> | ||
71 | <input name="tag" type="hidden" value="$htmlEscapedTag" /> | ||
9.1 | 72 | $services.localization.render('xe.tag.rename.renameto', [$htmlEscapedTag]) <input type="text" name="renameTo" /> <span class="buttonwrapper"><input type="submit" value="$services.localization.render('xe.tag.rename')" class="button"/></span><span class="buttonwrapper"><a href="$doc.getURL('view', "do=viewTag&tag=${urlEscapedTag}")" class="secondary button">$services.localization.render('cancel')</a></span> | |
1.1 | 73 | </div> | |
74 | </form> | ||
6.1 | 75 | {{/html}} | |
76 | #elseif ($do == 'renameTag') | ||
1.1 | 77 | ## | |
78 | ## Rename tag | ||
79 | ## | ||
6.1 | 80 | #set ($renameTo = "$!{request.get('renameTo')}") | |
81 | #set ($success = false) | ||
1.1 | 82 | #if ($renameTo != '') | |
6.1 | 83 | #set ($success = $xwiki.tag.renameTag($tag, $renameTo)) | |
1.1 | 84 | #end | |
85 | #if ($success == true || $success == 'OK') | ||
6.1 | 86 | #set ($urlEscapedRenameTo = $escapetool.url($renameTo)) | |
1.1 | 87 | $response.sendRedirect($doc.getURL('view', "do=viewTag&tag=${urlEscapedRenameTo}&renamedTag=${urlEscapedTag}")) | |
88 | #else | ||
7.1 | 89 | {{error}}$services.localization.render('xe.tag.rename.failure', ["//${tag}//", "//${renameTo}//"]){{/error}} | |
1.1 | 90 | #end | |
6.1 | 91 | #elseif ($do == 'prepareDelete') | |
1.1 | 92 | ## | |
93 | ## Prepare delete tag | ||
94 | ## | ||
95 | #displayTagAppTitle($urlEscapedTag $htmlEscapedTag false) | ||
6.1 | 96 | {{html}} | |
1.1 | 97 | <form id="deleteForm" action="$doc.getURL()" method="post"> | |
98 | <div> | ||
99 | <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> | ||
100 | <input name="do" type="hidden" value="deleteTag" /> | ||
101 | <input name="tag" type="hidden" value="$htmlEscapedTag" /> | ||
9.1 | 102 | <span class="buttonwrapper"><input type="submit" value="$services.localization.render('xe.tag.delete', [$htmlEscapedTag])" class="button"/></span><span class="buttonwrapper"><a href="$doc.getURL('view', "do=viewTag&tag=${urlEscapedTag}")" class="secondary button">$services.localization.render('cancel')</a></span> | |
1.1 | 103 | </div> | |
104 | </form> | ||
6.1 | 105 | {{/html}} | |
106 | #elseif ($do == 'deleteTag') | ||
1.1 | 107 | ## | |
108 | ## Delete tag | ||
109 | ## | ||
6.1 | 110 | #set ($success = $xwiki.tag.deleteTag($tag)) | |
1.1 | 111 | #if ($success == true || $success == 'OK') | |
112 | $response.sendRedirect($doc.getURL('view', "deletedTag=${urlEscapedTag}")) | ||
113 | #else | ||
7.1 | 114 | {{error}}$services.localization.render('xe.tag.delete.failure', ["//${tag}//"]){{/error}} | |
1.1 | 115 | #end | |
116 | #else | ||
117 | ## | ||
118 | ## View all tags (Tag Cloud) | ||
119 | ## | ||
6.1 | 120 | #set ($title = 'All Tags') | |
121 | #if ("$!{request.get('deletedTag')}" != '') | ||
7.1 | 122 | {{info}}$services.localization.render('xe.tag.delete.success', ["//${request.get('deletedTag')}//"]){{/info}} | |
6.1 | 123 | ||
1.1 | 124 | #end | |
6.1 | 125 | {{tagcloud/}} | |
1.1 | 126 | #end | |
6.1 | 127 | #set ($displayDocExtra = false) | |
1.1 | 128 | {{/velocity}} |