#Thanks extension allows positive feedback on revisions by logged in users, including comments on #flow boards.
Pywikibot does not support this feature yet.
#pywikibot-flow does exist, though. Details of implementing support for #flow can be found in T67119.
***
Support needs to be added for the features which follow. More can be added later on.
=====1. Adding thanks to normal revisions.
#pywikibot-flow does exist.
This project needs to add support for:- Under the History tab of every page, there is a list of revisions of the page containing details of the timestamp the edit was made and the user who made the edits. Next to each revision (if the revision is not by the current logged in user), there is a !!thank!! link. Clicking on this link will send an notification to the corresponding user using the `Echo` extension, unless the user has opted out of receiving thanks notifications. Pywikibot must add support for adding thanks to normal revisions.
=====2. Adding thanks to comments on #flow boards.
- Flow extension provides a discussion and collaboration system for talk pages. If Flow is installed (along with its dependencies), the !!thank!! link for the corresponding user is available under comments on the Flow boards, clicking which will have the same effect of sending the user `Echo` Notifications.
=====3. Getting lists of thanks
* adding thanks to normal revisions- Each time a user is thanked, a record of the action is added as a [[ https://www.mediawiki.org/wiki/Special:Log/thanks | log entry ]] at !!Special:Log/thanks!!. Furthermore, classes like [[ https://doc.wikimedia.org/mediawiki-core/master/php/classRevision.html | Revision ]] contain the metadata details of a revision. Pywikibot must implement support for getting lists of thanks, including access to all related metadata as objects, using such existing classes.
=====4. Adding a `thanks_enabled` User property
* adding thanks to comments on #flow boards- Users can disable !!thanks!! notifications if they want to. In this case, when the !!thanks!! link against their revision is clicked, a "thanked'' message appears instead of the link, but no notification is sent ( T57401 deals with privacy of !!thanks!! preferences.) A `thanks_enabled` property needs to be added for the same to the [[ https://doc.wikimedia.org/mediawiki-core/master/php/classUser.html | User ]] class.
=====5. Creating a table for !!thanked!! statistics.
- [[ https://commons.wikimedia.org/w/index.php?title=User:F%C3%A6/sandbox&oldid=149050523 | This link ]] has tables showing top thankers for two wikis with number of thanks. Pywikibot must add a bot which can create similar tables (both for thankers and the thanked?) showing statistics for top `x` (where x can be taken as a parameter) users with corresponding number of `thanks`, for any wiki and for any month (also other time intervals like a week or a year?).
Other possible features/additions can be inspired from the tasks listed below:
- {T90404}
* getting lists of thanks, including access to all related metadata as objects, using existing classes such as the Revision where they already exist- {T71636}
* (if the thanks preference is public; see T57401) a User class property indicating whether the account has thanks enabled- {T60485}
* create a bot that produces a table like those on https://commons.wikimedia.org/w/index.php?title=User:F%C3%A6/sandbox&oldid=149050523 for any wiki and any month - {T51541}
***
Mentors: @jayvdb, @Legoktm
Microtasks:
* {T129051}
* { T129193}
* { T111735}