Page MenuHomePhabricator

Special:Investigate: Update tab's label text
Closed, ResolvedPublic

Description

Goal

We want to make the labels in Special:Investigate more intuitive and translation friendly.

Acceptance criteria

Update the label text for the tabs on top:

  • Preliminary check → Account information
  • Compare → IPs & User agents
  • Timeline → no change, keep Timeline

Event Timeline

Prtksxna created this task.May 28 2020, 4:23 AM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMay 28 2020, 4:23 AM
Niharika triaged this task as Medium priority.May 28 2020, 7:06 PM
Niharika updated the task description. (Show Details)
Ammarpad claimed this task.Jun 1 2020, 5:37 PM

Change 601380 had a related patch set uploaded (by Ammarpad; owner: Ammarpad):
[mediawiki/extensions/CheckUser@master] Reword label text for the Investigate table tabs

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

We should discuss whether we want to change these names in the code (e.g. class names, message keys, etc), but I think that goes beyond the scope of this task.

(If we do change them, we might want to change them to something more general, in case the tab labels change again. Alternatively we could not change anything in the code, but add class documentation with a more detailed explanation of the relevant tab.)

Change 601380 merged by jenkins-bot:
[mediawiki/extensions/CheckUser@master] Reword label text for the Investigate table tabs

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

Change 602745 had a related patch set uploaded (by Tchanders; owner: Tchanders):
[mediawiki/extensions/CheckUser@master] SpecialInvestigate: Decouple URL parameters from tab labels

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

In a recent meeting we decided not to change the URL parameters, since the labels may change again in response to user feedback, until the product is released. The above patch addresses this.

dbarratt added a subscriber: dbarratt.

In a recent meeting we decided not to change the URL parameters, since the labels may change again in response to user feedback, until the product is released. The above patch addresses this.

Hmm, I've been thinking about this and I'm not sure this is a good idea anymore. MediaWiki seems to consider them as "subpages" so maybe it makes sense for them to change.

The bigger problem is that this creates two translation strings (one for the tab name and another for the URL). I can't see wikis keeping these in relative sync.

What do you think @Prtksxna & @Niharika ?

In a recent meeting we decided not to change the URL parameters, since the labels may change again in response to user feedback, until the product is released. The above patch addresses this.

Hmm, I've been thinking about this and I'm not sure this is a good idea anymore. MediaWiki seems to consider them as "subpages" so maybe it makes sense for them to change.

The bigger problem is that this creates two translation strings (one for the tab name and another for the URL). I can't see wikis keeping these in relative sync.

What do you think @Prtksxna & @Niharika ?

Summary from our latest meeting: we decided to keep the URLs and tab labels the same after all.

dom_walden added a subscriber: dom_walden.

The tabs in English have been changed to what is in the description.

It should be noted that it will not work with certain characters in the translation files.

E.g. with en.json such as:

{...
"checkuser-investigate-tab-compare": "IPs > User agents",
...}

If you try to go to the Compare tab you end up with an error like:

Bad title

The requested page title contains invalid characters: ">".

Other characters (e.g. #) just give you a blank page with no error.

As the translation is something that can be modified, it might be worth documenting the invalid characters that shouldn't be used (which so far from experimenting I see include # < > [ ] | { }).

I tested in Hebrew. Translations looked fine (to me) and go to the correct place.

But I wondered, further to the above, what range of characters we support. As a start, I opened the Compare tab in all the languages which (so far) have a translation in their respective *.json file. They all appeared to open on the right page. Might be worth doing investigating further though.

This is making me think that it would be a good idea to have a separate message for the URL parameter after all.

dmaza added a subscriber: dmaza.EditedJun 15 2020, 3:07 PM

Or we could just do [0|1|2] for the tabs like Gmail does for the different accounts. It is very unlikely that someone will "type" the URL to the subpage 'cause the token is needed.

My point is that friendly subpages urls at this point are adding complexity with little to no benefit. No one is gonna go to a subpage directly unless they copy the url 'cause they won't work without the token anyway

dbarratt added a comment.EditedJun 15 2020, 3:23 PM

This is making me think that it would be a good idea to have a separate message for the URL parameter after all.

I don't think this is a problem. Most editors are going to know that there are characters that are not allowed in page titles.
https://www.mediawiki.org/wiki/Manual:Page_title#Invalid_page_titles

Oh, another thing I noticed: while on one of the tabs, if I change the interface language (e.g. via uselang URL param or Special:Preferences) and refresh I am taken to a blank page (no data, just the 3 tabs). This appears to be because the URL is still in whatever my language was before I changed it, but now it expects it to be in the language I just changed to.

I don't know if this will be a problem in reality. Do CheckUser need to change their interface languages mid-investigation for any reason?

dmaza added a comment.Jun 15 2020, 5:21 PM

Oh, another thing I noticed: while on one of the tabs, if I change the interface language (e.g. via uselang URL param or Special:Preferences) and refresh I am taken to a blank page (no data, just the 3 tabs). This appears to be because the URL is still in whatever my language was before I changed it, but now it expects it to be in the language I just changed to.

I don't know if this will be a problem in reality. Do CheckUser need to change their interface languages mid-investigation for any reason?

This is happening 'cause of the way we are trying to match the URL param with the corresponding tab (depends on the translated message), which kinda validates what I was saying in https://phabricator.wikimedia.org/T253823#6224325 about the approach.

This is making me think that it would be a good idea to have a separate message for the URL parameter after all.

I don't think this is a problem. Most editors are going to know that there are characters that are not allowed in page titles.
https://www.mediawiki.org/wiki/Manual:Page_title#Invalid_page_titles

There is nothing enforcing this so it all depends on the person doing the translations

Niharika closed this task as Resolved.Fri, Jul 31, 9:43 PM