Thanks was causing history views to do 4 DB queries per row, due to the
RevisionStore::getPreviousRevision() call. The reason for doing it is
that it doesn't make sense to thank someone for a diff which includes
multiple authors. This does not apply to history pages -- even for
filtered history views, you can thank someone for a specific revision on
the basis of its edit summary.
So, distinguish between history tools and diff tools. Do the expensive
thing only for diff tools.
Bug: T284274
Change-Id: Ib631100b82958065a327dd18c927af4a78b8be15
- Add hook to enable blocking thanks
- Check if user is blocked from 'thanks' action
and disable giving thanks from API and UI if so
Bug: T242785
Change-Id: I290a7c39c6fcb22a8ab4a9ecbad76a239cb18ea0
Extension requires 1.35+, so the hooks are available
Bug: T255494
Bug: T255495
Change-Id: I334928ebd081d53a7d95466e6c4b75715b941ec4
Depends-On: Ib2ab2e26a95affdd1dfa6b945f752157580ea2d3
"Page language change" is an occasional administrative
action, for which thanking should be possible.
And thanking for an upload is same as thanking
for creating a page.
Bug: T254992
Change-Id: Id4ecc6e11968e51b166e80f30e636da902857dd7
CI already ensures that MobileFrontend is loaded alongside Thanks, so
the defensive check in the code isn't needed; ext.thanks.mobilediff is
defined statically, it's just injected into the page dynamically in the
onBeforeSpecialMobileDiffDisplay hook handler.
Bug: T232875
Change-Id: I5612a9be65f4d4adf4912645856540dbb04d2b34
The thanks icon had styling issues as it didn't use the mobile
icon and button fundamental components.
The icon should also be inside the button, the element should not
be both a button and an icon.
Bug: T229440
Change-Id: I0136466fe1452f904961b89ae7677fc1a511adab
Minerva now provides default styling for these links.
Also removing 'grunt-stylelint' package as there are no
CSS/LESS files in this extension any more.
Bug: T232102
Change-Id: I4e8b44d3159ab4a87103fa8471c7b1b145ac6016
Never loaded directly as entry point, and only used by one module
as dependency. Does not need to be its own module bundle.
Bug: T202154
Change-Id: I8bfcdc82f96fac6e3e269fcef351a822acd860bd
Only prohibit users from using Thanks if they are blocked from the
associated page. This allows partially blocked users to use thanks
most of the time.
It also allows blocked users to thank on their own talk page, if
they are allowed to edit it, even if they are sitewide blocked.
Bug: T221371
Change-Id: Ic99ec38ea200e806963951b2dd67e56ecde63752
When the thanks button is clicked a thanks will be
queued, that the user can cancel by clicking "cancel"
before the action is completed.
This should help the majority of users experiencing
accidental thanks.
Bug: T63737
Change-Id: I807f729c1b1a9e9b5952685bb18f540f81d70f47
Instead use mediawiki.ui and ResourceLoaderImageModule
Other changes:
* Add gender support to thanks-button-thanked
Depends-On: I0745e112d11026ed59d8daca990b313305cd094a
Bug: T198151
Change-Id: I82ae596330aff8387653c65a6bab5ff729641a80
See I2291c69d9df17c1a9e4ab1b7d4cbc73bc51d3ebb for the anticipated
hard-deprecation of this method in core.
Bug: T197492
Change-Id: I5d4ec96afe82910ffd18377b5f5f94405f73e9eb
This extension is useless without Echo, and the API modules already
disable themselves if it's not installed. Just absolutely require Echo
to be installed.
Change-Id: I653eea78668bfe0875bc5a33e2d45607106d4ee5
Many log entries are associated to (exactly one) revision,
and for these (only, and only where the log type is
whitelisted) we add a thank-link that behaves exactly
as the thank-link on diff and history pages.
Bug: T189752
Change-Id: I5f4e84c65d4fe2d95b20cdb3c3f9522ad3e5f422
Many log entries are associated to (exactly one) revision,
and for these (only, and only where the log type is
whitelisted) we add a thank-link that behaves exactly
as the thank-link on diff and history pages.
Bug: T186763
Change-Id: I2af380d5cb06f19ef9eb5b232d95ad87379b5d9b
Originally introduced in b84eedc74e, it was reverted for security concerns.
New changes:
* Instead of bundling the log summary with notification, load it on display
* If the log event has been suppressed after the thanks for it has been sent,
silently delete the event to prevent the confusion of linking to something
zapped.
* Keep the 'already sent' cache key compatible with old format
* Validate the log id in the API
* Change ApiCoreThank::getRevisionFromParams() to ApiCoreThank::getRevisionFromId()
Bug: T186855
Bug: T188791
Depends-On: Ic5e9db0def857d9dcecbd06bf081c8c83712c1ea
Change-Id: I03aea7d9f4dfa0fe49639c53968deabf89999d2d
Add a 'log' API parameter (for the log ID to thank), and add
a whitelist config variable for specifying which log types are
thankable.
Bug: T186855
Change-Id: I58ae90c9729c0066f952e90fca2cf99b029d0d9b
* Change dependencies for 'ext.thanks.mobilediff' from
'mediawiki.notification' to 'mediawiki.notify' because
ext.thanks.mobilediff.js uses mw.notify and not mw.notification.
* Add module 'mediawiki.api' to dependencies for 'ext.thanks' because
ext.thanks.thank.js uses mw.Api.
Change-Id: Icae08555c5ec0297c390e5161f9269b9c84f1145
Rather than using mobile.startup, switch
to using mediawiki.notification which is more
lightweight and does same thing.
Bug: T155801
Change-Id: I23d75272602766e24e8b01410f4a88609eda6dee
The mobile.special.mobilediff.scripts module was removed from
MobileFrontend[1] but remains listed in its extension.json and as a
dependency here. This removes the dependency so it can be removed
from MobileFrontend.
[1] See I40ac27e56fcc3ccc58870660d0ed7353c7a17748
Bug: T131757
Change-Id: I399ef6a0abaeaf3ca10461f4579a0a3fcdab9df3