Page MenuHomePhabricator

Display a popup with fixed mock data for an IP address on the specified page(s)
Closed, ResolvedPublic3 Estimated Story PointsSep 22 2020

Description

Create a ResourceLoader Module that is loaded with a hook (like BeforePageDisplay or HtmlPageLinkRendererEnd, the hook used could change) that displays a popup with fixed mock data when clicking on a button next to an IP address on the specified page(s).

This task is for displaying the basic data.

Follow-up tasks

Screenshot

No map.png (272ร—403 px, 14 KB)

Related Objects

Event Timeline

Niharika triaged this task as Medium priority.Aug 26 2020, 4:46 PM

@Prtksxna Could you add a mockup or a screenshot to this task? Thanks!

Summary from a meeting:

  • The first implementation should have a button next to the link. The popup shows on clicking the button, rather than on hover. That allows us to focus on implementing the popup first; we'll work on the user interaction in a later task.
  • This should only be available on Special:Investigate to begin with

@Niharika Although we decided on Special:Investigate in the meeting, that page is complicated by the fact that it displays IP addresses of logged-in users. Displaying information for these IP addresses is more complicated, since they are not directly associated with a revision or log ID (the user name is instead; the IPs are discarded after 90 days). It might be confusing if we offer this feature only for anon IPs on Special:Investigate. Could we start with a different page that only displays IPs on anonymous editors, but still only make the feature available to checkusers to begin with?

Tchanders renamed this task from Display a popup with fixed mock data when hovering over an IP address on the specified page(s) to Display a popup with fixed mock data for an IP address on the specified page(s).Sep 2 2020, 9:04 AM
Tchanders updated the task description. (Show Details)

@Niharika Although we decided on Special:Investigate in the meeting, that page is complicated by the fact that it displays IP addresses of logged-in users. Displaying information for these IP addresses is more complicated, since they are not directly associated with a revision or log ID (the user name is instead; the IPs are discarded after 90 days). It might be confusing if we offer this feature only for anon IPs on Special:Investigate. Could we start with a different page that only displays IPs on anonymous editors, but still only make the feature available to checkusers to begin with?

FYI: I've documented this problem in T261555: Allow CheckUser to provide IP addresses for logged in edits/actions

ARamirez_WMF changed the subtype of this task from "Task" to "Deadline".Sep 9 2020, 8:42 PM
ARamirez_WMF set Due Date to Sep 22 2020, 4:00 AM.

We discussed in our estimation this morning that we will add an API endpoint that accepts an IP address and returns relevant data. Once we are at a stage where we are actually enabling it for anonymous users we can deprecate it if needed. David volunteered to add that endpoint as part of T260603: Create an API endpoint that accepts a log id or revision id and returns mock data about the IP address.

We said we won't do the map in the first iteration. @Prtksxna could you update the screenshot without the map?

Change 628778 had a related patch set uploaded (by Tchanders; owner: Tchanders):
[mediawiki/extensions/IPInfo@master] Create a basic popup for displaying IP data on history pages

https://gerrit.wikimedia.org/r/628778

@Niharika @Prtksxna @dbarratt Just wanted to explain why the patch adds the popup to history pages instead of Special:Investigate... In short, I encountered a lot of design questions for Special:Investigate, whereas the history page was a much simpler case.

Here's a separate task, specifically for adding the popup to Special:Investigate - T263450

I've also separated out some of the more complex features of the popup (see updated task description). Unlike the prototype, we can't just make requests to third parties from the client, so we'll need to think a bit more about how to display the flag and the URL (assuming that we start only with country codes and ASNs). It would also be great to discuss how errors should look, including API failures and timeout errors (we should also agree a length of time that we consider a timeout). See individual tasks for more detail.

Here's how the popup looks on the history page:

image.png (240ร—651 px, 48 KB)

Change 628778 merged by jenkins-bot:
[mediawiki/extensions/IPInfo@master] Create a basic popup for displaying IP data on history pages

https://gerrit.wikimedia.org/r/628778

@Tchanders: Hi, the Due Date set for this open task was two months ago. Can you please either update or reset the Due Date (by clicking Edit Task), or set the status of this task to resolved via the Add Action... โ†’ Change Status dropdown in case that this task is done (as the patch is merged)? Thanks.