Changes for page Card Navigation
Last modified by Calvin Henderson on 2025/03/11 10:29
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -Card View1 +Card Navigation
- XWiki.WikiMacroClass[0]
-
- code
-
... ... @@ -2,34 +2,44 @@ 2 2 #set($wikiRef = $doc.documentReference.getWikiReference().getName()) 3 3 #set($docRef = $doc.getFullName()) 4 4 #set($entries = $wikimacro.content) 5 -#set ($targetSyntaxId = $wikimacro.context.transformationContext.targetSyntax.type.id) 6 -#if ($targetSyntaxId == 'annotatedhtml' || $targetSyntaxId == 'annotatedxhtml') 7 -== [[Icon search>>https://fontawesome.com/v6/search?m=free]] == 8 -{{wikimacrocontent/}} 9 -#end 10 10 #if("$xcontext.action" != "edit") 11 11 12 12 13 13 {{html wiki="false"}} 14 - <div style="display: grid; 15 - grid-template-columns: 1fr 1fr 1fr; 16 - gap: 10px; 17 - "> 9 + <div style="display: flex; flex-direction: row; gap: 10px; max-width: 1790px; flex-wrap: wrap;"> 18 18 #foreach($entry in $entries.split('\n')) 19 19 #set($card = $entry.split('\|')) 20 - <a href="$card[2]" style="text-decoration:none;"> 21 - <div style=" 22 - display:grid; 23 - text-align:center; 24 - padding:8px; 25 - border-radius:5px; 26 - border:1px solid rgba(222,222,222,1); 27 - border-bottom: 3px solid rgba(222,222,222,1); 28 - "> 29 - <i class="fa $card[0]" style="font-size:4em;"></i> 30 - <h3>$card[1]</h3> 31 - </div> 32 - </a> 12 + #set($href = $card[2]) 13 + #if (!$href.toString().startsWith('http') && !$href.contains('.')) 14 + #set($href = "$wikiref:$docRef.$href") 15 + #end 16 + #set($doc = $xwiki.getDocument($card[2])) 17 + #set($canView = 18 + $href.toString().startsWith('http') 19 + || $services.security.authorization.hasAccess('view', $href) 20 + || $services.security.authorization.hasAccess('edit', $href) 21 + || $services.security.authorization.hasAccess('admin', $href) 22 + ) 23 + $href 24 + #if ($canView) 25 + <a href="$href" style="text-decoration:none;"> 26 + <div style=" 27 + display:grid; 28 + text-align:center; 29 + align-items: center; 30 + justify-items: center; 31 + padding:8px; 32 + border-radius:5px; 33 + border:1px solid rgba(222,222,222,1); 34 + border-bottom: 3px solid rgba(222,222,222,1); 35 + min-width: 350px; max-width: 350px; 36 + min-height: 150px; max-height: 150px; 37 + "> 38 + <i class="fa $card[0]" style="font-size:4em;"></i> 39 + <h3 style="margin-top: 0;">$card[1]</h3> 40 + </div> 41 + </a> 42 + #end 33 33 #end 34 34 </div> 35 35 {{/html}} - contentDescription
-
... ... @@ -1,2 +1,1 @@ 1 1 icon-name|title|link 2 -icon-name|title|link