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 9.1
edited by Leon Poon
on 2025/05/12 14:26
Change comment: Install extension [org.xwiki.platform:xwiki-platform-administration-ui/16.10.7]

Summary

Details

Page properties
Content
... ... @@ -232,7 +232,8 @@
232 232  
233 233  #macro (verticalNavigation $menu $options)
234 234   {{html clean="false"}}
235 - <div id="$!options.id" class="panel-group $!options.cssClass" role="tablist" aria-multiselectable="true">
235 + <nav id="$!options.id" class="panel-group $!options.cssClass"
236 + aria-label="$escapetool.xml($services.localization.render('administration.menu.label'))">
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"
... ... @@ -248,7 +248,7 @@
248 248   $escapetool.xml($services.localization.render('administration.menu.search.noResults'))
249 249   </div>
250 250   </div>
251 - </div>
252 + </nav>
252 252   {{/html}}
253 253  #end
254 254  
... ... @@ -264,11 +264,14 @@
264 264   #set ($children = [])
265 265   #sortCollectionOfMapsByField($item.children, 'order', 99999, 'asc', $children)
266 266   <div class="panel panel-default">
267 - <a class="panel-heading#if (!$isActive) collapsed#end" role="tab" id="panel-heading-$escapedId"
268 - href="$!item.url" data-toggle="collapse"#if ("$!options.id" != '') data-parent="#$options.id" #end
269 - data-target="#panel-body-$escapedId" aria-expanded="$isActive" aria-controls="panel-body-$escapedId"
270 - title="$!escapetool.xml($item.description)">$!services.icon.renderHTML($item.icon)$escapetool.xml($name)</a>
271 - <div class="panel-collapse collapse#if ($isActive) in#end" role="tabpanel" id="panel-body-$escapedId"
268 + <a class="panel-heading#if (!$isActive) collapsed#end" id="panel-heading-$escapedId"
269 + href="$!item.url" data-toggle="collapse"#if ("$!options.id" != '') data-parent="#$options.id" #end
270 + data-target="#panel-body-$escapedId" aria-expanded="$isActive" aria-controls="panel-body-$escapedId"
271 + title="$!escapetool.xml($item.description)">
272 + <span>$!services.icon.renderHTML($item.icon)$escapetool.xml($name)</span>
273 + <div>$services.icon.renderHTML('caret-down')</div>
274 + </a>
275 + <section class="panel-collapse collapse#if ($isActive) in#end" id="panel-body-$escapedId"
272 272   aria-labelledby="panel-heading-$escapedId">
273 273   <div class="list-group">
274 274   #foreach ($child in $children)
... ... @@ -275,7 +275,7 @@
275 275   #verticalNavigationItem($child $options)
276 276   #end
277 277   </div>
278 - </div>
282 + </section>
279 279   </div>
280 280   #else
281 281   <a class="list-group-item#if ($isActive) active#end" data-id="$escapedId"
... ... @@ -333,7 +333,7 @@
333 333   #end
334 334  #end
335 335  (% id="document-title" %)(((
336 - = $services.localization.render("administration.sectionTitle$level", [$sectionName]) =
340 + = $services.localization.render("administration.sectionTitle$level", 'xwiki/2.1', [$sectionName]) =
337 337   ## Display the category/section description below the title.
338 338   #set ($categoryOrSectionId = $crtCategory.id)
339 339   #if ("$!crtSection.id" != '')
XWiki.StyleSheetExtension[0]
Code
... ... @@ -13,10 +13,17 @@
13 13   margin-top: 0;
14 14  }
15 15  
16 -#admin-page-content label > input[type="checkbox"],
16 +#admin-page-content label > input[type="checkbox"] {
17 + vertical-align: middle;
18 +}
19 +
17 17  #admin-page-content label > input[type="radio"] {
18 - vertical-align: bottom;
21 + vertical-align: baseline;
19 19  }
23 +
24 +#admin-page-content .usersorgroupsnames label > input[type="radio"] {
25 + vertical-align: unset;
26 +}
20 20  
21 21  /**
22 22   * Category Overview
... ... @@ -57,10 +57,23 @@
57 57  /* Override general table styles. */
58 58  /* TODO: Move to livetable.css */
59 59  
60 -#userstable td, #groupstable td, #usersandgroupstable td, #alldocstable td {
67 +#usersandgroupstable td, #alldocstable td {
61 61   border-color: transparent;
62 62  }
63 63  
71 +#admin-page-content .usersorgroupsnames {
72 + white-space: nowrap;
73 + /* Triple of the value for the .right column. This is useful to make sure the columns are somewhat balanced when
74 + there is only one right (e.g., extension rights with a default flavor).
75 + Keeping them balanced is useful to make sure the filters are displayed properly, which is especially important
76 + on a subwiki where we have to find a place to display the scope selector. */
77 + width: 27%;
78 +}
79 +
80 +#usersandgroupstable-filters-scope {
81 + white-space: nowrap;
82 +}
83 +
64 64  #usersandgroupstable-filters #name {
65 65   width: 65%;
66 66  }
... ... @@ -79,6 +79,10 @@
79 79   vertical-align: top;
80 80  }
81 81  
102 +.xform #usersandgroupstable select {
103 + width: unset;
104 +}
105 +
82 82  /**
83 83   * Bootstrap's Accordion Menu
84 84   */
... ... @@ -89,18 +89,33 @@
89 89  }
90 90  
91 91  .admin-menu .panel-heading.collapsed {
92 - border-bottom-left-radius: 3px;
93 - border-bottom-right-radius: 3px;
116 + border-bottom-left-radius: 5px;
117 + border-bottom-right-radius: 5px;
94 94  }
95 95  
96 96  .admin-menu a.panel-heading {
97 - display: block;
121 + display: flex;
98 98   font-size: 100%;
99 99  }
124 +
125 +.admin-menu a.panel-heading span {
126 + flex-grow: 1;
127 +}
128 +
100 100  .admin-menu a.panel-heading:not(.collapsed) {
101 101   background-color: $theme.menuBackgroundColor;
102 102   color: $theme.menuLinkColor;
103 103  }
133 +
134 +/* Rotate the carret on collapse. */
135 +.admin-menu a.panel-heading.collapsed > *:last-child {
136 + transform: rotate(90deg);
137 +}
138 +
139 +.admin-menu a.panel-heading > *:last-child {
140 + transition: transform 200ms ease-in-out;
141 +}
142 +
104 104  .admin-menu a.panel-heading:active,
105 105  .admin-menu a.panel-heading:focus,
106 106  .admin-menu a.panel-heading:hover {
... ... @@ -107,13 +107,13 @@
107 107   text-decoration: none;
108 108  }
109 109  
110 -.admin-menu .panel-heading > *:first-child {
149 +.admin-menu .panel-heading > span > *:first-child {
111 111   margin-right: .8em;
112 112  }
113 113  
114 114  .admin-menu .panel-collapse > .list-group:last-child .list-group-item.last {
115 - border-bottom-right-radius: 3px;
116 - border-bottom-left-radius: 3px;
154 + border-bottom-right-radius: 5px;
155 + border-bottom-left-radius: 5px;
117 117  }
118 118  
119 119  .admin-menu .panel.noitems > .panel-heading {