From 07f39f0c0a3afe0b912a49b98c3e440bf8f11100 Mon Sep 17 00:00:00 2001 From: LucasC Date: Mon, 2 Sep 2024 14:40:10 +0200 Subject: [PATCH 01/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part A --- .../src/main/resources/templates/changesdoc.vm | 8 ++------ .../src/main/resources/templates/passwd.vm | 4 ++-- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/changesdoc.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/changesdoc.vm index a72067369c87..3594381c5843 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/changesdoc.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/changesdoc.vm @@ -134,13 +134,9 @@ #if ($includes.contains('renderedChanges')) #set ($htmlDiff = $services.diff.html.unified($origdoc.renderedContent, $newdoc.renderedContent)) #if ($htmlDiff == '') -
- $escapetool.xml($services.localization.render('web.history.changes.noChanges')) -
+ #info($escapetool.xml($services.localization.render('web.history.changes.noChanges'))) #elseif ("$!htmlDiff" == '') -
- $escapetool.xml($services.localization.render('web.history.changes.failedToCompute')) -
+ #error($escapetool.xml($services.localization.render('web.history.changes.failedToCompute'))) #else #if (($origdoc.isRestricted() || $newdoc.isRestricted()) && ($services.user.allProperties.type == 'ADVANCED' || $stringtool.contains($htmlDiff, 'xwikirenderingerror'))) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm index f70ac35ce4f0..b90ea884301b 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm @@ -18,7 +18,7 @@ ## 02110-1301 USA, or see the FSF site: http://www.fsf.org. ## --------------------------------------------------------------------------- ### -### Change a user's password +### Change a user's password from the user preferences. ### ### #template("startpage.vm") @@ -61,7 +61,7 @@ #end #end #if($request.xwikipassword && $isValidPassword) - $services.localization.render('platform.core.profile.passwd.success') + #info($services.localization.render('platform.core.profile.passwd.success')) $services.localization.render('platform.core.profile.passwd.return') #end #if(!$isValidPassword) From d6864472c5b4df13d1e96d864621601df1504ebb Mon Sep 17 00:00:00 2001 From: LucasC Date: Mon, 2 Sep 2024 17:13:50 +0200 Subject: [PATCH 02/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Velocity macro update --- .../resources/ApplicationResources.properties | 2 ++ .../src/main/resources/templates/macros.vm | 18 +++++++++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/ApplicationResources.properties b/xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/ApplicationResources.properties index d3b6dfab9587..c3d24539f423 100644 --- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/ApplicationResources.properties +++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/ApplicationResources.properties @@ -417,6 +417,8 @@ Error=Error error=Error warning=Warning Warning=Warning +info=Information +success=Success uploadavatarfile=Upload new user photo setthisavatar=Set this photo notauser=This is not a user! diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index 75d1bd8f02ce..950e44e1b66a 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -953,16 +953,28 @@ $html ### message ### +#macro(genericMessage $text $classAffix $iconName $prettyNameKey) +
+ $services.icon.renderHTML($iconName) + $services.localization.render($prettyNameKey) + $text +
+#end + #macro(warning $text) -
$services.localization.render('warning'): $text
+#genericMessage($text 'warning' 'warning' 'warning') #end #macro(error $text) -
$services.localization.render('error'): $text
+#genericMessage($text 'error' 'error' 'error') #end #macro(info $text) -
$text
+#genericMessage($text 'info' 'info' 'info') +#end + +#macro(success $text) +#genericMessage($text 'success' 'success' 'success') #end #macro(message $text) From 358f3863ed3f7a5b6829b2fa9b85e0d36032358c Mon Sep 17 00:00:00 2001 From: LucasC Date: Tue, 3 Sep 2024 13:58:46 +0200 Subject: [PATCH 03/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part B * extensionHistory.vm * extension.vm * distribution/macros.vm * template/macros.vm * Extensions.xml * AnnotationCode/Macros.xml --- .../main/resources/AnnotationCode/Macros.xml | 4 +- .../src/main/resources/XWiki/Extensions.xml | 56 +++++++++++-------- .../templates/distribution/macros.vm | 4 +- .../src/main/resources/templates/extension.vm | 14 ++--- .../resources/templates/extensionHistory.vm | 21 ++----- .../src/main/resources/templates/macros.vm | 2 +- 6 files changed, 49 insertions(+), 52 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Macros.xml b/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Macros.xml index 7a206f134a87..ef93fdf41f8a 100644 --- a/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Macros.xml +++ b/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Macros.xml @@ -119,7 +119,7 @@ #displayAnnotationBoxButtons('edit') </form> #else - <div class="box infomessage">$services.localization.render('annotations.action.edit.error.notfound')</div> + #info($services.localization.render('annotations.action.edit.error.notfound')) #end </div> #end @@ -152,7 +152,7 @@ ##<div class="clearfloats"></div> #displayAnnotationFromReference($ann $mode $docRef) #else - <div class="box infomessage">$services.localization.render('annotations.action.view.error.notfound')</div> + #info($services.localization.render('annotations.action.view.error.notfound')) #end </div> #end diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml index 7490015b453f..ecdf5c45bb8a 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml @@ -116,13 +116,13 @@ #if ($recommended) #if (!$extensions.iterator().hasNext()) - <div class="box warningmessage">$services.localization.render('extensions.search.recommended.fallback', ["<em>$!escapetool.xml($request.search)</em>"])</div> + #warning($services.localization.render('extensions.search.recommended.fallback', ["<em>$!escapetool.xml($request.search)</em>"])) ## Search again with the recommended filter #set ($extensions = $repository.search("$!request.search", $paginationParams.firstItem, $paginationParams.itemsPerPage)) #set ($totalHits = $extensions.totalHits) #set ($recommended = false) #elseif (!$customExtensionFilter) - <div class="box infomessage"> + #macro (infoHeaderContent) #if ($compatible) $services.localization.render('extensions.search.compatiblerecommended.disclaimer') #else @@ -142,12 +142,13 @@ <input type="submit" value="${escapetool.xml($services.localization.render('extensions.search.all.label'))}" class="btn btn-default"/> #end </form> - </div> + #end + #info("#infoHeaderContent()") #end #end #if (!$extensions.iterator().hasNext()) - <div class="box infomessage">$services.localization.render($noResultsMessageKey, ["<em>$!escapetool.xml($request.search)</em>"])</div> + #info($services.localization.render($noResultsMessageKey, ["<em>$!escapetool.xml($request.search)</em>"])) #else #if ($totalHits && $totalHits > $paginationParams.itemsPerPage) #set ($hasPagination = true) @@ -165,39 +166,46 @@ #end #if ($indexed) + #macro (formContent) + <form action="${xwiki.relativeRequestURL}"> + #if ($request.section) + <input type="hidden" name="section" value="${escapetool.xml($request.section)}" /> + #end + <input type="hidden" name="search" value="$!{escapetool.xml($request.search)}" /> + <input type="hidden" name="recommended" value="$recommended" /> + <input type="hidden" name="indexed" value="$indexed" /> + <input type="hidden" name="compatible" value="$compatible" /> + #if ($indexJobStatus.state != 'RUNNING') + <input type="submit" value="${escapetool.xml($services.localization.render('extensions.search.indexed.reindex'))}" name="index_start" class="btn btn-default"/> + #end + </form> + #end #set ($indexJobStatus = $repository.getStatus("wiki:${xcontext.database}")) #if ($indexJobStatus) - <div class="box infomessage"> #if ($indexJobStatus.state != 'FINISHED') - $escapetool.xml($services.localization.render('extensions.search.indexed.started', [$xwiki.formatDate($indexJobStatus.startDate)])) #set ($discard = $xwiki.jsfx.use('uicomponents/job/job.js')) #set ($jobStatusURL = $doc.getURL('get', $escapetool.url({ 'xpage': 'job_status_json', 'outputSyntax': 'plain', 'jobId': $indexJobStatus.request.id }))) - <div class="xcontent job-status" data-url="$escapetool.xml($jobStatusURL)"> - #displayJobProgressBar($indexJobStatus, true) - </div> + #macro (infoFooterContent) + $escapetool.xml($services.localization.render('extensions.search.indexed.started', [$xwiki.formatDate($indexJobStatus.startDate)])) + <div class="xcontent job-status" data-url="$escapetool.xml($jobStatusURL)"> + #displayJobProgressBar($indexJobStatus, true) + </div> + #end #else - $escapetool.xml($services.localization.render('extensions.search.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) + #macro (infoFooterContent) + $escapetool.xml($services.localization.render('extensions.search.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) + #end #end + #info("#infoFooterContent() + #formContent()") #else - <div class="box warningmessage">$escapetool.xml($services.localization.render('extensions.search.indexed.nojob')) + #warning("$escapetool.xml($services.localization.render('extensions.search.indexed.nojob')) + #formContent()") #end - <form action="${xwiki.relativeRequestURL}"> - #if ($request.section) - <input type="hidden" name="section" value="${escapetool.xml($request.section)}" /> - #end - <input type="hidden" name="search" value="$!{escapetool.xml($request.search)}" /> - <input type="hidden" name="recommended" value="$recommended" /> - <input type="hidden" name="indexed" value="$indexed" /> - <input type="hidden" name="compatible" value="$compatible" /> - #if ($indexJobStatus.state != 'RUNNING') - <input type="submit" value="${escapetool.xml($services.localization.render('extensions.search.indexed.reindex'))}" name="index_start" class="btn btn-default"/> - #end - </form> - </div> #end #end </div> diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/distribution/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/distribution/macros.vm index 3611685a9ee5..9b234bbfb967 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/distribution/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/distribution/macros.vm @@ -121,9 +121,9 @@

#if ($request.previousUIId && $request.previousUIVersion && $wiki == $request.wiki) ## We shouldn't get here unless JavaScript is disabled (the form is submitted with AJAX normally). -
$services.localization.render('extensions.advancedSearch.noResults', + #info($services.localization.render('extensions.advancedSearch.noResults', ["$!escapetool.xml($request.previousUIId)", - "$!escapetool.xml($request.previousUIVersion)"])
+ "$!escapetool.xml($request.previousUIVersion)"])) #end #end diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extension.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extension.vm index e071f0d7fc56..899a6677116f 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extension.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extension.vm @@ -739,7 +739,7 @@ $namespace## 'installplan': 'extensions.install.error.alreadyInstalled', 'uninstallplan': 'extensions.uninstall.error.notInstalled' }) -
$services.localization.render($emptyPlanMessageKeys.get($plan.jobType))
+ #info($services.localization.render($emptyPlanMessageKeys.get($plan.jobType))) #else
#foreach($entry in $extensionsByAction.entrySet()) @@ -1118,15 +1118,15 @@ $namespace## #if ($extension) #displayExtension($extension, $readOnly) #else -
$services.localization.render('extensions.advancedSearch.noResults', + #info($services.localization.render('extensions.advancedSearch.noResults', ["$!escapetool.xml($request.extensionId)", - "$!escapetool.xml($request.extensionVersion)"])
+ "$!escapetool.xml($request.extensionVersion)"])) ## DEBUG START: Check if there is any job status associated with the specified extension. #getExtensionJobStatus($request.extensionId, $request.extensionVersion $jobStatus) #if ($jobStatus) ## Normally we shouldn't get here. -
We found an extension job associated with the missing extension:
+ #error("We found an extension job associated with the missing extension:") #displayExtensionJobStatus($jobStatus) #end ## DEBUG STOP @@ -1290,7 +1290,7 @@ $namespace## ## Send error back. $response.sendError(400, $errorMessage) #else -
$errorMessage #printThrowable($lastError)
+ #error("$errorMessage #printThrowable($lastError)") #end #else ## Redirect to extension display. @@ -1621,9 +1621,7 @@ $doc.getURL($xcontext.action, $escapetool.url($parameters))## #end ## #if ($outdated.isEmpty() && $invalid.isEmpty()) -
- $services.localization.render('platform.extension.updater.noUpdatesAvailable') -
+ #success($services.localization.render('platform.extension.updater.noUpdatesAvailable')) #else #displayExtensionUpdaterPlanActionByNamespace($invalid 'invalid') #displayExtensionUpdaterPlanActionByNamespace($outdated 'outdated') diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm index 98945c096e23..7638cf551c54 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm @@ -120,7 +120,7 @@ #set ($message = $services.localization.render('extension.history.currentJobInfo', ["$jobType", "$jobId"])) #end -
$services.icon.renderHTML('info') $message
+ #info($message) #end #end @@ -233,10 +233,7 @@
  • - - $services.icon.renderHTML('info') - $services.localization.render('extension.history.noRecords') - + #info($services.localization.render('extension.history.noRecords'))
