Änderungen von Dokument NotificationsWatchUIX
Zuletzt geändert von Daniel Herrmann am 2026/03/08 12:48
Von Version 1.1
bearbeitet von Daniel Herrmann
am 2025/02/24 17:44
am 2025/02/24 17:44
Änderungskommentar:
Install extension [org.xwiki.platform:xwiki-platform-notifications-ui/17.0.0]
Auf Version
3.1
bearbeitet von Daniel Herrmann
am 2026/03/08 12:48
am 2026/03/08 12:48
Änderungskommentar:
Install extension [org.xwiki.platform:xwiki-platform-notifications-ui/18.1.0]
Zusammenfassung
Details
- XWiki.UIExtensionClass[0]
-
- Executed Content
-
... ... @@ -43,8 +43,11 @@ 43 43 <div class="panel-title" id="title-$attributeName"> 44 44 $services.icon.renderHTML("$iconName") 45 45 <label for="option-$attributeName">$services.localization.render("notifications.watch.modal.option.${translationSuffix}.title", 'html/5.0', [])</label> 46 - <a role="button" data-toggle="collapse" data-parent="#watch-options-accordion" href="#xhint-$attributeName" aria-controls="xhint-$attributeName"> 46 + <a role="button" data-toggle="collapse" data-parent="#watch-options-accordion" 47 + href="#xhint-$attributeName" aria-controls="xhint-$attributeName" 48 + title="$escapetool.xml($services.localization.render('notifications.watch.modal.option.hint.toggle'))"> 47 47 <span class="help-icon">$services.icon.renderHTML('question')</span> 50 + <span class="sr-only">$escapetool.xml($services.localization.render('notifications.watch.modal.option.hint.toggle'))</span> 48 48 </a> 49 49 </div> 50 50 </div><!-- end panel heading --> ... ... @@ -71,119 +71,121 @@ 71 71 72 72 #set ($buttonTitle = $services.localization.render('notifications.watch.button.title', [$watchText])) 73 73 {{html clean='false'}} 74 -< divclass="btn-group" id="watchButton">75 - < ahref="#" role="button" title="$escapetool.xml($buttonTitle)" class="btn btn-default" data-toggle="modal" data-target="#watchModal">77 +<li class="btn-group" id="watchButton"> 78 + <button type="button" title="$escapetool.xml($buttonTitle)" class="btn btn-default" data-toggle="modal" data-target="#watchModal"> 76 76 <span class="fa $watchIcon"></span> $watchText 77 - </a> 78 -</div> 79 -<div class="modal fade" tabindex="-1" role="dialog" id="watchModal"> 80 - <div class="modal-dialog" role="document"> 81 - <div class="modal-content"> 82 - <div class="modal-header"> 83 - <button type="button" class="close close-modal" data-dismiss="modal" aria-label="$escapetool.xml($services.localization.render('notifications.watch.modal.close'))"> 84 - <span aria-hidden="true"> 85 - $services.icon.renderHTML('cross') 86 - </span></button> 87 - <div class="modal-title"> 88 - <span class="fa $watchIcon"></span> $services.localization.render("notifications.watch.modal.title.$watchedStatus", 'html/5.0', []) 80 + </button> 81 +</li> 82 +{{/html}} 83 +#define ($notificationsWatchModal) 84 + <div class="modal fade" tabindex="-1" role="dialog" id="watchModal"> 85 + <div class="modal-dialog" role="document"> 86 + <div class="modal-content"> 87 + <div class="modal-header"> 88 + <button type="button" class="close close-modal" data-dismiss="modal" aria-label="$escapetool.xml($services.localization.render('notifications.watch.modal.close'))"> 89 + <span aria-hidden="true"> 90 + $services.icon.renderHTML('cross') 91 + </span></button> 92 + <div class="modal-title"> 93 + <span class="fa $watchIcon"></span> $services.localization.render("notifications.watch.modal.title.$watchedStatus", 'html/5.0', []) 94 + </div> 89 89 </div> 90 - </div> 91 - <div class="modal-body"> 92 - <div class="watch-status-container"> 93 - $services.localization.render("notifications.watch.modal.description.$watchedStatus", 'html/5.0', []) 94 - <hr /> 95 - #if (($watchedStatus == 'WATCHED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS' || $watchedStatus == 'BLOCKED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') && $ancestorRef.type == 'SPACE' && $services.security.authorization.hasAccess('view', $ancestorRef)) 96 - #set ($ancestorDoc = $xwiki.getDocument($ancestorRef)) 97 - #set ($ancestorDocUrl = $ancestorDoc.getURL()) 98 - #set ($ancestorDocTitle = $ancestorDoc.displayTitle) 99 - #set ($ancestorLink = "<a href=""$ancestorDocUrl"">$ancestorDocTitle</a>") 100 - $services.localization.render('notifications.watch.modal.description.ancestoroption', [$ancestorLink]) 96 + <div class="modal-body"> 97 + <div class="watch-status-container"> 98 + $services.localization.render("notifications.watch.modal.description.$watchedStatus", 'html/5.0', []) 99 + <hr /> 100 + #if (($watchedStatus == 'WATCHED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS' || $watchedStatus == 'BLOCKED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') && $ancestorRef.type == 'SPACE' && $services.security.authorization.hasAccess('view', $ancestorRef)) 101 + #set ($ancestorDoc = $xwiki.getDocument($ancestorRef)) 102 + #set ($ancestorDocUrl = $ancestorDoc.getURL()) 103 + #set ($ancestorDocTitle = $ancestorDoc.displayTitle) 104 + #set ($ancestorLink = "<a href=""$ancestorDocUrl"">$ancestorDocTitle</a>") 105 + $services.localization.render('notifications.watch.modal.description.ancestoroption', [$ancestorLink]) 106 + #end 107 + </div> 108 + <div class="watch-options-container panel-group" id="watch-options-accordion" role="tablist" aria-multiselectable="false"> 109 + #set ($blockedByAncestor = ("$!ancestorWatchStatus" == '' || $ancestorWatchStatus.isBlocked())) 110 + #set ($watchedByAncestor = ($ancestorWatchStatus.isWatched())) 111 + #if ($watchedStatus == 'NOT_SET') 112 + $watchPageOption 113 + #if (!$isTerminal) 114 + $watchSpaceOption 115 + #end 116 + $watchWikiOption 117 + #elseif ($watchedStatus == 'WATCHED_FOR_ALL_EVENTS_AND_FORMATS') 118 + #if ($blockedByAncestor) 119 + $unwatchPageOption 120 + #else 121 + $blockPageOption 122 + #end 123 + #if (!$isTerminal && $blockedByAncestor) 124 + $unwatchPageAndWatchSpaceOption 125 + #elseif (!$isTerminal && !$blockedByAncestor) 126 + $blockSpaceOption 127 + #end 128 + #elseif ($watchedStatus == 'WATCHED_WITH_CHILDREN_FOR_ALL_EVENTS_AND_FORMATS') 129 + #if ($blockedByAncestor) 130 + $unwatchSpaceOption 131 + #else 132 + $blockPageOption 133 + $blockSpaceOption 134 + #end 135 + #elseif ($watchedStatus == 'WATCHED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') 136 + $blockPageOption 137 + #if (!$isTerminal) 138 + $blockSpaceOption 139 + #end 140 + #if ($ancestorRef.type == 'WIKI') 141 + $unwatchWikiOption 142 + #end 143 + #elseif ($watchedStatus == 'BLOCKED_FOR_ALL_EVENTS_AND_FORMATS') 144 + #if ($watchedByAncestor) 145 + $unblockPageOption 146 + #else 147 + $watchPageOption 148 + #end 149 + #if (!$isTerminal && $watchedByAncestor) 150 + $unblockPageAndBlockSpaceOption 151 + #elseif (!$isTerminal && !$watchedByAncestor) 152 + $watchSpaceOption 153 + #end 154 + #elseif ($watchedStatus == 'BLOCKED_WITH_CHILDREN_FOR_ALL_EVENTS_AND_FORMATS') 155 + #if ($watchedByAncestor) 156 + $unblockSpaceOption 157 + #else 158 + $watchPageOption 159 + $watchSpaceOption 160 + #end 161 + #elseif ($watchedStatus == 'BLOCKED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') 162 + $watchPageOption 163 + #if (!$isTerminal) 164 + $watchSpaceOption 165 + #end 166 + #if ($ancestorRef.type == 'WIKI') 167 + $unblockWikiOption 168 + #end 101 101 #end 102 - </div> 103 - <div class="watch-options-container panel-group" id="watch-options-accordion" role="tablist" aria-multiselectable="false"> 104 - #set ($blockedByAncestor = ("$!ancestorWatchStatus" == '' || $ancestorWatchStatus.isBlocked())) 105 - #set ($watchedByAncestor = ($ancestorWatchStatus.isWatched())) 106 - #if ($watchedStatus == 'NOT_SET') 107 - $watchPageOption 108 - #if (!$isTerminal) 109 - $watchSpaceOption 170 + </div><!-- end panel group --> 171 + <div class="modal-body-footer"> 172 + #set ($userDoc = $xwiki.getDocument($xcontext.userReference)) 173 + #set ($settingsLink = "$userDoc.getURL('view','category=notifications')#Hnotifications.settings.filters.preferences.custom.title") 174 + <a href="$settingsLink" class="goto-settings"> 175 + $services.localization.render('notifications.watch.modal.gotosettings', 'html/5.0', []) $services.icon.renderHTML('move') 176 + </a> 177 + </div> 178 + </div><!-- end modal body --> 179 + <div class="modal-footer"> 180 + <button type="button" class="btn btn-default close-modal" data-dismiss="modal"> 181 + $services.localization.render('notifications.watch.modal.close', 'html/5.0', []) 182 + </button> 183 + #if ($watchedStatus != 'CUSTOM') 184 + <button type="button" class="btn btn-primary" disabled="disabled"> 185 + $services.localization.render('notifications.watch.modal.savechanges', 'html/5.0', []) 186 + </button> 110 110 #end 111 - $watchWikiOption 112 - #elseif ($watchedStatus == 'WATCHED_FOR_ALL_EVENTS_AND_FORMATS') 113 - #if ($blockedByAncestor) 114 - $unwatchPageOption 115 - #else 116 - $blockPageOption 117 - #end 118 - #if (!$isTerminal && $blockedByAncestor) 119 - $unwatchPageAndWatchSpaceOption 120 - #elseif (!$isTerminal && !$blockedByAncestor) 121 - $blockSpaceOption 122 - #end 123 - #elseif ($watchedStatus == 'WATCHED_WITH_CHILDREN_FOR_ALL_EVENTS_AND_FORMATS') 124 - #if ($blockedByAncestor) 125 - $unwatchSpaceOption 126 - #else 127 - $blockPageOption 128 - $blockSpaceOption 129 - #end 130 - #elseif ($watchedStatus == 'WATCHED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') 131 - $blockPageOption 132 - #if (!$isTerminal) 133 - $blockSpaceOption 134 - #end 135 - #if ($ancestorRef.type == 'WIKI') 136 - $unwatchWikiOption 137 - #end 138 - #elseif ($watchedStatus == 'BLOCKED_FOR_ALL_EVENTS_AND_FORMATS') 139 - #if ($watchedByAncestor) 140 - $unblockPageOption 141 - #else 142 - $watchPageOption 143 - #end 144 - #if (!$isTerminal && $watchedByAncestor) 145 - $unblockPageAndBlockSpaceOption 146 - #elseif (!$isTerminal && !$watchedByAncestor) 147 - $watchSpaceOption 148 - #end 149 - #elseif ($watchedStatus == 'BLOCKED_WITH_CHILDREN_FOR_ALL_EVENTS_AND_FORMATS') 150 - #if ($watchedByAncestor) 151 - $unblockSpaceOption 152 - #else 153 - $watchPageOption 154 - $watchSpaceOption 155 - #end 156 - #elseif ($watchedStatus == 'BLOCKED_BY_ANCESTOR_FOR_ALL_EVENTS_AND_FORMATS') 157 - $watchPageOption 158 - #if (!$isTerminal) 159 - $watchSpaceOption 160 - #end 161 - #if ($ancestorRef.type == 'WIKI') 162 - $unblockWikiOption 163 - #end 164 - #end 165 - </div><!-- end panel group --> 166 - <div class="modal-body-footer"> 167 - #set ($userDoc = $xwiki.getDocument($xcontext.userReference)) 168 - #set ($settingsLink = "$userDoc.getURL('view','category=notifications')#Hnotifications.settings.filters.preferences.custom.title") 169 - <a href="$settingsLink" class="goto-settings"> 170 - $services.localization.render('notifications.watch.modal.gotosettings', 'html/5.0', []) $services.icon.renderHTML('move') 171 - </a> 172 172 </div> 173 - </div><!-- end modal body --> 174 - <div class="modal-footer"> 175 - <button type="button" class="btn btn-default close-modal" data-dismiss="modal"> 176 - $services.localization.render('notifications.watch.modal.close', 'html/5.0', []) 177 - </button> 178 - #if ($watchedStatus != 'CUSTOM') 179 - <button type="button" class="btn btn-primary" disabled="disabled"> 180 - $services.localization.render('notifications.watch.modal.savechanges', 'html/5.0', []) 181 - </button> 182 - #end 183 - </div> 184 - </div><!-- /.modal-content --> 185 - </div><!-- /.modal-dialog --> 186 -</div><!-- /.modal --> 187 -{{/html}} 189 + </div><!-- /.modal-content --> 190 + </div><!-- /.modal-dialog --> 191 + </div><!-- /.modal --> 192 + #end 188 188 #end 189 189 {{/velocity}}