Änderungen von Dokument Confluence bridge for Content by label
Zuletzt geändert von xwikiadmin am 2025/01/07 12:27
Von Version 2.1
bearbeitet von xwikiadmin
am 2025/01/07 12:27
am 2025/01/07 12:27
Änderungskommentar:
Install extension [com.xwiki.pro:xwiki-pro-macros-confluence-bridges-ui/1.25.4]
Auf Version 1.1
bearbeitet von xwikiadmin
am 2024/06/24 15:04
am 2024/06/24 15:04
Änderungskommentar:
Install extension [com.xwiki.pro:xwiki-pro-macros-confluence-bridges-ui/1.19.4]
Zusammenfassung
-
Objekte (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- XWiki.WikiMacroClass[0]
-
- Makro-Code
-
... ... @@ -2,6 +2,15 @@ 2 2 3 3 {{velocity output=false}} 4 4 5 +## See https://solr.apache.org/guide/solr/latest/query-guide/standard-query-parser.html#escaping-special-characters 6 +## And https://jira.xwiki.org/browse/XCOMMONS-2926 7 +#set ($solrSpecialChars = ['+', '-', '&&', '||', '!', '(', ')', '{', '}', '[', ']', '^', '"', '~', '*', '?', ':', '/', '\', ' ']) 8 +#set ($escapedSolrSpecialChars = ['\+', '\-', '\&&', '\||', '\!', '\(', '\)', '\{', '\}', '\[', '\]', '\^', '\"', '\~', '\*', '\?', '\:', '\/', '\\', '\ ']) 9 + 10 +#macro (escapeSolr $v) 11 +$stringtool.replaceEach($v, $solrSpecialChars, $escapedSolrSpecialChars)## 12 +#end 13 + 5 5 #macro (contentbylabellink $d) 6 6 <a href="$escapetool.xml($d.getURL('view'))">## 7 7 $escapetool.xml($d.getDisplayTitle())## ... ... @@ -8,6 +8,14 @@ 8 8 </a>## 9 9 #end 10 10 20 +#macro (getSpaceFacet $space) 21 +#set ($facetNumber = $space.getReversedReferenceChain().size() - 1) 22 +#if ($space.getRoot().getType().toString() == "WIKI")) 23 +#set ($facetNumber = $facetNumber - 1) 24 +#escapeSolr("$facetNumber/${serializer.serialize($space)}.")## 25 +#end 26 +#end 27 + 11 11 #macro (executeMacro) 12 12 #if ("$!xcontext.macro.params.title" != "") 13 13 **$services.rendering.escape($xcontext.macro.params.title, $xwiki.currentContentSyntaxId)** ... ... @@ -14,43 +14,41 @@ 14 14 #end 15 15 #set ($results = $NULL) 16 16 #getCQLMacroResults($xcontext.macro $results) 17 - #if ($results != $NULL) 18 - #if ($results.empty) 19 - No results. 20 - #else 21 - #set ($tagsDoc = $xwiki.getDocument("Main.Tags")) 34 + #if ($results.empty) 35 + No results. 36 + #else 37 + #set ($tagsDoc = $xwiki.getDocument("Main.Tags")) 22 22 23 - {{html clean=false}} 24 - <ul class="confluence-contentbylabel"> 25 - #foreach ($r in $results) 26 - <li> 27 - <div class="xitemcontainer"> 28 - $services.icon.renderHTML('page') 29 - #set ($d = $xwiki.getDocument($r.fullname)) 30 - #contentbylabellink($d) 31 - #if ($xcontext.macro.params.showSpace != "false") 32 - #set ($confluenceSpace = $services.confluence.spaces.getConfluenceSpace($d)) 33 - #if ("$!confluenceSpace" != "") 34 - (#contentbylabellink($xwiki.getDocument($confluenceSpace))) 35 - #end 39 + {{html clean=false}} 40 + <ul class="confluence-contentbylabel"> 41 + #foreach ($r in $results) 42 + <li> 43 + <div class="xitemcontainer"> 44 + $services.icon.renderHTML('page') 45 + #set ($d = $xwiki.getDocument($r.fullname)) 46 + #contentbylabellink($d) 47 + #if ($xcontext.macro.params.showSpace != "false") 48 + #set ($confluenceSpace = $services.confluence.spaces.getConfluenceSpace($d)) 49 + #if ("$!confluenceSpace" != "") 50 + (#contentbylabellink($xwiki.getDocument($confluenceSpace))) 36 36 #end 37 - #if ($xcontext.macro.params.showLabels != "false") 38 - <ul class="confluence-contentbylabel-taglist"> 39 - #foreach ($tag in $r['property.XWiki.TagClass.tags_string']) 40 - <li> 41 - <a href='$escapetool.xml($tagsDoc.getURL("view", "do=viewTag&tag=$escapetool.url($tag)"))'> 42 - $escapetool.xml($tag)## 43 - </a> 44 - </li> 45 - #end 46 - </ul> 52 + #end 53 + #if ($xcontext.macro.params.showLabels != "false") 54 + <ul class="confluence-contentbylabel-taglist"> 55 + #foreach ($tag in $r['property.XWiki.TagClass.tags_string']) 56 + <li> 57 + <a href='$escapetool.xml($tagsDoc.getURL("view", "do=viewTag&tag=$escapetool.url($tag)"))'> 58 + $escapetool.xml($tag)## 59 + </a> 60 + </li> 47 47 #end 48 - </il> 49 - #end 50 - </ul> 51 - {{/html}} 52 - 62 + </ul> 63 + #end 64 + </il> 53 53 #end 66 + </ul> 67 + {{/html}} 68 + 54 54 #end 55 55 #end 56 56 {{/velocity}}