@@ -465,10 +462,7 @@ #end #else -
- $services.icon.renderHTML('info') - $services.localization.render('extension.history.replayPlan.empty') -
+ #info($services.localization.render('extension.history.replayPlan.empty')) #end
#if ($hasGlobalAdmin && $records && $records.size() > 0) @@ -491,10 +485,7 @@ #displayExtensionHistoryReplayStatus($replayJobStatus) #else

$services.localization.render('extension.history.replayStatus.title')

-
- $services.icon.renderHTML('info') - $services.localization.render('extension.history.replayStatus.notFound', [$replayJobId]) -
+ #info($services.localization.render('extension.history.replayStatus.notFound', [$replayJobId])) #end #end @@ -600,8 +591,8 @@ #template('xwikivars.vm') #end #if ($request.extensionId && ($request.extensionVersion || $request.extensionVersionConstraint)) - #handleExtensionRequest + #handleExtensionRequest() #else - #handleExtensionHistoryRequest + #handleExtensionHistoryRequest() #end #end diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index 950e44e1b66a..9c30d3e6adca 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -1527,7 +1527,7 @@ $Msz MB## #livetable_filters($collist $colprops $classname) -
$services.localization.render('platform.livetable.environmentCannotLoadTableMessage')
+ #warning($services.localization.render('platform.livetable.environmentCannotLoadTableMessage')) From 66d842dc552d4fe23a000cbf5dcd62a0807b86a7 Mon Sep 17 00:00:00 2001 From: LucasC Date: Tue, 3 Sep 2024 16:08:44 +0200 Subject: [PATCH 04/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part C * ExtensionSecurity/Admin.xml * edit_macros.vm * LiveTableViewSheet.xml * OfficeImporterAdmin.xml * Annotations/Settings.xml --- .../main/resources/AnnotationCode/Settings.xml | 4 ++-- .../AppWithinMinutes/LiveTableViewSheet.xml | 10 ++-------- .../XWiki/Extension/Security/Code/Admin.xml | 16 +++++++++------- .../main/resources/XWiki/OfficeImporterAdmin.xml | 8 +++----- .../src/main/resources/templates/edit_macros.vm | 12 ++++-------- 5 files changed, 20 insertions(+), 30 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Settings.xml b/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Settings.xml index 3860c00c4fe9..1f2c9454db3a 100644 --- a/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Settings.xml +++ b/xwiki-platform-core/xwiki-platform-annotation/xwiki-platform-annotation-ui/src/main/resources/AnnotationCode/Settings.xml @@ -148,10 +148,10 @@ </div> <div class="clearfloats" /> #else - <div class="box infomessage">$services.localization.render('annotations.settings.error.wrongsyntax')</div> + #info($services.localization.render('annotations.settings.error.wrongsyntax')) #end #else - <div class="box infomessage">$services.localization.render('annotations.settings.error.notarget')</div> + #info($services.localization.render('annotations.settings.error.notarget')) #end </div> {{/html}} diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml index b0fb78ea7f43..1ed986853a89 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml @@ -183,14 +183,8 @@ #end #macro (renameAppModalBody) - <div class="box infomessage"> - $services.icon.renderHTML('info') - $services.localization.render('appWithinMinutes.renameApp.changeAppTitleInfo') - </div> - <div class="box warningmessage"> - $services.icon.renderHTML('warning') - $services.localization.render('appWithinMinutes.renameApp.regenerateAppCodeWarning') - </div> + #info($services.localization.render('appWithinMinutes.renameApp.changeAppTitleInfo')) + #warning($services.localization.render('appWithinMinutes.renameApp.regenerateAppCodeWarning')) <div class="hidden"> <input type="hidden" name="form_token" value="$!escapetool.xml($services.csrf.token)" /> <input type="hidden" name="oldAppReference" value="$escapetool.xml( diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml index c90dcecd9ee8..def47ae2ebb7 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml @@ -89,7 +89,9 @@ #set ($indexJobStatus = $services.job.getJobStatus(['extension_security'])) #if ($indexJobStatus) - <div class="box infomessage"> + ## We use the velocity macro here instead of the XWiki macro, in order to keep HTML in the content + ## With the XWiki macro, the progress bar is not properly rendered. + #info(" #if ($indexJobStatus.state != 'FINISHED') $escapetool.xml($services.localization.render('extension.security.indexed.started', [$xwiki.formatDate($indexJobStatus.startDate)])) #set ($discard = $xwiki.jsfx.use('uicomponents/job/job.js')) @@ -98,16 +100,16 @@ 'outputSyntax': 'plain', 'jobId': $indexJobStatus.request.id }))) - <div class="xcontent job-status" data-url="$escapetool.xml($jobStatusURL)"> + <div class=""xcontent job-status"" data-url=""$escapetool.xml($jobStatusURL)""> #displayJobProgressBar($indexJobStatus, true) </div> - #else - $escapetool.xml($services.localization.render('extension.security.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) - #end -</div> #else - <div class="box warningmessage">$escapetool.xml($services.localization.render('extension.security.indexed.nojob'))</div> + $escapetool.xml($services.localization.render('extension.security.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) #end + ") + #else + {{warning}}$escapetool.xml($services.localization.render('extension.security.indexed.nojob')){{/warning}} + #end {{/html}} #end {{/velocity}} diff --git a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml index e0be57986906..6f5edb4e19e9 100644 --- a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml +++ b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml @@ -91,10 +91,8 @@ ### Info about the place to modify the configuration ### <p> - <span class="box infomessage"> - ## TODO: we do not escape this string because we inject some HTML code. We should improve it. - $services.localization.render('admin.ooserver.options.source', ['<span class="monospace">xwiki.properties</span>']) - </span> + ## TODO: we do not escape this string because we inject some HTML code. We should improve it. + #info($services.localization.render('admin.ooserver.options.source', ['<span class="monospace">xwiki.properties</span>'])) </p> <dl> ### @@ -150,7 +148,7 @@ #if ("$!homePath" != '') $escapetool.html($homePath) #else - <div class="box errormessage">$escapetool.html($services.localization.render('office.configuration.serverpath.error.notSetNotAutodetected'))</div> + {{error}}$escapetool.html($services.localization.render('office.configuration.serverpath.error.notSetNotAutodetected')){{/error}} #end </dd> ### diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/edit_macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/edit_macros.vm index 196b41c5891b..67f712c43082 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/edit_macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/edit_macros.vm @@ -41,15 +41,11 @@ #set ($discard = $editConfirmation.put('title', $services.localization.render($titleKey))) #define ($message) #if ($checkResult.isError()) -
- #set ($messageKey = 'platform.core.editConfirmation.errors') - $escapetool.xml($services.localization.render($messageKey)) -
+ #set ($messageKey = 'platform.core.editConfirmation.errors') + #error($escapetool.xml($services.localization.render($messageKey))) #else -
- #set ($messageKey = 'platform.core.editConfirmation.warnings') - $escapetool.xml($services.localization.render($messageKey)) -
+ #set ($messageKey = 'platform.core.editConfirmation.warnings') + #warning($escapetool.xml($services.localization.render($messageKey))) #end #if (!$checkResult.errorMessages.isEmpty()) #foreach ($block in $checkResult.errorMessages) From 049209dae3a50a1c1f078f4e2982df5e8e20f0e1 Mon Sep 17 00:00:00 2001 From: LucasC Date: Tue, 3 Sep 2024 16:49:01 +0200 Subject: [PATCH 05/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * * Velocity macro update --- .../src/main/resources/templates/macros.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index 9c30d3e6adca..b84e4580b49c 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -974,7 +974,7 @@ $html #end #macro(success $text) -#genericMessage($text 'success' 'success' 'success') +#genericMessage($text 'success' 'check' 'success') #end #macro(message $text) From 82afaa7613ea018e9d77bbe3381e7e610e6152cc Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 4 Sep 2024 17:22:59 +0200 Subject: [PATCH 06/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part D * job_macros.vm * children.vm * ExtensionBreakingQuestion.form.vm * XClassBreakingQuestion.form.vm --- .../src/main/resources/templates/children.vm | 4 +-- .../ExtensionBreakingQuestion.form.vm | 22 +++++++++---- .../question/XClassBreakingQuestion.form.vm | 31 ++++++++++++++----- .../main/resources/templates/job_macros.vm | 11 +++---- 4 files changed, 45 insertions(+), 23 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/children.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/children.vm index 130eeebde6a5..ade0f6600fd4 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/children.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/children.vm @@ -53,9 +53,7 @@ ####################################################### #macro(displayChildren) #if ($services.parentchild.isParentChildMechanismEnabled()) -
- $services.localization.render('core.children.warningParentChild') -
+ #warning($services.localization.render('core.children.warningParentChild')) #end #if ($doc.documentReference.name != 'WebHome') diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm index 999089c70152..1e9685702e76 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm @@ -17,15 +17,16 @@ ## Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ## 02110-1301 USA, or see the FSF site: http://www.fsf.org. ## --------------------------------------------------------------------------- +##!source.syntax=xwiki/2.1 +{{velocity}} #template('job/question/macros.vm') - +{{html clean=false}} #questionHeader() - +{{/html}} #set ($jobStatus = $job.status) #set ($question = $jobStatus.question) - -
-

$services.icon.renderHTML('warning') $escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.title"))

+#define ($warningMessageContent) +{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.explanation"))

#set ($url = $xwiki.getURL($services.model.createDocumentReference('', 'XWiki', 'XWikiPreferences'), 'admin', 'section=XWiki.Extensions&search=&repo=installed')) #set ($link = '') @@ -42,5 +43,14 @@
#questionButtons($jobStatus) - +{{/html}}#end + +## We want to use the XWiki macro here because we need its parameters +{{warning cssClass='deleteWarningExtensions' title='$escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.title"))'}} +$warningMessageContent +{{/warning}} + +{{html clean=false}} #questionFooter() +{{/html}} +{{/velocity}} diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm index 53bf7e360303..fae5cae8fec8 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm @@ -17,15 +17,19 @@ ## Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ## 02110-1301 USA, or see the FSF site: http://www.fsf.org. ## --------------------------------------------------------------------------- +##!source.syntax=xwiki/2.1 +{{velocity}} #template('job/question/macros.vm') #set ($jobStatus = $job.status) #set ($question = $jobStatus.question) +{{html clean=false}} #questionHeader() +{{/html}} #if ($question.isRefactoringForbidden()) -
-

$services.icon.renderHTML('warning') $escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenTitle"))

+#define ($errorMessageContent) +{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenExplanation"))

@@ -43,10 +47,15 @@
-
+{{/html}}#end + +## We want to use the XWiki macro here because we need its parameters +{{error cssClass='deleteWarningXClass' title='$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenTitle"))'}} + $errorMessageContent +{{/error}} #else -
-

$services.icon.renderHTML('warning') $escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.title"))

+#define ($warningMessageContent) +{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.explanation"))

#if ($question.isObjectsPotentiallyHidden())

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.objectsPotentiallyMissingWarning"))

