Changes for page Card Navigation

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

From version 18.11
edited by calvin_henderson
on 2024/12/18 13:46
Change comment: There is no comment for this version
To version 21.5
edited by calvin_henderson
on 2024/12/19 14:35
Change comment: There is no comment for this version

Summary

Details

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