Page MenuHomePhabricator

Special:MobileOptions is empty for third parties and when beta is disabled and this is confusing
Closed, ResolvedPublic3 Estimated Story Points

Description

There's been some confusion since we updated the special page Special:MobileOptions.

If you are a third party (means: not Wikimedia) that uses MediaWiki and the MobileFrontend extension on your server, since MobileFrontend beta features are disabled by default (via $wgMFEnableBeta = false), the settings page is empty.

Replication steps

Load up an instance of MobileFrontend:
In LocalSettings.php add:

$wgMFEnableBeta = false;
$wgMFAdvancedMobileContributions = false;
$wgMFEnableFontChanger = [ 'base' => false, 'stable' => false ];

Click the hamburger menu - the settings page loads but there is nothing there!

Expected: The link should not have shown. The settings page should 404.

Acceptance criteria

  • Special:MobileOptions should render "No settings are available". which displays when wgMFEnableFontChanger is not enabled. This should show when javascript is disabled (use a noscript tag) or when JS is enabled but the feature flag is not (render a message)
  • If $wgMFEnableFontChanger , $wgMFEnableBeta and $wgMFAdvancedMobileContributions are all disabled for the current user, do not render the settings link in the menu
  • If $wgMFEnableFontChanger , $wgMFEnableBeta and $wgMFAdvancedMobileContributions are all disabled for the current user, visiting Special:MobileOptions should 404.

Note: If $wgMFEnableFontChanger is enabled to keep things simple, we will still render the settings link for non-JS users.

Before starting

Take a look at the code for wgMFEnableFontChanger to understand how our feature flags work and how to use includes/features/FeaturesManager.php .

Mentor

@Jdlrobson

Event Timeline

ovasileva triaged this task as Medium priority.Jul 3 2018, 2:01 PM
ovasileva added subscribers: alexhollender, ovasileva.

Potential copy: "No setting are currently available for this wiki". @alexhollender - thoughts?

(We can also disable the settings link if there are no settings which may make more sense)

(We can also disable the settings link if there are no settings which may make more sense)

I think that might actually make more sense. Can we just remove it altogether and only display it when there are setting available?

ovasileva set the point value for this task to 3.

Can we just remove it altogether and only display it when there are setting available?

+1

Jdlrobson lowered the priority of this task from Medium to Low.Apr 9 2019, 4:15 PM

@Jdlrobson Are you available to mentor this task? :) I would probably also co-mentor it, but I'm a bit out of MobileFrontend for quite some time and having someone who can also take a look would be very nice :)

Jdlrobson renamed this task from Special:MobileOptions is empty for third parties to Special:MobileOptions is empty for third parties and this is confusing.Nov 13 2019, 5:05 PM
Jdlrobson updated the task description. (Show Details)

Change 556472 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[mediawiki/extensions/MobileFrontend@master] Settings restricted to JS users when available

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

I note that this task exists on GCI, despite the Google Code In project having been removed. Is that an error?

@Pppery should probably be removed from Google Code In. Turned out to be trickier than we realised.

Jdlrobson renamed this task from Special:MobileOptions is empty for third parties and this is confusing to Special:MobileOptions is empty for third parties and when beta is disabled and this is confusing.Jan 7 2020, 1:02 AM
Jdlrobson raised the priority of this task from Low to Medium.

Currently conversing with @alexhollender about how to proceed with this.

Change 556472 abandoned by Jdlrobson:
Settings restricted to JS users when available

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

Change 562606 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[mediawiki/skins/MinervaNeue@master] Settings link is hidden to non-JS users when beta and AMC unavailable

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

Change 562606 merged by jenkins-bot:
[mediawiki/skins/MinervaNeue@master] Settings link is hidden to non-JS users when beta and AMC unavailable

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

nray removed nray as the assignee of this task.Jan 9 2020, 5:40 PM
nray added a subscriber: nray.

Nothing to QA until T237290 lands. I've added QA steps to that task.

ovasileva claimed this task.

Sounds good, resolving this