@@ -62,7 +71,15 @@
#questionButtons($jobStatus) - +{{/html}}#end + +## We want to use the XWiki macro here because we need its parameters +{{warning cssClass='deleteWarningXClass' title='$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.title"))'}} + $warningMessageContent +{{/warning}} #end -#questionFooter() \ No newline at end of file +{{html clean=false}} +#questionFooter() +{{/html}} +{{/velocity}} \ No newline at end of file diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_macros.vm index 0aa586c76f69..9649817b607b 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_macros.vm @@ -113,20 +113,17 @@ $services.template.execute('logging_macros.vm') #macro (jobFinishedMessage $status $translationPrefix $successKey $errorKey $canceledKey $warningKey) #if ($status.error) #set($messageKeys = [$errorKey, "${translationPrefix}.finish.error", "job.status.${status.jobType}.error", 'job.status.error']) - #set($messageClass = 'errormessage') + #error($services.localization.render($messageKeys)) #elseif ($status.canceled) #set($messageKeys = [$canceledKey, "${translationPrefix}.finish.canceled", "job.status.${status.jobType}.canceled", 'job.status.canceled']) - #set($messageClass = 'warningmessage') + #warning($services.localization.render($messageKeys)) #elseif ($status.logTail.hasLogLevel('error')) #set($messageKeys = [$warningKey, "${translationPrefix}.finish.warning", "job.status.${status.jobType}.warning", 'job.status.warning']) - #set($messageClass = 'warningmessage') + #warning($services.localization.render($messageKeys)) #else #set($messageKeys = [$successKey, "${translationPrefix}.finish.success", "job.status.${status.jobType}.success", 'job.status.success']) - #set($messageClass = 'successmessage') + #success($services.localization.render($messageKeys)) #end -
- $services.localization.render($messageKeys) -
#end #macro (displayJobFinishedMessage $status $successKey $errorKey $canceledKey $translationPrefix) From 66b57613397d6e35ee14110b6475e222a118ddae Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 4 Sep 2024 17:23:39 +0200 Subject: [PATCH 07/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Misc - doubled icon regression --- .../src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml index 1ed986853a89..1d6e895f354c 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableViewSheet.xml @@ -236,7 +236,7 @@ #set ($classFullName = $doc.getValue('class')) #if ("$!classFullName" == '' || !$xwiki.exists($classFullName)) {{warning}} - $services.icon.render('warning') {{translation key="platform.appwithinminutes.appHomePageMovedWarning"/}} + {{translation key="platform.appwithinminutes.appHomePageMovedWarning"/}} {{/warning}} #end From fd3109fd71cbaad9510e93b6a3f2daf3ba651fd3 Mon Sep 17 00:00:00 2001 From: LucasC Date: Fri, 6 Sep 2024 14:52:12 +0200 Subject: [PATCH 08/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part E * AttachmentGalleryPickerMacro.java fails with `You must inject a component role. Got [org.xwiki.rendering.internal.macro.message.WarningMessageMacro] at L.87` --- .../pom.xml | 5 +++ .../AttachmentGalleryPickerMacro.java | 39 ++++++++++++------ .../AttachmentGalleryPickerMacroTest.java | 40 ++++++++++++------- 3 files changed, 56 insertions(+), 28 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml index 3ec37591b4fa..e0a2f6d4bad5 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml @@ -54,6 +54,11 @@ xwiki-rendering-transformation-macro ${rendering.version} + + org.xwiki.rendering + xwiki-rendering-macro-message + ${rendering.version} + org.xwiki.platform xwiki-platform-skin-api diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java index bcf7036ed667..81d795145b87 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java @@ -33,7 +33,10 @@ import org.xwiki.localization.ContextualLocalizationManager; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.GroupBlock; +import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; import org.xwiki.rendering.macro.AbstractMacro; +import org.xwiki.rendering.macro.MacroExecutionException; +import org.xwiki.rendering.macro.box.BoxMacroParameters; import org.xwiki.rendering.transformation.MacroTransformationContext; import org.xwiki.skinx.SkinExtension; @@ -78,6 +81,10 @@ public class AttachmentGalleryPickerMacro extends AbstractMacro execute(AttachmentGalleryPickerMacroParameters parameters, St if (parameters.getTarget() != null) { attachmentPickerParameters.put("data-xwiki-attachment-picker-target", parameters.getTarget()); } - - return List.of(new GroupBlock(List.of( - // Search block. - new GroupBlock(List.of(), Map.of(BLOCK_PARAM_CLASS, "attachmentPickerSearch")), - // Results block. - new GroupBlock(Map.of(BLOCK_PARAM_CLASS, "attachmentPickerResults")), - // No results block. - new GroupBlock(List.of(this.l10n.getTranslation("attachment.picker.macro.notResult.message").render()), - Map.of(BLOCK_PARAM_CLASS, "attachmentPickerNoResults hidden box warningmessage")), - new GroupBlock( - List.of(this.l10n.getTranslation("attachment.picker.macro.globalSelection.message").render()), - Map.of(BLOCK_PARAM_CLASS, "attachmentPickerGlobalSelection hidden box warningmessage")) - ), attachmentPickerParameters)); + BoxMacroParameters warningParams1 = new BoxMacroParameters(); + warningParams1.setCssClass("attachmentPickerNoResults hidden"); + BoxMacroParameters warningParams2 = new BoxMacroParameters(); + warningParams2.setCssClass("attachmentPickerGlobalSelection hidden"); + try { + return List.of(new GroupBlock(List.of( + // Search block. + new GroupBlock(List.of(), Map.of(BLOCK_PARAM_CLASS, "attachmentPickerSearch")), + // Results block. + new GroupBlock(Map.of(BLOCK_PARAM_CLASS, "attachmentPickerResults")), + // No results block. + new GroupBlock(warningMacro.execute(warningParams1, + this.l10n.getTranslationPlain("attachment.picker.macro.notResult.message"), context)), + new GroupBlock(warningMacro.execute(warningParams2, + this.l10n.getTranslationPlain("attachment.picker.macro.globalSelection.message"), context)) + ), attachmentPickerParameters)); + } catch (MacroExecutionException e) { + throw new RuntimeException(e); + } } } diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java index c947188dc37a..901306ba6d82 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java @@ -29,9 +29,11 @@ import org.mockito.Mock; import org.xwiki.attachment.picker.AttachmentGalleryPickerMacroParameters; import org.xwiki.localization.ContextualLocalizationManager; -import org.xwiki.localization.Translation; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.GroupBlock; +import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; +import org.xwiki.rendering.macro.MacroExecutionException; +import org.xwiki.rendering.macro.box.BoxMacroParameters; import org.xwiki.rendering.transformation.MacroTransformationContext; import org.xwiki.skinx.SkinExtension; import org.xwiki.test.junit5.mockito.ComponentTest; @@ -40,7 +42,8 @@ import static java.util.Map.entry; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.mockito.Mockito.mock; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -69,6 +72,10 @@ class AttachmentGalleryPickerMacroTest @Mock private MacroTransformationContext macroTransformationContext; + + @MockComponent + @Named("warning") + private WarningMessageMacro warningMacro; @Mock private Block translationRenderBlockNoResult; @@ -79,13 +86,20 @@ class AttachmentGalleryPickerMacroTest @BeforeEach void setUp() { - Translation translationNoResult = mock(Translation.class); - Translation translationGlobalSelection = mock(Translation.class); - when(this.l10n.getTranslation("attachment.picker.macro.notResult.message")).thenReturn(translationNoResult); - when(this.l10n.getTranslation("attachment.picker.macro.globalSelection.message")) - .thenReturn(translationGlobalSelection); - when(translationNoResult.render()).thenReturn(this.translationRenderBlockNoResult); - when(translationGlobalSelection.render()).thenReturn(this.translationRenderBlockGlobalSelection); + String translationRenderNoResult = "noresult"; + String translationRenderGlobalSelection = "globalselection"; + when(this.l10n.getTranslationPlain("attachment.picker.macro.notResult.message")) + .thenReturn(translationRenderNoResult); + when(this.l10n.getTranslationPlain("attachment.picker.macro.globalSelection.message")) + .thenReturn(translationRenderGlobalSelection); + try { + when(warningMacro.execute(any(BoxMacroParameters.class), eq(translationRenderNoResult), any(MacroTransformationContext.class))) + .thenReturn(List.of(this.translationRenderBlockNoResult)); + when(warningMacro.execute(any(BoxMacroParameters.class), eq(translationRenderGlobalSelection), any(MacroTransformationContext.class))) + .thenReturn(List.of(this.translationRenderBlockGlobalSelection)); + } catch (MacroExecutionException e) { + throw new RuntimeException(e); + } } @Test @@ -97,12 +111,8 @@ void execute() assertEquals(List.of(new GroupBlock(List.of( new GroupBlock(List.of(), Map.of("class", "attachmentPickerSearch")), new GroupBlock(Map.of("class", "attachmentPickerResults")), - new GroupBlock(List.of(this.translationRenderBlockNoResult), - Map.of("class", "attachmentPickerNoResults hidden box warningmessage")), - new GroupBlock( - List.of(this.translationRenderBlockGlobalSelection), - Map.of("class", "attachmentPickerGlobalSelection hidden box warningmessage")) - + new GroupBlock(List.of(this.translationRenderBlockNoResult)), + new GroupBlock(List.of(this.translationRenderBlockGlobalSelection)) ), Map.ofEntries( entry("id", "my-id"), entry("class", "attachmentGalleryPicker"), From c96ff8675a8ab89872ff6f829013421682c4077b Mon Sep 17 00:00:00 2001 From: LucasC Date: Mon, 16 Sep 2024 15:40:32 +0200 Subject: [PATCH 09/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part E * OfficeImporter.xml * XObjectDisplayerProvider.java (WIP) * CreateApplication.xml --- .../AppWithinMinutes/CreateApplication.xml | 8 ++---- .../main/resources/XWiki/OfficeImporter.xml | 19 +++++++------ .../pom.xml | 6 ++++ .../display/XObjectDisplayerProvider.java | 28 ++++++++++++++----- 4 files changed, 40 insertions(+), 21 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/CreateApplication.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/CreateApplication.xml index 836021546319..7af845d4df12 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/CreateApplication.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/CreateApplication.xml @@ -140,14 +140,10 @@ </dl> #set ($appHomeRef = $services.model.resolveDocument('', 'default', $appReference)) #if ($appDescriptor || $xwiki.exists($appHomeRef) || $xwiki.exists($appClassRef)) - <div class="box warningmessage"> - $services.localization.render('platform.appwithinminutes.appNameIsUsedWarning') - </div> + #warning($services.localization.render('platform.appwithinminutes.appNameIsUsedWarning')) #end #if (!$services.security.authorization.hasAccess('script', $xcontext.userReference, $appHomeRef)) - <div class="box errormessage"> - $escapetool.xml($services.localization.render('platform.appwithinminutes.appHomePageNoScriptRight')) - </div> + #error($escapetool.xml($services.localization.render('platform.appwithinminutes.appHomePageNoScriptRight'))) #end #end #end diff --git a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml index 66d9864395c7..2b25b1f9b7d7 100644 --- a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml +++ b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml @@ -148,14 +148,17 @@ #end #macro (officeImporterForm_overwriteContent) - <dt class="box warningmessage"> - <label> - <input name="overwriteContent" type="checkbox" value="true" checked /> - $escapetool.xml($services.localization.render('office.import.overwriteContent')) - </label> - <span class="xHint"> - $escapetool.xml($services.localization.render('office.import.overwriteContent.hint')) - </span> + <dt> + #define($warningMessageContent) + <label> + <input name="overwriteContent" type="checkbox" value="true" checked /> + $escapetool.xml($services.localization.render('office.import.overwriteContent')) + </label> + <span class="xHint"> + $escapetool.xml($services.localization.render('office.import.overwriteContent.hint')) + </span> + #end + #warning($warningMessageContent) </dt> <dd> #officeImporterForm_confirmationModal({ diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml index a3dc5b03e5a4..9f71eea41402 100644 --- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml +++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml @@ -76,5 +76,11 @@ ${commons.version} test + + org.xwiki.rendering + xwiki-rendering-macro-message + ${rendering.version} + compile + diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java index e6f7cc520c90..ae3638c708b1 100644 --- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java +++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java @@ -21,21 +21,21 @@ import java.util.Arrays; import java.util.List; -import java.util.Map; import java.util.function.Supplier; import java.util.stream.Collectors; import javax.inject.Inject; +import javax.inject.Named; import javax.inject.Provider; import javax.inject.Singleton; import org.xwiki.component.annotation.Component; import org.xwiki.localization.ContextualLocalizationManager; -import org.xwiki.localization.Translation; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.CompositeBlock; import org.xwiki.rendering.block.FormatBlock; import org.xwiki.rendering.block.GroupBlock; +import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; import org.xwiki.rendering.listener.Format; import com.xpn.xwiki.XWikiContext; @@ -43,6 +43,9 @@ import com.xpn.xwiki.objects.classes.BaseClass; import com.xpn.xwiki.objects.classes.PropertyClass; import com.xpn.xwiki.objects.classes.TextAreaClass; +import org.xwiki.rendering.macro.MacroExecutionException; +import org.xwiki.rendering.macro.box.BoxMacroParameters; +import org.xwiki.rendering.transformation.MacroTransformationContext; /** * Provider for a displayer for an XObject. @@ -59,6 +62,10 @@ public class XObjectDisplayerProvider extends AbstractBlockSupplierProvider get(BaseObject object, Object... parameters) @@ -85,8 +92,8 @@ public Supplier get(BaseObject object, Object... parameters) .map(p -> new PropertyDisplay(p.getName(), null, p.getValue().toString(), false)) .collect(Collectors.toList()); - Translation removedPropertiesMessage = - this.contextualLocalizationManager.getTranslation("core.editors.object.removeDeprecatedProperties.info"); + String removedPropertiesMessage = + this.contextualLocalizationManager.getTranslationPlain("core.editors.object.removeDeprecatedProperties.info",xClass.getPrettyName()); return () -> { // Display the properties Block propertiesBlock = renderProperties(propertyNamesHintsValues); @@ -94,11 +101,18 @@ public Supplier get(BaseObject object, Object... parameters) // Display deprecated properties if (!deprecatedPropertyNamesValues.isEmpty()) { - Block deprecatedPropertiesBlock = - new GroupBlock(Map.of(CLASS_ATTRIBUTE, "box warningmessage deprecatedProperties")); + BoxMacroParameters warningParams = new BoxMacroParameters(); + warningParams.setCssClass("deprecatedProperties"); + Block deprecatedPropertiesBlock = null; + try { + deprecatedPropertiesBlock = new GroupBlock(warningMacro.execute(warningParams, + removedPropertiesMessage, new MacroTransformationContext())); + } catch (MacroExecutionException e) { + throw new RuntimeException(e); + } if (removedPropertiesMessage != null) { deprecatedPropertiesBlock.addChild( - new FormatBlock(List.of(removedPropertiesMessage.render(xClass.getPrettyName())), Format.BOLD)); + new FormatBlock(List.of(), Format.BOLD)); } deprecatedPropertiesBlock.addChild(renderProperties(deprecatedPropertyNamesValues)); result.addChild(deprecatedPropertiesBlock); From 72bbd40cbc14aaa810d076a767d7f2f996dfd46b Mon Sep 17 00:00:00 2001 From: LucasC Date: Mon, 16 Sep 2024 15:41:10 +0200 Subject: [PATCH 10/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Velocity macro update --- .../src/main/resources/templates/macros.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index b84e4580b49c..aabba3c512ef 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -966,7 +966,7 @@ $html #end #macro(error $text) -#genericMessage($text 'error' 'error' 'error') +#genericMessage($text 'error' 'exclamation' 'error') #end #macro(info $text) From 47b7d7cb9404bb521c73a818a8f4254d8c9e56d8 Mon Sep 17 00:00:00 2001 From: LucasC Date: Tue, 17 Sep 2024 10:14:08 +0200 Subject: [PATCH 11/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part F * ClassEditSheet.xml * CreateWiki.xml (partially tested) * LiveTableEditSheet.xml * macros.vm * editobject.vm (WIP) --- .../AppWithinMinutes/ClassEditSheet.xml | 6 +-- .../AppWithinMinutes/LiveTableEditSheet.xml | 6 +-- .../src/main/resources/flamingo/editobject.vm | 1 + .../src/main/resources/flamingo/macros.vm | 2 +- .../main/resources/WikiManager/CreateWiki.xml | 48 +++++++++++-------- 5 files changed, 35 insertions(+), 28 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml index eade57c3b882..caf9bf4db2be 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml @@ -228,9 +228,7 @@ xcontext.put('propertyCustomDisplayer', new PropertyCustomDisplayer(xcontext)) ["#pageLink($sheetReference)"]) </span> #else - <span class="warningmessage"> - $services.localization.render('platform.appwithinminutes.classEditorMultipleSheetsWarning') - </span> + #warning($services.localization.render('platform.appwithinminutes.classEditorMultipleSheetsWarning')) #end </dd> <dt> @@ -705,7 +703,7 @@ xcontext.put('propertyCustomDisplayer', new PropertyCustomDisplayer(xcontext)) #updateAndSaveTranslations #if ($action == 'save') #if ($errorMessage) - <div class="box errormessage">$errorMessage</div> + #error($errorMessage) #elseif ("$!request.wizard" == 'true') ## Redirect to next wizard step. #set ($className = $stringtool.removeEnd($doc.fullName, 'Class')) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml index d594b89dbc2c..5c1487fb0e16 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml @@ -337,9 +337,9 @@ #updateAndSaveIcon() #if ($action == 'save') #if ($errorMessage) - {{html clean="false"}} - <div class="box errormessage">$errorMessage</div> - {{/html}} + + {{error}}{{html clean="false"}}$errorMessage{{/html}}{/error}} + #else ## Redirect to view mode. $response.sendRedirect($doc.getURL()) diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm index 4efda110a452..4e17a0c23218 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm @@ -95,6 +95,7 @@
+ #warning($warningMessageContent) #end #end diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/macros.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/macros.vm index a3072a43e844..c73783d1e959 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/macros.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/macros.vm @@ -248,7 +248,7 @@ #livetable_filters($collist $colprops $classname) -
$services.localization.render('platform.livetable.environmentCannotLoadTableMessage')
+ #warning($services.localization.render('platform.livetable.environmentCannotLoadTableMessage')) diff --git a/xwiki-platform-core/xwiki-platform-wiki/xwiki-platform-wiki-ui/xwiki-platform-wiki-ui-mainwiki/src/main/resources/WikiManager/CreateWiki.xml b/xwiki-platform-core/xwiki-platform-wiki/xwiki-platform-wiki-ui/xwiki-platform-wiki-ui-mainwiki/src/main/resources/WikiManager/CreateWiki.xml index c33e1af07e43..96d0b00120cd 100644 --- a/xwiki-platform-core/xwiki-platform-wiki/xwiki-platform-wiki-ui/xwiki-platform-wiki-ui-mainwiki/src/main/resources/WikiManager/CreateWiki.xml +++ b/xwiki-platform-core/xwiki-platform-wiki/xwiki-platform-wiki-ui/xwiki-platform-wiki-ui-mainwiki/src/main/resources/WikiManager/CreateWiki.xml @@ -562,7 +562,7 @@ #set ($discard = $xwiki.ssfx.use('uicomponents/logging/logging.css', true)) #set ($discard = $xwiki.jsfx.use('uicomponents/logging/logging.js', true)) #set ($status = $services.wiki.creationjob.getJobStatus($request.wikiname)) - {{html}} + {{html clean="false"}} <form class="xform" method="post" action="$doc.getURL()"> <input type="hidden" name="wikiId" id="wikiId" value="$!escapetool.xml($request.wikiname)" /> <input type="hidden" name="csrf" id="csrf" value="$!escapetool.xml($services.csrf.getToken())" /> @@ -583,15 +583,21 @@ </div> #end #set($hasErrors = $status.logTail.hasLogLevel('ERROR')) - <p class="successmessage box #if($status.error || $state != 'FINISHED')hidden#end" id="successMessage"> - $services.localization.render('platform.wiki.create.wizard.step.creation.complete', ["<strong>$escapetool.xml($request.wikiname)</strong>"]) - </p> - <p class="warningmessage box #if(!$hasErrors || $state != 'FINISHED')hidden#end" id="errorlogMessage"> - $services.localization.render('platform.wiki.create.wizard.step.creation.errorlog', ["<strong>$escapetool.xml($request.wikiname)</strong>"]) - </p> - <p class="errormessage box #if(!$status.error || $state != 'FINISHED')hidden#end" id="errorMessage"> - $services.localization.render('platform.wiki.create.wizard.step.creation.error', ["<strong>$escapetool.xml($request.wikiname)</strong>"]) - </p> + {{/html}} + + {{success cssClass="successMessage #if($status.error || $state != 'FINISHED')hidden#end"}} + {{html}}$services.localization.render('platform.wiki.create.wizard.step.creation.complete', ["<strong>$escapetool.xml($request.wikiname)</strong>"]){{/html}} + {{/success}} + + {{warning cssClass="errorlogMessage #if(!$hasErrors || $state != 'FINISHED')hidden#end"}} + {{html}}$services.localization.render('platform.wiki.create.wizard.step.creation.errorlog', ["<strong>$escapetool.xml($request.wikiname)</strong>"]){{/html}} + {{/warning}} + + {{error cssClass="errorMessage #if(!$status.error || $state != 'FINISHED')hidden#end"}} + {{html}}$services.localization.render('platform.wiki.create.wizard.step.creation.error', ["<strong>$escapetool.xml($request.wikiname)</strong>"]){{/html}} + {{/error}} + + {{html clean="false"}} </div> ## Log #template('logging_macros.vm') @@ -660,18 +666,20 @@ #end #else #set($wikiId = $request.wikiId) - {{html}} + {{html clean="false"}} #wizardHeader($services.localization.render('platform.wiki.create.wizard.step.cleaningUp')) <div class="wizard-body"> + {{/html}} #if($request.deleteOk) - <p class="successmessage box"> - $services.localization.render('platform.wiki.create.wizard.step.cleaningup.success', ["<strong>$wikiId</strong>"]) - </p> + {{success}} + {{html}}$services.localization.render('platform.wiki.create.wizard.step.cleaningup.success', ["<strong>$wikiId</strong>"]){{/html}} + {{/success}} #else - <p class="errormessage box"> - $services.localization.render('platform.wiki.create.wizard.step.cleaningup.error', ["<strong>$wikiId</strong>"]) - </p> + {{error}} + {{html}}$services.localization.render('platform.wiki.create.wizard.step.cleaningup.error', ["<strong>$wikiId</strong>"]){{/html}} + {{/error}} #end + {{html clean="false"}} </div> </form> {{/html}} @@ -1126,13 +1134,13 @@ XWiki.WikiCreationStatusBar = Class.create({ $('ui-progress').addClassName('hidden'); // We need to know if we have error if (response.error.length > 0) { - $('errorMessage').removeClassName('hidden'); + $('.errorMessage').removeClassName('hidden'); $('cleanUp').removeClassName('hidden'); } else { // Success - $('successMessage').removeClassName('hidden'); + $('.successMessage').removeClassName('hidden'); if (response.hasErrorLog) { - $('errorlogMessage').removeClassName('hidden'); + $('.errorlogMessage').removeClassName('hidden'); $('cleanUp').removeClassName('hidden'); } $('finalize').removeClassName('hidden'); From 3a0b6bcbe1e2f362f279622be9bb86443ec89a24 Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 18 Sep 2024 14:10:32 +0200 Subject: [PATCH 12/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part G * job_status_json.vm * uploadfailure.vm * FilterStreamJobJSON.xml --- .../src/main/resources/Filter/FilterStreamJobJSON.xml | 8 ++------ .../src/main/resources/templates/job_status_json.vm | 6 ++---- .../src/main/resources/templates/uploadfailure.vm | 2 +- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml b/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml index f885600b8afe..0c65a3c14996 100644 --- a/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml +++ b/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml @@ -43,13 +43,9 @@ #set($finished = $jobStatus.state.name() == 'FINISHED') #if ($finished) #if (!$jobStatus.logTail.hasLogLevel('ERROR')) - <div class="box successmessage"> - Done. - </div> + #success('Done.') #else - <div class="box errormessage"> - Error has been found during the conversion ! - </div> + #error('Error has been found during the conversion !') #end #end #end diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm index 0608aa27812d..b6080323fc3d 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm @@ -24,11 +24,9 @@ #set($jobStatus = $services.job.getJobStatus($jobId)) -#if ($jobStatus) +#if (!$jobStatus) #outputJobStatusJSON($jobStatus, $translationPrefix) #else $response.setStatus(404) -
- $services.localization.render("${translationPrefix}.notFound") -
+ #error($services.localization.render("${translationPrefix}.notFound")) #end \ No newline at end of file diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm index 9a9e61064b41..4e580f8aaeb8 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm @@ -49,7 +49,7 @@ $response.setStatus(500)##

