notificationsSystemFiltersPreferences
Audit
- Macro ID
- notificationsSystemFiltersPreferences
- Source
- XS
- Type
- Generator
- Classification reason
- The macro has no content: its whole output is a description and a table of the system filters of a user or of the wiki, given by its parameters and the context, like notifications and mention.
- Status
- Reviewed
- Criteria version
- 15.20
- XWiki version
- 18.8.0
- Audit date
- 2026-10-20
- Auditor
- Compared macros
- notifications mention
Sources
Where to gather the information the criteria are checked against, see Gather the sources.
| Other sources specific to this macro |
|---|
|
| Criterion | Result | Notes |
|---|---|---|
| D1 wording | OK | "Notifications System Filters Preferences" is the wording of the interface, where the notification settings have a "System filters" section next to the custom filters. It is long, 40 characters, see D4. In the Insert Macro dialog, the search "notification filters" lists it third of 3, after the deprecated "Notifications Filters Preferences" and the custom filters macro, which is an issue of the deprecated macro. |
| D2 summary | KO | "Display the preferences of the given user about system notification filters." repeats the name and is wrong for one of the two uses of the macro: with target="wiki" it displays the system filters of the whole wiki, not those of a user. It does not say that the result is a table of the 6 system filters, each with an ON/OFF switch per format, alert and email, where a change is saved right away. In English only: the French and German descriptions are the English text. |
| D3 category | KO | Notifications, but the macro is only meant for the notification administration and preferences UI, where it has its own entry, not to be inserted in a page, so it should be in the Internal category. Only the Internal and Deprecated categories are hidden from the Quick Actions menu and the Insert Macro dialog, for the users who do not display hidden pages; Notifications keeps it listed for every user. See XWIKI-21063. |
| D4 quick-action | KO | the synonyms are "system notification filters", "notification filters", "filter preferences", "system filters", "notification settings" and "notification preferences". Quick Actions reads 30 characters after the slash, a generic limit of the xwiki-slash plugin, so the ID "notificationsSystemFiltersPreferences" and the name "Notifications System Filters Preferences" give no result, while "notificationsSystemFilters" and "Notifications System Filters" list the macro first, before the custom filters macro and the deprecated one. Of the synonyms only "system filters" finds the macro. "system notification filters", "notification settings" and "notification preferences" find nothing. "notification filters" and "filter preferences" list only "Notifications Filters Preferences (deprecated)", so a user who types what he wants gets the predecessor and never this macro. "notif" lists it sixth of 25 entries. The French and German names are the English one, so no other language is checked. |
| L1 consistency | OK | compared with notifications and mention: like notifications, no parameter is mandatory, there is no content, and the Quick Action inserts the macro right away with no dialog, unlike mention, whose reference is mandatory, which is by design. It declares the default of target. |
| L2 doc-parameters | KO | minor: the macro is documented on the page "Notification Settings Macros" of www.xwiki.org, with one table row per settings macro and one paragraph shared by the five macros on target and user. The parameters and their values are described, but there is no parameter table, no default for target and no mandatory flags. |
| L3 doc-example | KO | the page has no example with a parameter, so no example of the most common call, the profile call {{notificationsSystemFiltersPreferences user="XWiki.Admin" /}} with user. The example used for the other criteria is that call, the form that a user sees, since the only other call, {{notificationsSystemFiltersPreferences target="wiki" /}} , is the one of the notifications administration section. Each call is used once in XWiki Standard. |
| I1 pattern | OK | compared with children, the reference generator: from the Quick Actions menu, the entry "Notifications System Filters Preferences", found with "notif", inserts the macro right away with no dialog, as the entry of notificationsEmailPreferences does. From the Insert Macro dialog the Edit Macro dialog opens, whose two fields are optional, like children. |
| I2 zero-config | OK | inserting from Quick Actions or from the Insert Macro dialog with the default values gives {{notificationsSystemFiltersPreferences/}} , which shows the description and the table of the system filters of the current user in view mode, with no error. A guest sees an information message instead. |
| I3 instant | N/A | |
| I4 cursor | N/A | |
| I5 focus | OK | no parameter is mandatory. |
| E1 wysiwyg | KO | the editor shows the description of the macro and a loading spinner where the table is, and the spinner is still there 30 seconds after the page is reopened, while view mode shows the table after a few seconds. The editor never shows the filters, so what the macro displays cannot be seen while editing. |
| E2 errors | KO | invalid values are accepted silently. {{notificationsSystemFiltersPreferences target="maybe"/}} , target="" and the wrong case target="WIKI" show the same table as the valid values with no message. In the sources of the macro, any other target than "wiki" reads the page of the user for the links of the switches, but the table asks the system filters of a page named after the missing parameter, so the table and the page that a switch saves to do not match. {{notificationsSystemFiltersPreferences user="xwiki:XWiki.NoSuchUser"/}} , user="XWiki Admin" and user="maybe" , which is read as XWiki.maybe, show the table of a user that does not exist with no message. user="" shows "The given user reference is not supported, only DocumentUserReference are supported for now.", which does not name the parameter. A user without the administration right on the given user sees "You dont have administration right for the given user: {0}.", with the placeholder {0} not replaced by the reference, since the macro does not pass it to the translation, as in the sources of NotificationsPreferencesMacros. The changes of the switches were not tried with these values, to keep the preferences of the instance as they are. |
| E3 nesting | KO | in a list item and in a table cell, * {{notificationsSystemFiltersPreferences/}} , the macro shows "The [notificationsSystemFiltersPreferences] macro is a standalone macro and it cannot be used inline." in view mode. In a box it renders. The macro has no content, so the second half of the measure does not apply. |
| E4 inline-support | OK | the macro declares no inline support, and its output is a description and a table, blocks that cannot be inside a sentence. |
| E5 empty | N/A | E6: the macro has no content. |
| E6 inplace | N/A |
Parameters
| Parameter | C1 clarity | C2 mandatory | C3 defaults | C4 input-assistance | C5 groups | C6 order | C7 alternatives | C8 advanced | C9 technical | C13 constraints | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| user | KO | OK | OK | OK | OK | OK | N/A | OK | OK | OK | C1: the description is "User reference of the user for which to display and manipulate the filter preferences. This parameter is optional, default value is the context user. Note that for using this parameter, the context user needs administrator right on the given user reference." It uses developer terms, "user reference" and "context user", instead of saying that the field empty means the user who views the page, and the sentence about the administration right is hard to follow. It does not say that the field is ignored when target is "wiki". C3: the picker opens empty, which means the user who views the page, as the description says, and the value of the example, the user of the profile, differs on each page, so no value can be preselected. C4: a user picker, which suggests the users matching what the user types. |
| target | OK | OK | OK | KO | OK | OK | N/A | KO | OK | N/A | C1: the description is "Target of the macro (could be "user" for the given user or "wiki" for the current wiki)". It names the two valid values and what they mean, so it is enough to fill the field, but it starts with a circular "Target of the macro", refers to "the given user" without naming the User field, and does not say that "wiki" needs the administration right. C3: the field opens on the declared default, "user", which is the use of the example. C4: a plain text field for a choice between two values, user and wiki, which a select would fit, see E2: any other value is accepted silently. C8, minor: "wiki" shows the system filters of the whole wiki and is only meant for the notifications administration section, which XWiki Standard sets once, while the example of the profile of a user sets only user. The field is not marked as advanced. C13: the accepted values are a fixed list, counted under C4. |
Other notes
Outside the criteria: the message of the user without the administration right on the given user shows the unreplaced {0}, see E2.
KOs and tickets
Every KO needs a ticket covering it, see Report the KOs. One ticket can cover several KOs. Known issues filed for this macro are suggested in italics: link them as existing tickets when they cover the KO.
| KO | Criterion | Existing tickets | New tickets |
|---|---|---|---|
| D2 | D2 summary | XWIKI-25468 | |
| D3 | D3 category | XWIKI-21063 | XWIKI-25468 |
| D4 | D4 quick-action | XWIKI-25468 | |
| L2 | L2 doc-parameters | XWIKI-25468, XINFRA-525 | |
| L3 | L3 doc-example | XWIKI-25468, XINFRA-526 | |
| E1 | E1 wysiwyg | XWIKI-25468 | |
| E2 | E2 errors | XCOMMONS-3847 (partial), XRENDERING-823 (partial), XWIKI-25468 | |
| E3 | E3 nesting | XWIKI-25468 | |
| C1:user | C1 clarity, user | XWIKI-25468 | |
| C4:target | C4 input-assistance, target | XWIKI-25468 | |
| C8:target | C8 advanced, target | XWIKI-25468 |
Tickets
| Ticket | Origin | KOs covered | KOs partly covered |
|---|---|---|---|
| XWIKI-21063 | Existing | D3 | |
| XCOMMONS-3847 | New | E2 | |
| XRENDERING-823 | New | E2 | |
| XWIKI-25468 | New | C1:user C4:target C8:target D2 D3 D4 E1 E2 E3 L2 L3 | |
| XINFRA-525 | New | L2 | |
| XINFRA-526 | New | L3 |
Known issues of this macro
No known issue is specific to this macro.
68 more known issues affect every macro: see the Known issues.
Lucas Charpentier