Page MenuHomePhabricator

Special:TopUsers doesn't update weekly and monthy points
Open, Needs TriagePublic

Event Timeline

Restricted Application added a project: Social-Tools. · View Herald TranscriptDec 17 2018, 11:33 PM
ashley added a subscriber: ashley.Dec 31 2018, 9:08 AM

Indeed, you've stumbled upon one of the many badly-documented (and probably badly-implemented as well) areas of SocialProfile. For the weekly/monthly stuff to work, you need to:

  1. have $wgUserStatsPointValues['points_winner_weekly'] and $wgUserStatsPointValues['points_winner_monthly'] defined in the wiki's LocalSettings.php (e.g. having the most points during a week/month earns you this many new points)
  2. give the generatetopusersreport user right to some (existing) user group
  3. visit the Special:GenerateTopUsersReport page on the wiki using an account that is in the group to which you've given the aforementioned user right -- if you want to create the monthly report, you can use Special:GenerateTopUsersReport/monthly (the default is weekly); furthermore the URL query parameter user_count can be used to control how many users are to be included in the generated reports (default is 10)
  4. manually repeat this process as often as desired (T159064 is about writing a script to help make this process a *bit* less manual)

Currently this remains the only way to populate the user_points_archive database table, as well as the points_winner_weekly and/or points_winner_monthly stats fields in the user_stats table for users.

Accessing the page with sufficient privileges creates an on-wiki page, the title of which is controlled by the appropriate two MediaWiki messages, which are MediaWiki:User-stats-report-weekly-page-title and MediaWiki:User-stats-report-monthly-page-title. This page will be created by the system account MediaWiki default and marked as a bot edit, and currently there is no way to *not* create this page.