Changes for page Icon Picker

Last modified by Jan Bürger on 2025/05/06 12:29

From version 2.1
edited by Benjamin Fischer
on 2024/10/07 10:56
Change comment: Install extension [org.xwiki.platform:xwiki-platform-icon-ui/16.8.0]
To version 3.1
edited by Benjamin Fischer
on 2024/12/03 16:58
Change comment: Install extension [org.xwiki.platform:xwiki-platform-icon-ui/16.10.0]

Summary

Details

Page properties
Content
... ... @@ -2,24 +2,27 @@
2 2  ###########################
3 3  ## DATA: ICON THEMES
4 4  ###########################
5 -#if($request.action == 'data_iconthemes')
6 - #set($map = {})
7 - #set($discard = $map.put('iconThemes', $services.icon.iconSetNames))
8 - #set($discard = $map.put('currentIconTheme', $services.icon.currentIconSetName))
5 +#if ($request.action == 'data_iconthemes')
6 + #set ($map = {})
7 + #set ($discard = $map.put('iconThemes', $services.icon.iconSetNames))
8 + #set ($discard = $map.put('currentIconTheme', $services.icon.currentIconSetName))
9 9   #jsonResponse($map)
10 10  ###########################
11 11  ## DATA: ICONS
12 12  ###########################
13 -#elseif($request.action == 'data_icons')
14 - #set($icons = [])
15 - #set($iconTheme = $request.iconTheme)
16 - #set($xwikiIcons = $collectiontool.sort($services.icon.getIconNames($iconTheme)))
17 - #foreach($xwikiIcon in $xwikiIcons)
18 - #set($icon = {})
19 - #set($discard = $icon.put('name', $xwikiIcon))
20 - #set($discard = $icon.put('render', $services.icon.renderHTML($xwikiIcon, $iconTheme)))
21 - #set($discard = $icon.put('metadata', $services.icon.getMetaData($xwikiIcon, $iconTheme)))
22 - #set($discard = $icons.add($icon))
13 +#elseif ($request.action == 'data_icons')
14 + #set ($icons = [])
15 + #set ($iconTheme = $request.iconTheme)
16 + #set ($xwikiIcons = $collectiontool.sort($services.icon.getIconNames($iconTheme)))
17 + #set ($iconNamePrefix = $request.query.toLowerCase())
18 + #foreach ($xwikiIcon in $xwikiIcons)
19 + #if ("$!iconNamePrefix" == '' || $xwikiIcon.startsWith($iconNamePrefix))
20 + #set ($discard = $icons.add({
21 + 'name': $xwikiIcon,
22 + 'render': $services.icon.renderHTML($xwikiIcon, $iconTheme),
23 + 'metadata': $services.icon.getMetaData($xwikiIcon, $iconTheme)
24 + }))
25 + #end
23 23   #end
24 24   #jsonResponse($icons)
25 25  #else