mediawiki-skins-MinervaNeue/includes/Menu
Martin Urbanec 8b04c45fb2 Do not use data-mw=interface when watchstar is used as a CTA
Why:
Minerva uses watchstar both as a client to action=watch
and as a CTA prompting users to create a new account.
To prevent error messages about permissions from being
displayed when logged in as a temp account (or not logged in
at all), the API requests should be only sent when users
actually has watchlist permissions.

This patch fixes that by only passing data-mw=interface when
the watchstar is actually used as part of MW watchlist interface,
ie. when user is logged in. That means the `mediawiki.page.watch.ajax`
module in core can avoid the watchstar element when it is not meant
as a watchstar, but as a "sign up" CTA button.

What:
* Make it possible to change (or omit) data-mw in SingleMenuEntry
  by a new constructor parameter.
* Make ToolbarBuilder::createWatchPageAction omit data-mw when
  user does not have watchlist permissions.

Notes: Based on coversation with Krinkle in
Ia0acdaf4dea5aa6788f89fdd73c5dba9af9f1ed7.

Bug: T344925
Change-Id: Id9d6d9e7394b52d11ac6ce0b7d33319b3a761789
2023-10-23 08:59:08 +02:00
..
Entries Do not use data-mw=interface when watchstar is used as a CTA 2023-10-23 08:59:08 +02:00
Main Replace some moved Title class uses, now MediaWiki\Title\Title 2023-08-19 19:36:46 +02:00
PageActions Do not use data-mw=interface when watchstar is used as a CTA 2023-10-23 08:59:08 +02:00
User Remove old :before icon selectors and update selectors to not use minerva and wikimedia prefixes 2023-09-06 13:53:22 -05:00
Definitions.php Replace some moved Title class uses, now MediaWiki\Title\Title 2023-08-19 19:36:46 +02:00
Group.php Standardize user overflow menu 2023-04-28 19:33:43 +00:00