$services.localization.render('core.action.upload.failure.failedFiles')

    #foreach ($file in $failedFiles.entrySet()) -
  • $!{escapetool.xml($file.key)}: $!{escapetool.xml($file.value)}
  • +
  • $!{escapetool.xml($file.key)}: #error($!{escapetool.xml($file.value)})
  • #end
#end From 3e07ab83414a0649e1facab4998dac5a1e35e7ab Mon Sep 17 00:00:00 2001 From: LucasC Date: Thu, 19 Sep 2024 10:37:21 +0200 Subject: [PATCH 13/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part H --- .../src/main/resources/XWiki/AdminUsersSheet.xml | 10 ++++++++-- .../src/main/resources/flamingo/restore.vm | 3 +-- .../src/main/resources/SkinsCode/XWikiSkinsSheet.xml | 4 +--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml index 1f6b50f1a328..df817dd56dc3 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml @@ -244,7 +244,10 @@ #macro (maybeShowDeleteUserWarning $userReference $right) #countPagesLastModifiedBy($userReference) #if ($pageCount > 0) - <div class="box errormessage xform"> + {{/html}} + + {{error cssClass="xform"}} + {{html clean="false"}} #set ($pageIndexReference = $services.model.createDocumentReference( $userReference.wikiReference.name, 'Main', 'AllDocs')) #set ($pageIndexURL = $xwiki.getURL($pageIndexReference) + '#|t=alldocs&doc.author=' + @@ -273,7 +276,10 @@ [$rightTranslation]))</span> </dd> </dl> - </div> + {{/html}} + {{/error}} + + {{html clean="false"}} #end #end diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/restore.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/restore.vm index e6ecd268972c..b8cfa4b54477 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/restore.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/restore.vm @@ -96,8 +96,7 @@ #end #else $response.setStatus(404) -
- $services.localization.render('core.restore.status.notFound') + #error($services.localization.render('core.restore.status.notFound'))
#end #end diff --git a/xwiki-platform-core/xwiki-platform-skin/xwiki-platform-skin-ui/src/main/resources/SkinsCode/XWikiSkinsSheet.xml b/xwiki-platform-core/xwiki-platform-skin/xwiki-platform-skin-ui/src/main/resources/SkinsCode/XWikiSkinsSheet.xml index b37222669c8c..145535bc98ac 100644 --- a/xwiki-platform-core/xwiki-platform-skin/xwiki-platform-skin-ui/src/main/resources/SkinsCode/XWikiSkinsSheet.xml +++ b/xwiki-platform-core/xwiki-platform-skin/xwiki-platform-skin-ui/src/main/resources/SkinsCode/XWikiSkinsSheet.xml @@ -99,9 +99,7 @@ {{html}} <noscript> - <div class="box errormessage"> - $escapetool.xml($services.localization.render('skin.sheet.nojs', ['LINK_START', 'LINK_END', 'XWiki.XWikiSkinFileOverrideClass'])).replace('LINK_START', "<a href='$escapetool.xml($doc.getURL('edit', 'editor=object'))'>").replace('LINK_END', '</a>') - </div> + #error($escapetool.xml($services.localization.render('skin.sheet.nojs', ['LINK_START', 'LINK_END', 'XWiki.XWikiSkinFileOverrideClass'])).replace('LINK_START', "<a href='$escapetool.xml($doc.getURL('edit', 'editor=object'))'>").replace('LINK_END', '</a>')) </noscript> {{/html}} From 49c949425a18f0ef05a5983cf3c4e9ecc640b35a Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 9 Oct 2024 12:04:17 +0200 Subject: [PATCH 14/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part H --- .../main/resources/XWiki/ColorThemePropertyDisplayer.xml | 2 +- .../src/main/resources/Invitation/InvitationCommon.xml | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml index b28294577634..20ca5c413324 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml @@ -129,7 +129,7 @@ <div class="XWikiColorThemeDisplayer"> #set ($colorThemeExists = $xwiki.exists($services.model.resolveDocument($value))) #if ("$!value" != '' && !$colorThemeExists) - <p class="errormessage">$services.localization.render('admin.colorthemes.invalidtheme', $escapetool.xml($value))</p> + #error("<p>$services.localization.render('admin.colorthemes.invalidtheme', $escapetool.xml($value))</p>) #end #if ($isSubWiki && (!$flamingoThemesFromMainWiki.isEmpty() || !$colibriThemesFromMainWiki.isEmpty())) diff --git a/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml b/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml index c25358801da4..8bdcd60a8aa0 100644 --- a/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml +++ b/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml @@ -119,7 +119,9 @@ ## Tell the user that some of the email addresses are invalid. #if($invalidAddresses && $invalidAddresses.size() > 0) <p class="invalid-address-message"> - <span class="errormessage"> + {{/html}} + {{error}} + {{html clean=false}} #if($recips.size() == 1) ## The email address given is invalid and will not be sent to. $escapetool.xml($services.localization.render('xe.invitation.displayMessage.theAddressIsInvalid')) @@ -130,7 +132,9 @@ $escapetool.xml($services.localization.render('xe.invitation.displayMessage.anAddressesIsInvalid')) #end #end - </span> + {{/html}} + {{/error}} + {{html clean=false}} </p> #end ## Subject: From dae36ae1f362623e0a0ee8eddff9de6329243a25 Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 9 Oct 2024 16:41:33 +0200 Subject: [PATCH 15/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part I --- .../main/resources/templates/attachment/moveStatus.vm | 4 +--- .../Extension/Security/Code/NotificationAlert.xml | 4 +--- .../src/main/resources/XWiki/Extensions.xml | 10 +++++----- .../src/main/resources/templates/createinline.vm | 7 ++++--- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-api/src/main/resources/templates/attachment/moveStatus.vm b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-api/src/main/resources/templates/attachment/moveStatus.vm index ffa47d70c2fd..e9167c233f5b 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-api/src/main/resources/templates/attachment/moveStatus.vm +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-api/src/main/resources/templates/attachment/moveStatus.vm @@ -67,7 +67,5 @@ #end #else $response.setStatus(404) -
- $escapetool.xml($services.localization.render('attachment.move.status.notFound')) -
+ #error($escapetool.xml($services.localization.render('attachment.move.status.notFound'))) #end \ No newline at end of file diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/NotificationAlert.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/NotificationAlert.xml index fc2cc7cc851e..7d3f40b0639b 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/NotificationAlert.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/NotificationAlert.xml @@ -307,9 +307,7 @@ #set ($parameters = [$count, $htmlLink]) {{html wiki='false' clean='false'}} <li> - <div class='box errormessage'> - $services.localization.render('extension.security.notification.message', $parameters) - </div> + #error($services.localization.render('extension.security.notification.message', $parameters)) </li> {{/html}} #end diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml index ecdf5c45bb8a..83b22b63ded5 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml @@ -122,7 +122,7 @@ #set ($totalHits = $extensions.totalHits) #set ($recommended = false) #elseif (!$customExtensionFilter) - #macro (infoHeaderContent) + #define ($infoHeaderContent) #if ($compatible) $services.localization.render('extensions.search.compatiblerecommended.disclaimer') #else @@ -143,7 +143,7 @@ #end </form> #end - #info("#infoHeaderContent()") + #info("$infoHeaderContent") #end #end @@ -189,18 +189,18 @@ 'outputSyntax': 'plain', 'jobId': $indexJobStatus.request.id }))) - #macro (infoFooterContent) + #define ($infoFooterContent) $escapetool.xml($services.localization.render('extensions.search.indexed.started', [$xwiki.formatDate($indexJobStatus.startDate)])) <div class="xcontent job-status" data-url="$escapetool.xml($jobStatusURL)"> #displayJobProgressBar($indexJobStatus, true) </div> #end #else - #macro (infoFooterContent) + #define ($infoFooterContent) $escapetool.xml($services.localization.render('extensions.search.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) #end #end - #info("#infoFooterContent() + #info("$infoFooterContent #formContent()") #else #warning("$escapetool.xml($services.localization.render('extensions.search.indexed.nojob')) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/createinline.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/createinline.vm index 9c743c2d3cc2..4b1c00380ab5 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/createinline.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/createinline.vm @@ -84,8 +84,8 @@ #set ($disableModalConfirmation = false) ## check if the exception is about the non-allowed spaces for template #if("$!exception" != '' && $exception.code == 11016) -
- #set($allowedSpaces = $createAllowedSpaces) + #set($allowedSpaces = $createAllowedSpaces) + #define ($errorMessageContent) #if ($allowedSpaces.size() == 1) $escapetool.xml($services.localization.render('core.create.template.allowedspace.inline', [$templateProvider, $allowedSpaces.get(0)])) @@ -93,7 +93,8 @@ $escapetool.xml($services.localization.render('core.create.template.allowedspaces.inline', [$templateProvider, $allowedSpaces.toString()])) #end -
+ #end + #error($errorMessageContent) #set ($disableModalConfirmation = true) #end ## check if the exception is about the document which already exists From 3884bded7a37cbdebd9d421a3ae2c7d964a0c0d9 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 13:48:12 +0200 Subject: [PATCH 16/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part J * Added velocity macro to support the inline mode --- .../resources/XWiki/ConfigurableClass.xml | 2 +- .../src/main/resources/flamingo/copy.vm | 4 +-- .../main/resources/flamingo/renameStatus.vm | 4 +-- .../src/main/resources/templates/macros.vm | 28 +++++++++++++++---- .../main/resources/templates/renameStatus.vm | 4 +-- 5 files changed, 26 insertions(+), 16 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ConfigurableClass.xml b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ConfigurableClass.xml index 7f60c604f9ac..659a8e77fd0f 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ConfigurableClass.xml +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ConfigurableClass.xml @@ -428,7 +428,7 @@ $xwiki.jsfx.use('js/xwiki/actionbuttons/actionButtons.js', true) $escapetool.xml($sectionDisplayName) </span> #if(!$hasAccess) - <br/><span class="errormessage">$services.localization.render('xe.admin.configurable.sectionIconNoAccess')</span> + <br/>#inlineError($services.localization.render('xe.admin.configurable.sectionIconNoAccess')) #end </a> </li> diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/copy.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/copy.vm index b1db398c8c34..0ce44650c147 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/copy.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/copy.vm @@ -292,9 +292,7 @@ #end #else $response.setStatus(404) -
- $services.localization.render('core.copy.status.notFound') -
+ #error($services.localization.render('core.copy.status.notFound')) #end #end diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/renameStatus.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/renameStatus.vm index 6f1bb689fc52..d1ecdd24f77c 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/renameStatus.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/renameStatus.vm @@ -94,7 +94,5 @@ #end #else $response.setStatus(404) -
- $services.localization.render('core.rename.status.notFound') -
+ #error($services.localization.render('core.rename.status.notFound')) #end diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index aabba3c512ef..d822e4de5875 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -953,30 +953,46 @@ $html ### message ### -#macro(genericMessage $text $classAffix $iconName $prettyNameKey) -
- $services.icon.renderHTML($iconName) - $services.localization.render($prettyNameKey) - $text -
+#macro(genericMessage $text $classAffix $iconName $prettyNameKey $isInline) + <#if($isInline)span#{else}div#end class="box ${classAffix}message"> + $services.icon.renderHTML($iconName) + $services.localization.render($prettyNameKey) + $text + #end #macro(warning $text) #genericMessage($text 'warning' 'warning' 'warning') #end +#macro(inlineWarning $text) +#genericMessage($text 'warning' 'warning' 'warning' true) +#end + #macro(error $text) #genericMessage($text 'error' 'exclamation' 'error') #end +#macro(inlineError $text) + #genericMessage($text 'error' 'exclamation' 'error' true) +#end + #macro(info $text) #genericMessage($text 'info' 'info' 'info') #end +#macro(inlineInfo $text) + #genericMessage($text 'info' 'info' 'info' true) +#end + #macro(success $text) #genericMessage($text 'success' 'check' 'success') #end +#macro(inlineSuccess $text) + #genericMessage($text 'success' 'check' 'success' true) +#end + #macro(message $text)
$text
#end diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/renameStatus.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/renameStatus.vm index 8686b09af05e..638d08f655a1 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/renameStatus.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/renameStatus.vm @@ -96,7 +96,5 @@ #end #else $response.setStatus(404) -
- $services.localization.render('core.rename.status.notFound') -
+ #error($services.localization.render('core.rename.status.notFound')) #end From 6def82e9c67b961eb3c1b83cd6a5ed04ad32b1b0 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 15:20:04 +0200 Subject: [PATCH 17/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part H - fix --- .../src/main/resources/XWiki/ColorThemePropertyDisplayer.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml index 20ca5c413324..c0d66c2af6cc 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/ColorThemePropertyDisplayer.xml @@ -129,7 +129,7 @@ <div class="XWikiColorThemeDisplayer"> #set ($colorThemeExists = $xwiki.exists($services.model.resolveDocument($value))) #if ("$!value" != '' && !$colorThemeExists) - #error("<p>$services.localization.render('admin.colorthemes.invalidtheme', $escapetool.xml($value))</p>) + #error(<p>$services.localization.render('admin.colorthemes.invalidtheme', $escapetool.xml($value))</p>) #end #if ($isSubWiki && (!$flamingoThemesFromMainWiki.isEmpty() || !$colibriThemesFromMainWiki.isEmpty())) From a5f8f97e733afc87ca0b1e08537c3697ec194459 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 15:23:41 +0200 Subject: [PATCH 18/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part F - fix --- .../src/main/resources/AppWithinMinutes/ClassEditSheet.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml index caf9bf4db2be..aba665d1fbfe 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/ClassEditSheet.xml @@ -228,7 +228,7 @@ xcontext.put('propertyCustomDisplayer', new PropertyCustomDisplayer(xcontext)) ["#pageLink($sheetReference)"]) </span> #else - #warning($services.localization.render('platform.appwithinminutes.classEditorMultipleSheetsWarning')) + #inlineWarning($services.localization.render('platform.appwithinminutes.classEditorMultipleSheetsWarning')) #end </dd> <dt> From 1c7764b9ace41e9bf77d1df2d1b593e2fc39e4ff Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 15:43:23 +0200 Subject: [PATCH 19/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part C - fix --- .../main/resources/XWiki/Extension/Security/Code/Admin.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml index def47ae2ebb7..ade2012d31b8 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-security/xwiki-platform-extension-security-ui/src/main/resources/XWiki/Extension/Security/Code/Admin.xml @@ -91,7 +91,7 @@ #if ($indexJobStatus) ## We use the velocity macro here instead of the XWiki macro, in order to keep HTML in the content ## With the XWiki macro, the progress bar is not properly rendered. - #info(" + #define ($infoMessageContent) #if ($indexJobStatus.state != 'FINISHED') $escapetool.xml($services.localization.render('extension.security.indexed.started', [$xwiki.formatDate($indexJobStatus.startDate)])) #set ($discard = $xwiki.jsfx.use('uicomponents/job/job.js')) @@ -100,13 +100,14 @@ 'outputSyntax': 'plain', 'jobId': $indexJobStatus.request.id }))) - <div class=""xcontent job-status"" data-url=""$escapetool.xml($jobStatusURL)""> + <div class="xcontent job-status" data-url="$escapetool.xml($jobStatusURL)"> #displayJobProgressBar($indexJobStatus, true) </div> #else $escapetool.xml($services.localization.render('extension.security.indexed.on', [$xwiki.formatDate($indexJobStatus.startDate)])) #end - ") + #end + #info($infoMessageContent) #else {{warning}}$escapetool.xml($services.localization.render('extension.security.indexed.nojob')){{/warning}} #end From 016dc7afaca12bb94ea43f42124aaac5f0330676 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 15:57:39 +0200 Subject: [PATCH 20/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part B - fix --- .../src/main/resources/XWiki/Extensions.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml index 83b22b63ded5..5e358dfe79a7 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-ui/src/main/resources/XWiki/Extensions.xml @@ -166,7 +166,7 @@ #end #if ($indexed) - #macro (formContent) + #define ($formContent) <form action="${xwiki.relativeRequestURL}"> #if ($request.section) <input type="hidden" name="section" value="${escapetool.xml($request.section)}" /> @@ -201,10 +201,10 @@ #end #end #info("$infoFooterContent - #formContent()") + $formContent") #else #warning("$escapetool.xml($services.localization.render('extensions.search.indexed.nojob')) - #formContent()") + $formContent") #end #end #end From 422b1c4f761d1b168ac35418dca22858b6d54d84 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 16:21:38 +0200 Subject: [PATCH 21/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part F - fix --- .../src/main/resources/flamingo/editobject.vm | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm index 4e17a0c23218..e1c8bfbfe878 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm @@ -30,6 +30,21 @@ * Displays a class name without its space prefix. XML-escapes the output. *# #macro(cleanClassname $classname)$!{escapetool.xml($classname.substring($classname.indexOf('.')).substring(1))}#end + +#* + * Displays a warning box, with an extra class. Note that the implementation of this macro should be very close to the + * one of the #warning macro defined in the web templates macros. + * This is the only place where we use this extraClass feature, so the implementation is contained here. + * Note that the exact context this content is rendered in is not fixed, using the XWiki macro + * would have ended up in unstable behaviour. + *# +#macro (warningWithExtraClass $text $extraClass) +
+ $services.icon.renderHTML('warning') + $services.localization.render('warning') + $text +
+#end ## #* * Display an object @@ -79,7 +94,7 @@
#set ($deprecatedProperties = $class.getDeprecatedObjectProperties($obj)) #if ($deprecatedProperties.size() > 0) -
+ #define ($warningMessageContent) $services.localization.render('core.editors.object.removeDeprecatedProperties.info', [${escapetool.xml($class.name)}])
#foreach ($prop in $deprecatedProperties) @@ -94,8 +109,8 @@ $services.localization.render('core.editors.object.removeDeprecatedProperties.link')
- - #warning($warningMessageContent) + #end + #warningWithExtraClass($warningMessageContent 'deprecatedProperties') #end #end @@ -246,10 +261,11 @@ #if ($mustSync) #break #end #end #if ($mustSync) -
+ #define ($warningMessageContent) $services.localization.render('core.editors.object.removeDeprecatedProperties.all.info')
$services.localization.render('core.editors.object.removeDeprecatedProperties.all.link')
-
+ #end + #warningWithExtraClass($warningMessageContent 'deprecatedProperties') #end #end ## checkPropertyDeprecation ## From 734ab84691242ff3073226dc960170080d95aeb3 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 16:29:06 +0200 Subject: [PATCH 22/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part E - codestyle --- .../src/main/resources/XWiki/OfficeImporter.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml index 2b25b1f9b7d7..8a22ecd4c60c 100644 --- a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml +++ b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporter.xml @@ -149,7 +149,7 @@ #macro (officeImporterForm_overwriteContent) <dt> - #define($warningMessageContent) + #define ($warningMessageContent) <label> <input name="overwriteContent" type="checkbox" value="true" checked /> $escapetool.xml($services.localization.render('office.import.overwriteContent')) From a0e4fdccc3ed1d8b8a344e397ae118180d8431de Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Fri, 11 Oct 2024 16:49:27 +0200 Subject: [PATCH 23/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part C - fix --- .../src/main/resources/XWiki/OfficeImporterAdmin.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml index 6f5edb4e19e9..f4c2cfcf93e8 100644 --- a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml +++ b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml @@ -148,7 +148,7 @@ #if ("$!homePath" != '') $escapetool.html($homePath) #else - {{error}}$escapetool.html($services.localization.render('office.configuration.serverpath.error.notSetNotAutodetected')){{/error}} + #error($escapetool.html($services.localization.render('office.configuration.serverpath.error.notSetNotAutodetected'))) #end </dd> ### From 6452b5c92c6218e5a4592f2975cc9cb758ad270e Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 15 Oct 2024 14:46:04 +0200 Subject: [PATCH 24/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part A - fix --- .../src/main/resources/templates/passwd.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm index b90ea884301b..16bf66a2af31 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/passwd.vm @@ -61,7 +61,7 @@ #end #end #if($request.xwikipassword && $isValidPassword) - #info($services.localization.render('platform.core.profile.passwd.success')) + #inlineInfo($services.localization.render('platform.core.profile.passwd.success')) $services.localization.render('platform.core.profile.passwd.return') #end #if(!$isValidPassword) From 950cbdba0a7f87e32cfddf6dd78279d08d9170a3 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 15 Oct 2024 15:10:32 +0200 Subject: [PATCH 25/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part G - fix --- .../src/main/resources/templates/job_status_json.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm index b6080323fc3d..72ea3ac43d8f 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job_status_json.vm @@ -24,7 +24,7 @@ #set($jobStatus = $services.job.getJobStatus($jobId)) -#if (!$jobStatus) +#if ($jobStatus) #outputJobStatusJSON($jobStatus, $translationPrefix) #else $response.setStatus(404) From 35814cc95b96b8930559932d63d02e4013eb7ab3 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 15 Oct 2024 15:28:45 +0200 Subject: [PATCH 26/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part G - fix --- .../src/main/resources/templates/uploadfailure.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm index 4e580f8aaeb8..62015e018cc0 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/uploadfailure.vm @@ -49,7 +49,7 @@ $response.setStatus(500)##

