Page MenuHomePhabricator

Allow users to pick which Badges show on Timeline
Open, Needs TriagePublic

Description

Since we're only showing 2 badges, if a user has more (or if a user want to choose none), we should give them some way to choose.

Revisions and Commits

Event Timeline

chad raised the priority of this task from to Needs Triage.
chad updated the task description. (Show Details)
chad added a project: Badges.
chad moved this task to v1 on the Badges board.
chad added a subscriber: chad.
eadler added a project: Restricted Project.Jan 8 2016, 10:15 PM
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jan 8 2016, 10:41 PM
chad edited projects, added Badges (v1); removed Badges.
puzzle-it edited projects, added Badges (v0); removed Badges (v1).
puzzle-it moved this task from v0 to v1 on the Badges board.
puzzle-it edited projects, added Badges (v1); removed Badges (v0).
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jun 22 2016, 3:14 PM
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jul 4 2016, 9:00 PM
chad edited projects, added Badges; removed Badges (v1).

This got a mention in D17499, but when rendering a timeline we currently need two awards for each user who is going to get a full-sized profile image rendered.

This query is hard to build in SQL (or, at least, I don't have a good strategy to build it -- piles and piles of UNION ALL?) so the query we currently use is not efficient and overfetches data. This could become slow if some users have been awarded a very large number of badges.

When the mechanism discussed in this task (picking badges for timeline display) gets built, it should also serve as a cache for the timeline query so we can get two badges for each user efficiently, or we should find some alternate way to cache the display awards for each user to improve the performance of this query at scale.