Changes for page Card Navigation

Last modified by Calvin Henderson on 2025/03/11 10:29

From version 21.13
edited by calvin_henderson
on 2024/12/19 14:43
Change comment: There is no comment for this version
To version 18.3
edited by calvin_henderson
on 2024/12/18 13:41
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Card Navigation
1 +Card View
XWiki.WikiMacroClass[0]
code
... ... @@ -2,47 +2,34 @@
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
5 5  #if("$xcontext.action" != "edit")
6 6  
7 7  
8 8  {{html wiki="false"}}
9 - <div style="display: flex; flex-direction: row; gap: 10px; max-width: 1790px; flex-wrap: wrap;">
14 + <div style="display: grid;
15 + grid-template-columns: 1fr 1fr 1fr;
16 + gap: 10px;
17 + ">
10 10   #foreach($entry in $entries.split('\n'))
11 11   #set($card = $entry.split('\|'))
12 - #set($href = $card[2])
13 - #set($doc = $xwiki.getDocument($card[2]))
14 - #set($canView =
15 - $href.toString().startsWith('http')
16 - || $services.security.authorization.hasAccess('view', $href)
17 - || $services.security.authorization.hasAccess('edit', $href)
18 - || $services.security.authorization.hasAccess('admin', $href)
19 - )
20 - #if ($canView)
21 - <a
22 - style="text-decoration:none;"
23 - #if ($href.toString().startsWith('http'))
24 - target="_blank"
25 - #else
26 - #set($href = $xwiki.getDocument($href).getURL())
27 - #end
28 - href="$href">
29 - <div style="
30 - display:grid;
31 - text-align:center;
32 - align-items: center;
33 - justify-items: center;
34 - padding:8px;
35 - border-radius:5px;
36 - border:1px solid rgba(222,222,222,1);
37 - border-bottom: 3px solid rgba(222,222,222,1);
38 - min-width: 350px; max-width: 350px;
39 - min-height: 150px; max-height: 150px;
40 - ">
41 - <i class="fa $card[0]" style="font-size:4em;"></i>
42 - <h3 style="margin-top: 0;">$card[1]</h3>
43 - </div>
44 - </a>
45 - #end
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>
46 46   #end
47 47   </div>
48 48  {{/html}}
contentDescription
... ... @@ -1,1 +1,2 @@
1 1  icon-name|title|link
2 +icon-name|title|link