$services.localization.render('core.action.upload.failure.failedFiles')

    #foreach ($file in $failedFiles.entrySet()) -
  • $!{escapetool.xml($file.key)}: #error($!{escapetool.xml($file.value)})
  • +
  • $!{escapetool.xml($file.key)}: #inlineError($!{escapetool.xml($file.value)})
  • #end
#end From 6fbafbdfc90b4bdf2b027aa2906e81c0db27ae0d Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 15 Oct 2024 15:32:58 +0200 Subject: [PATCH 27/39] Revert "XWIKI-22433: Provide consistency in info / warning / error class usages in templates" This reverts commit fd3109fd71cbaad9510e93b6a3f2daf3ba651fd3. --- .../pom.xml | 5 --- .../AttachmentGalleryPickerMacro.java | 39 ++++++------------ .../AttachmentGalleryPickerMacroTest.java | 40 +++++++------------ 3 files changed, 28 insertions(+), 56 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml index a074eabb0ee6..a8e998389914 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/pom.xml @@ -54,11 +54,6 @@ xwiki-rendering-transformation-macro ${rendering.version} - - org.xwiki.rendering - xwiki-rendering-macro-message - ${rendering.version} - org.xwiki.platform xwiki-platform-skin-api diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java index 81d795145b87..bcf7036ed667 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/main/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacro.java @@ -33,10 +33,7 @@ import org.xwiki.localization.ContextualLocalizationManager; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.GroupBlock; -import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; import org.xwiki.rendering.macro.AbstractMacro; -import org.xwiki.rendering.macro.MacroExecutionException; -import org.xwiki.rendering.macro.box.BoxMacroParameters; import org.xwiki.rendering.transformation.MacroTransformationContext; import org.xwiki.skinx.SkinExtension; @@ -81,10 +78,6 @@ public class AttachmentGalleryPickerMacro extends AbstractMacro execute(AttachmentGalleryPickerMacroParameters parameters, St if (parameters.getTarget() != null) { attachmentPickerParameters.put("data-xwiki-attachment-picker-target", parameters.getTarget()); } - BoxMacroParameters warningParams1 = new BoxMacroParameters(); - warningParams1.setCssClass("attachmentPickerNoResults hidden"); - BoxMacroParameters warningParams2 = new BoxMacroParameters(); - warningParams2.setCssClass("attachmentPickerGlobalSelection hidden"); - try { - return List.of(new GroupBlock(List.of( - // Search block. - new GroupBlock(List.of(), Map.of(BLOCK_PARAM_CLASS, "attachmentPickerSearch")), - // Results block. - new GroupBlock(Map.of(BLOCK_PARAM_CLASS, "attachmentPickerResults")), - // No results block. - new GroupBlock(warningMacro.execute(warningParams1, - this.l10n.getTranslationPlain("attachment.picker.macro.notResult.message"), context)), - new GroupBlock(warningMacro.execute(warningParams2, - this.l10n.getTranslationPlain("attachment.picker.macro.globalSelection.message"), context)) - ), attachmentPickerParameters)); - } catch (MacroExecutionException e) { - throw new RuntimeException(e); - } + + return List.of(new GroupBlock(List.of( + // Search block. + new GroupBlock(List.of(), Map.of(BLOCK_PARAM_CLASS, "attachmentPickerSearch")), + // Results block. + new GroupBlock(Map.of(BLOCK_PARAM_CLASS, "attachmentPickerResults")), + // No results block. + new GroupBlock(List.of(this.l10n.getTranslation("attachment.picker.macro.notResult.message").render()), + Map.of(BLOCK_PARAM_CLASS, "attachmentPickerNoResults hidden box warningmessage")), + new GroupBlock( + List.of(this.l10n.getTranslation("attachment.picker.macro.globalSelection.message").render()), + Map.of(BLOCK_PARAM_CLASS, "attachmentPickerGlobalSelection hidden box warningmessage")) + ), attachmentPickerParameters)); } } diff --git a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java index 901306ba6d82..c947188dc37a 100644 --- a/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java +++ b/xwiki-platform-core/xwiki-platform-attachment/xwiki-platform-attachment-picker/xwiki-platform-attachment-picker-macro/src/test/java/org/xwiki/attachment/picker/internal/AttachmentGalleryPickerMacroTest.java @@ -29,11 +29,9 @@ import org.mockito.Mock; import org.xwiki.attachment.picker.AttachmentGalleryPickerMacroParameters; import org.xwiki.localization.ContextualLocalizationManager; +import org.xwiki.localization.Translation; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.GroupBlock; -import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; -import org.xwiki.rendering.macro.MacroExecutionException; -import org.xwiki.rendering.macro.box.BoxMacroParameters; import org.xwiki.rendering.transformation.MacroTransformationContext; import org.xwiki.skinx.SkinExtension; import org.xwiki.test.junit5.mockito.ComponentTest; @@ -42,8 +40,7 @@ import static java.util.Map.entry; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -72,10 +69,6 @@ class AttachmentGalleryPickerMacroTest @Mock private MacroTransformationContext macroTransformationContext; - - @MockComponent - @Named("warning") - private WarningMessageMacro warningMacro; @Mock private Block translationRenderBlockNoResult; @@ -86,20 +79,13 @@ class AttachmentGalleryPickerMacroTest @BeforeEach void setUp() { - String translationRenderNoResult = "noresult"; - String translationRenderGlobalSelection = "globalselection"; - when(this.l10n.getTranslationPlain("attachment.picker.macro.notResult.message")) - .thenReturn(translationRenderNoResult); - when(this.l10n.getTranslationPlain("attachment.picker.macro.globalSelection.message")) - .thenReturn(translationRenderGlobalSelection); - try { - when(warningMacro.execute(any(BoxMacroParameters.class), eq(translationRenderNoResult), any(MacroTransformationContext.class))) - .thenReturn(List.of(this.translationRenderBlockNoResult)); - when(warningMacro.execute(any(BoxMacroParameters.class), eq(translationRenderGlobalSelection), any(MacroTransformationContext.class))) - .thenReturn(List.of(this.translationRenderBlockGlobalSelection)); - } catch (MacroExecutionException e) { - throw new RuntimeException(e); - } + Translation translationNoResult = mock(Translation.class); + Translation translationGlobalSelection = mock(Translation.class); + when(this.l10n.getTranslation("attachment.picker.macro.notResult.message")).thenReturn(translationNoResult); + when(this.l10n.getTranslation("attachment.picker.macro.globalSelection.message")) + .thenReturn(translationGlobalSelection); + when(translationNoResult.render()).thenReturn(this.translationRenderBlockNoResult); + when(translationGlobalSelection.render()).thenReturn(this.translationRenderBlockGlobalSelection); } @Test @@ -111,8 +97,12 @@ void execute() assertEquals(List.of(new GroupBlock(List.of( new GroupBlock(List.of(), Map.of("class", "attachmentPickerSearch")), new GroupBlock(Map.of("class", "attachmentPickerResults")), - new GroupBlock(List.of(this.translationRenderBlockNoResult)), - new GroupBlock(List.of(this.translationRenderBlockGlobalSelection)) + new GroupBlock(List.of(this.translationRenderBlockNoResult), + Map.of("class", "attachmentPickerNoResults hidden box warningmessage")), + new GroupBlock( + List.of(this.translationRenderBlockGlobalSelection), + Map.of("class", "attachmentPickerGlobalSelection hidden box warningmessage")) + ), Map.ofEntries( entry("id", "my-id"), entry("class", "attachmentGalleryPicker"), From 07dfee67da038bb31ebb8cb925348c11a3db0418 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 15 Oct 2024 15:35:12 +0200 Subject: [PATCH 28/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part E - reverted java changes --- .../pom.xml | 6 ---- .../display/XObjectDisplayerProvider.java | 28 +++++-------------- 2 files changed, 7 insertions(+), 27 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml index 69bf926c4c1c..6c60a6806f02 100644 --- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml +++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/pom.xml @@ -76,11 +76,5 @@ ${commons.version} test - - org.xwiki.rendering - xwiki-rendering-macro-message - ${rendering.version} - compile - diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java index ae3638c708b1..e6f7cc520c90 100644 --- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java +++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-requiredrights/xwiki-platform-security-requiredrights-default/src/main/java/org/xwiki/platform/security/requiredrights/internal/display/XObjectDisplayerProvider.java @@ -21,21 +21,21 @@ import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.function.Supplier; import java.util.stream.Collectors; import javax.inject.Inject; -import javax.inject.Named; import javax.inject.Provider; import javax.inject.Singleton; import org.xwiki.component.annotation.Component; import org.xwiki.localization.ContextualLocalizationManager; +import org.xwiki.localization.Translation; import org.xwiki.rendering.block.Block; import org.xwiki.rendering.block.CompositeBlock; import org.xwiki.rendering.block.FormatBlock; import org.xwiki.rendering.block.GroupBlock; -import org.xwiki.rendering.internal.macro.message.WarningMessageMacro; import org.xwiki.rendering.listener.Format; import com.xpn.xwiki.XWikiContext; @@ -43,9 +43,6 @@ import com.xpn.xwiki.objects.classes.BaseClass; import com.xpn.xwiki.objects.classes.PropertyClass; import com.xpn.xwiki.objects.classes.TextAreaClass; -import org.xwiki.rendering.macro.MacroExecutionException; -import org.xwiki.rendering.macro.box.BoxMacroParameters; -import org.xwiki.rendering.transformation.MacroTransformationContext; /** * Provider for a displayer for an XObject. @@ -62,10 +59,6 @@ public class XObjectDisplayerProvider extends AbstractBlockSupplierProvider get(BaseObject object, Object... parameters) @@ -92,8 +85,8 @@ public Supplier get(BaseObject object, Object... parameters) .map(p -> new PropertyDisplay(p.getName(), null, p.getValue().toString(), false)) .collect(Collectors.toList()); - String removedPropertiesMessage = - this.contextualLocalizationManager.getTranslationPlain("core.editors.object.removeDeprecatedProperties.info",xClass.getPrettyName()); + Translation removedPropertiesMessage = + this.contextualLocalizationManager.getTranslation("core.editors.object.removeDeprecatedProperties.info"); return () -> { // Display the properties Block propertiesBlock = renderProperties(propertyNamesHintsValues); @@ -101,18 +94,11 @@ public Supplier get(BaseObject object, Object... parameters) // Display deprecated properties if (!deprecatedPropertyNamesValues.isEmpty()) { - BoxMacroParameters warningParams = new BoxMacroParameters(); - warningParams.setCssClass("deprecatedProperties"); - Block deprecatedPropertiesBlock = null; - try { - deprecatedPropertiesBlock = new GroupBlock(warningMacro.execute(warningParams, - removedPropertiesMessage, new MacroTransformationContext())); - } catch (MacroExecutionException e) { - throw new RuntimeException(e); - } + Block deprecatedPropertiesBlock = + new GroupBlock(Map.of(CLASS_ATTRIBUTE, "box warningmessage deprecatedProperties")); if (removedPropertiesMessage != null) { deprecatedPropertiesBlock.addChild( - new FormatBlock(List.of(), Format.BOLD)); + new FormatBlock(List.of(removedPropertiesMessage.render(xClass.getPrettyName())), Format.BOLD)); } deprecatedPropertiesBlock.addChild(renderProperties(deprecatedPropertyNamesValues)); result.addChild(deprecatedPropertiesBlock); From 6b9cce1fbefb87c115ba6647c3ef851314cccf94 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 2 Dec 2024 17:36:33 +0100 Subject: [PATCH 29/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Updated the velociMacros ** Added comments on the message boxes macros. ** Set the genericMessage as an internal macro. --- .../src/main/resources/templates/macros.vm | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index d72abd2d6c37..407b5391b13a 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -953,7 +953,9 @@ $html ### message ### -#macro(genericMessage $text $classAffix $iconName $prettyNameKey $isInline) +### This velocity macro aims at providing an element similar to a XWiki Macro-Message in places where this XWikiMacro +### cannot be used. +#macro(_genericMessage $text $classAffix $iconName $prettyNameKey $isInline) <#if($isInline)span#{else}div#end class="box ${classAffix}message"> $services.icon.renderHTML($iconName) $services.localization.render($prettyNameKey) @@ -961,36 +963,44 @@ $html #end +## Display a block warning message with the content $text. #macro(warning $text) -#genericMessage($text 'warning' 'warning' 'warning') +#_genericMessage($text 'warning' 'warning' 'warning') #end +## Display an inline warning message with the content $text. #macro(inlineWarning $text) -#genericMessage($text 'warning' 'warning' 'warning' true) +#_genericMessage($text 'warning' 'warning' 'warning' true) #end +## Display a block error message with the content $text. #macro(error $text) -#genericMessage($text 'error' 'exclamation' 'error') +#_genericMessage($text 'error' 'exclamation' 'error') #end +## Display an inline error message with the content $text. #macro(inlineError $text) - #genericMessage($text 'error' 'exclamation' 'error' true) + #_genericMessage($text 'error' 'exclamation' 'error' true) #end +## Display a block info message with the content $text. #macro(info $text) -#genericMessage($text 'info' 'info' 'info') +#_genericMessage($text 'info' 'info' 'info') #end +## Display an inline info message with the content $text. #macro(inlineInfo $text) - #genericMessage($text 'info' 'info' 'info' true) + #_genericMessage($text 'info' 'info' 'info' true) #end +## Display a block success message with the content $text. #macro(success $text) -#genericMessage($text 'success' 'check' 'success') +#_genericMessage($text 'success' 'check' 'success') #end +## Display an inline success message with the content $text. #macro(inlineSuccess $text) - #genericMessage($text 'success' 'check' 'success' true) + #_genericMessage($text 'success' 'check' 'success' true) #end #macro(message $text) From 87fe4a4a9033dff7331aaa62f22753f75cdf524f Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 3 Dec 2024 11:33:40 +0100 Subject: [PATCH 30/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Added a reference to the newly created issue for translations --- .../src/main/resources/Filter/FilterStreamJobJSON.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml b/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml index 0c65a3c14996..9e09cd5ab1a0 100644 --- a/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml +++ b/xwiki-platform-core/xwiki-platform-filter/xwiki-platform-filter-ui/src/main/resources/Filter/FilterStreamJobJSON.xml @@ -43,6 +43,8 @@ #set($finished = $jobStatus.state.name() == 'FINISHED') #if ($finished) #if (!$jobStatus.logTail.hasLogLevel('ERROR')) + ## Remove when the following issue is resolved: + ## TODO XWIKI-22710: Add translations for FilterStreamJobJSON #success('Done.') #else #error('Error has been found during the conversion !') From f75a44cf02b6545d672d8ceab0751fe0656d96bf Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Tue, 3 Dec 2024 11:40:58 +0100 Subject: [PATCH 31/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Set the warningWithExtraClass velocimacro as internal. --- .../src/main/resources/flamingo/editobject.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm index e1c8bfbfe878..943af8cf8977 100644 --- a/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm +++ b/xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-resources/src/main/resources/flamingo/editobject.vm @@ -38,7 +38,7 @@ * Note that the exact context this content is rendered in is not fixed, using the XWiki macro * would have ended up in unstable behaviour. *# -#macro (warningWithExtraClass $text $extraClass) +#macro (_warningWithExtraClass $text $extraClass)
$services.icon.renderHTML('warning') $services.localization.render('warning') From 4b60a9234c155ecc698d5c50025779dfef58cc9d Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 13:56:48 +0100 Subject: [PATCH 32/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part C * Removed the TODO and implemented the solution described by Michael --- .../src/main/resources/XWiki/OfficeImporterAdmin.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml index f4c2cfcf93e8..427af336cdd6 100644 --- a/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml +++ b/xwiki-platform-core/xwiki-platform-office/xwiki-platform-office-ui/src/main/resources/XWiki/OfficeImporterAdmin.xml @@ -91,8 +91,7 @@ ### Info about the place to modify the configuration ### <p> - ## TODO: we do not escape this string because we inject some HTML code. We should improve it. - #info($services.localization.render('admin.ooserver.options.source', ['<span class="monospace">xwiki.properties</span>'])) + #info($escapetool.html($services.localization.render('admin.ooserver.options.source', ['__VALUE__'])).replaceFirst('__VALUE__', '<span class="monospace">xwiki.properties</span>')) </p> <dl> ### From 3e3ddb89322f2f1aa38f1f662c58bfde9fce772f Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 14:05:48 +0100 Subject: [PATCH 33/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Fixed an inconsistency in the velocimacro compared to the XWiki macro. --- .../src/main/resources/templates/macros.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index 407b5391b13a..82a697cefc67 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -959,7 +959,7 @@ $html <#if($isInline)span#{else}div#end class="box ${classAffix}message"> $services.icon.renderHTML($iconName) $services.localization.render($prettyNameKey) - $text +

$text

#end From 8d2d174d8103556518f62867e909d8c9fe99852b Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 15:12:16 +0100 Subject: [PATCH 34/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part F * Escaped the errorMessage * removed the useless HTML macro. --- .../main/resources/AppWithinMinutes/LiveTableEditSheet.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml index 5c1487fb0e16..90e176a4264e 100644 --- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml +++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-ui/src/main/resources/AppWithinMinutes/LiveTableEditSheet.xml @@ -337,9 +337,7 @@ #updateAndSaveIcon() #if ($action == 'save') #if ($errorMessage) - - {{error}}{{html clean="false"}}$errorMessage{{/html}}{/error}} - + {{error}}$!escapetool.xml($errorMessage){/error}} #else ## Redirect to view mode. $response.sendRedirect($doc.getURL()) From 161d3d09292aaf65d9cd0db0882cbf49f897bfbb Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 16:06:30 +0100 Subject: [PATCH 35/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part D * Updated the internal velocimacro to also take into account equivalents to rarely used XWikiMacro parameters. --- .../job/question/ExtensionBreakingQuestion.form.vm | 14 ++------------ .../src/main/resources/templates/macros.vm | 6 ++++-- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm index 1e9685702e76..8c2087ca21da 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm @@ -17,16 +17,11 @@ ## Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ## 02110-1301 USA, or see the FSF site: http://www.fsf.org. ## --------------------------------------------------------------------------- -##!source.syntax=xwiki/2.1 -{{velocity}} #template('job/question/macros.vm') -{{html clean=false}} #questionHeader() -{{/html}} #set ($jobStatus = $job.status) #set ($question = $jobStatus.question) #define ($warningMessageContent) -{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.explanation"))

#set ($url = $xwiki.getURL($services.model.createDocumentReference('', 'XWiki', 'XWikiPreferences'), 'admin', 'section=XWiki.Extensions&search=&repo=installed')) #set ($link = '') @@ -43,14 +38,9 @@
#questionButtons($jobStatus) -{{/html}}#end +#end ## We want to use the XWiki macro here because we need its parameters -{{warning cssClass='deleteWarningExtensions' title='$escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.title"))'}} -$warningMessageContent -{{/warning}} +#_genericMessage("$warningMessageContent", 'warning', 'warning', 'warning', false, 'deleteWarningExtensions', $escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.title"))) -{{html clean=false}} #questionFooter() -{{/html}} -{{/velocity}} diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm index 82a697cefc67..7e757e7abb66 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/macros.vm @@ -955,11 +955,13 @@ $html ### This velocity macro aims at providing an element similar to a XWiki Macro-Message in places where this XWikiMacro ### cannot be used. -#macro(_genericMessage $text $classAffix $iconName $prettyNameKey $isInline) - <#if($isInline)span#{else}div#end class="box ${classAffix}message"> +#macro(_genericMessage $text $classAffix $iconName $prettyNameKey $isInline $extraClass $title) + <#if($isInline)span#{else}div#end class="box ${classAffix}message $!{extraClass}"> $services.icon.renderHTML($iconName) $services.localization.render($prettyNameKey) + #if("$!title" != "")
$!title
#end

$text

+ #if("$!title" != "")
#end #end From 20b86efed16cab5a8fe3fc1f7df64aace070a8e4 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 16:19:41 +0100 Subject: [PATCH 36/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Part D * Reverted the change of syntax for XClassBreakingQuestion.form.vm --- .../ExtensionBreakingQuestion.form.vm | 1 - .../question/XClassBreakingQuestion.form.vm | 26 +++---------------- 2 files changed, 4 insertions(+), 23 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm index 8c2087ca21da..5a1cf83354e7 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/ExtensionBreakingQuestion.form.vm @@ -40,7 +40,6 @@ #questionButtons($jobStatus) #end -## We want to use the XWiki macro here because we need its parameters #_genericMessage("$warningMessageContent", 'warning', 'warning', 'warning', false, 'deleteWarningExtensions', $escapetool.xml($services.localization.render("job.question.ExtensionBreakingQuestion.${job.type}.title"))) #questionFooter() diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm index fae5cae8fec8..7f1ea4e42071 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/job/question/XClassBreakingQuestion.form.vm @@ -17,19 +17,14 @@ ## Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ## 02110-1301 USA, or see the FSF site: http://www.fsf.org. ## --------------------------------------------------------------------------- -##!source.syntax=xwiki/2.1 -{{velocity}} #template('job/question/macros.vm') #set ($jobStatus = $job.status) #set ($question = $jobStatus.question) -{{html clean=false}} #questionHeader() -{{/html}} #if ($question.isRefactoringForbidden()) #define ($errorMessageContent) -{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenExplanation"))

@@ -47,15 +42,10 @@
-{{/html}}#end - -## We want to use the XWiki macro here because we need its parameters -{{error cssClass='deleteWarningXClass' title='$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenTitle"))'}} - $errorMessageContent -{{/error}} +#end +#_genericMessage("$errorMessageContent", 'error', 'exclamation', 'error', false, 'deleteWarningXClass', $escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.forbiddenTitle"))) #else #define ($warningMessageContent) -{{html clean=false}}

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.explanation"))

#if ($question.isObjectsPotentiallyHidden())

$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.objectsPotentiallyMissingWarning"))

@@ -71,15 +61,7 @@ #questionButtons($jobStatus) -{{/html}}#end - -## We want to use the XWiki macro here because we need its parameters -{{warning cssClass='deleteWarningXClass' title='$escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.title"))'}} - $warningMessageContent -{{/warning}} #end - -{{html clean=false}} +#_genericMessage("$warningMessageContent", 'warning', 'warning', 'warning', false, 'deleteWarningXClass', $escapetool.xml($services.localization.render("job.question.XClassBreakingQuestion.${job.type}.title"))) +#end #questionFooter() -{{/html}} -{{/velocity}} \ No newline at end of file From c1313564ff81e8c88729c5432250e087e47c7001 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 16:21:37 +0100 Subject: [PATCH 37/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Fixed changes unrelated to the ticket for this PR. --- .../src/main/resources/templates/extensionHistory.vm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm index 7638cf551c54..279dcb6a2a68 100644 --- a/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm +++ b/xwiki-platform-core/xwiki-platform-web/xwiki-platform-web-templates/src/main/resources/templates/extensionHistory.vm @@ -591,8 +591,8 @@ #template('xwikivars.vm') #end #if ($request.extensionId && ($request.extensionVersion || $request.extensionVersionConstraint)) - #handleExtensionRequest() + #handleExtensionRequest #else - #handleExtensionHistoryRequest() + #handleExtensionHistoryRequest #end #end From 7a3e02c4510f428bf110d9c1984efe6815dad281 Mon Sep 17 00:00:00 2001 From: Sereza7 Date: Mon, 9 Dec 2024 16:49:01 +0100 Subject: [PATCH 38/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Fixed incorrect HTML context in the content of the error macro. --- .../src/main/resources/Invitation/InvitationCommon.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml b/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml index 8bdcd60a8aa0..da9d88bebd35 100644 --- a/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml +++ b/xwiki-platform-core/xwiki-platform-invitation/xwiki-platform-invitation-ui/src/main/resources/Invitation/InvitationCommon.xml @@ -121,7 +121,6 @@ <p class="invalid-address-message"> {{/html}} {{error}} - {{html clean=false}} #if($recips.size() == 1) ## The email address given is invalid and will not be sent to. $escapetool.xml($services.localization.render('xe.invitation.displayMessage.theAddressIsInvalid')) @@ -132,9 +131,8 @@ $escapetool.xml($services.localization.render('xe.invitation.displayMessage.anAddressesIsInvalid')) #end #end - {{/html}} {{/error}} - {{html clean=false}} + {{html wiki=false clean=false}} </p> #end ## Subject: From f676d11e8c8276ecbde90cdfb3f6e8de494a9edd Mon Sep 17 00:00:00 2001 From: LucasC Date: Wed, 5 Feb 2025 10:33:45 +0100 Subject: [PATCH 39/39] XWIKI-22433: Provide consistency in info / warning / error class usages in templates * Added back HTML cleaning on AdminUsersSheet.xml --- .../src/main/resources/XWiki/AdminUsersSheet.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml index df817dd56dc3..866c419a7c6c 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-ui/src/main/resources/XWiki/AdminUsersSheet.xml @@ -247,7 +247,7 @@ {{/html}} {{error cssClass="xform"}} - {{html clean="false"}} + {{html}} #set ($pageIndexReference = $services.model.createDocumentReference( $userReference.wikiReference.name, 'Main', 'AllDocs')) #set ($pageIndexURL = $xwiki.getURL($pageIndexReference) + '#|t=alldocs&doc.author=' +