Changes for page Administration

Last modified by Leon Poon on 2025/05/12 14:26

From version 7.1
edited by Leon Poon
on 2023/05/16 13:31
Change comment: Install extension [org.xwiki.platform:xwiki-platform-administration-ui/14.10.10]
To version 4.1
edited by Leon Poon
on 2020/01/05 06:16
Change comment: Install extension [org.xwiki.platform:xwiki-platform-administration-ui/11.10.2]

Summary

Details

Page properties
Content
... ... @@ -9,7 +9,7 @@
9 9  #set ($adminAction = 'admin')
10 10  #set ($crtCategoryId = "$!{request.category}")
11 11  #if ($crtCategoryId != '')
12 - #set ($crtCategoryId = $numbertool.toNumber($crtCategoryId).intValue())
12 + #set ($crtCategoryId = $mathtool.toInteger($crtCategoryId))
13 13  #end
14 14  #set ($crtSectionId = "$!{request.section}")
15 15  
... ... @@ -87,7 +87,7 @@
87 87  #set ($crtCategory = $NULL)
88 88  #foreach ($category in $adminMenu)
89 89   ## "Standard" URLs and icons for categories
90 - #set ($category.url = $xwiki.getURL($currentDoc, $adminAction, "category=${mathtool.sub($foreach.count, 1)}"))
90 + #set ($category.url = $xwiki.getURL($currentDoc, $adminAction, "category=${mathtool.sub($velocityCount, 1)}"))
91 91   #if ($xwiki.getDocument('XWiki.AdminSheet').getAttachment("${category.id}.png"))
92 92   #set ($category.iconReference = "XWiki.AdminSheet@${category.id}.png")
93 93   #else
... ... @@ -96,7 +96,7 @@
96 96   #set ($category.description = $services.localization.render("admin.${category.id}.description").trim())
97 97   #set ($category.cssClass = "${category.id}Icon")
98 98   #set ($category.name = $services.localization.render("admin.${category.id}").trim())
99 - #if ("$!{crtCategoryId}" != '' && $foreach.count == $mathtool.add($crtCategoryId, 1))
99 + #if ("$!{crtCategoryId}" != '' && $velocityCount == $mathtool.add($crtCategoryId, 1))
100 100   #set ($crtCategory = $category)
101 101   #end
102 102   ##
... ... @@ -236,9 +236,7 @@
236 236   <div class="panel xform">
237 237   <label for="adminsearchmenu" class="hidden">$services.localization.render('search')</label>
238 238   <input type="text" class="form-control panel-group-filter" autocomplete="off" id="adminsearchmenu"
239 - placeholder="$escapetool.xml($services.localization.render('administration.menu.search.hint'))"
240 - ## Disable the search input initially until the JavaScript code that handles the search is ready.
241 - disabled="disabled" />
239 + placeholder="$escapetool.xml($services.localization.render('administration.menu.search.hint'))" />
242 242   </div>
243 243   #foreach ($item in $menu)
244 244   #verticalNavigationItem($item $options)
... ... @@ -367,8 +367,11 @@
367 367   ##------------------------------------------------------------------------------------------------------------
368 368   ## The Administration allows editing other pages from different applications inside the admin context (UI)
369 369   ##------------------------------------------------------------------------------------------------------------
370 - #if ($xwiki.exists("XWiki.Admin${section}Sheet"))
371 - ## Handle known XWiki administration sections
368 + #if ("$!{request.editmode}" == 'inline' && $xwiki.exists($section))
369 + #set ($discard = $xcontext.setDisplayMode('edit'))
370 + {{html clean="false"}}{{include reference="XWiki.AdminInlineSheet" /}}{{/html}}
371 + #elseif ($xwiki.exists("XWiki.Admin${section}Sheet"))
372 + ## Custom XE administration section
372 372   {{include reference="XWiki.Admin${section}Sheet" /}}
373 373   #elseif ($xwiki.exists($section))
374 374   {{html clean="false"}}#includeForm($section){{/html}}
XWiki.JavaScriptExtension[0]
Code
... ... @@ -3,8 +3,6 @@
3 3   $(document).on('click', '.admin-menu a.panel-heading', function(event) {
4 4   event.preventDefault();
5 5   });
6 - // Mark the administration menu as ready for user interaction.
7 - $('.admin-menu').attr('data-ready', true);
8 8  });
9 9  
10 10  /**
... ... @@ -26,7 +26,7 @@
26 26   // Filter the categories.
27 27   panelGroup.find('a.panel-heading').each(function() {
28 28   var panel = $(this).closest('.panel');
29 - var hasVisibleSections = panel.find('.list-group-item').not('.hidden').length > 0;
27 + var hasVisibleSections = panel.find('.list-group-item').not('.hidden').size() > 0;
30 30   var matchesFilterQuery = !filterItem.call($(this), text);
31 31   panel.toggle(hasVisibleSections || matchesFilterQuery);
32 32   if (!hasVisibleSections && matchesFilterQuery) {
... ... @@ -50,7 +50,7 @@
50 50   .next('.panel-collapse').addClass('in').css('height', '');
51 51   }
52 52   // Show/Hide the "No results." message.
53 - var hasVisibleCategories = panelGroup.find('a.panel-heading').filter(':visible').length > 0;
51 + var hasVisibleCategories = panelGroup.find('a.panel-heading').filter(':visible').size() > 0;
54 54   panelGroup.find('.noitems').toggleClass('hidden', hasVisibleCategories);
55 55   };
56 56  
... ... @@ -61,8 +61,6 @@
61 61   var panelGroup = $(this).closest('.panel-group');
62 62   var text = $(this).val().toLowerCase();
63 63   // Schedule a new filter operation.
64 - timeoutId = setTimeout(filterPanelGroup.bind(panelGroup, text), 500);
65 -
66 - // Finally, enable the search input.
67 - }).prop('disabled', false);
62 + timeoutId = setTimeout($.proxy(filterPanelGroup, panelGroup, text), 500);
63 + });
68 68  });