Page MenuHomePhabricator

[SUGGESTION] change $wgOpenIDConsumerForce so that it fully specifies an OpenID provider (Url, logo, ...)
Closed, ResolvedPublic

Description

(filed for tracking)

RE: https://www.mediawiki.org/wiki/Extension_talk:OpenID#Suggestion:_change_.24wgOpenIDConsumerForce_so_that_it_fully_specifies_an_OpenID_provider_.28Url.2C_logo.2C_....29_22773

I'd left the question deliberately vague trying to create a generic "How do you submit patches" documentation bit.

I actually have a series of patches in git, pulled from gerrit as specified in the download section. The patches are currently based on 7e5b4d13b9 (master as of writing this).

This is about extending $wgOpenIDConsumerForce to be able to specify an OpenIDProvider instead of just a flat URL. This is useful if the provider varies by username and you wish to display the login form like the builtin providers.

If you specify $wgOpenIDConsumerForce as a string it continues to behave as before (tested).
If you don't specify $wgOpenIDConsumerForce it continues to behave as before (tested).
If you specify an OpenIDProvider, e.g. $wgOpenIDConsumerForce = new OpenIDProvider('wp', 'www.wordpress-site.com', 'Wordpress-site.com Username', 'http://www.wordpress-site.com/author/{username}/' ); it will display a login form asking for the username; skips rendering other providers' forms. (tested and using)

In the last case (or a future one with a specified list of providers, instead of just the one) the generic provider 'openid' (arbitrary url) may not be present. To handle this I removed the special case logic in

OpenIDProvider::getLoginFormHTML
skin/openid.js

The special case used to, for the provider 'openid', name the field 'openid_url' instead of "openid_provider_param_$id". There is now a hidden input 'openid_url' always present and the 'openid' provider is treated the same as everything else.

I tried to test the code paths that were effected by the change I made after each patch. There are quite a few options though so there is a chance that I missed one that would be a confounding factor. To ease review I tried to break it into several logically distinct patches that stepped in the right direction.

UnwashedMeme (talk)‎21:49, 22 January 2013


Version: master
Severity: enhancement
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=19346

Details

Reference
bz44819

Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 1:15 AM
bzimport set Reference to bz44819.
  • Bug 19346 has been marked as a duplicate of this bug. ***

This has been "highest priority" for more than three months now, which makes me doubt if that's really the case.

(In reply to comment #4)

This has been "highest priority" for more than three months now, which makes
me doubt if that's really the case.

it's urgent, because we need this, Setting to "high" now to make some people happy.

Well, solving this ticket depends on bug 21751 which you have set to low priority. So shouldn't bug 21751 be highest priority instead?

(In reply to comment #6)

Well, solving this ticket depends on bug 21751 which you have set to low
priority. So shouldn't bug 21751 be highest priority instead?

Yes. I have to fix this; work in progress (not stopped!) together with solution of bug is here https://gerrit.wikimedia.org/r/#/c/55287/

Change 55287 had a related patch set (by UnwashedMeme) published:
(bug 44819) introduction of array of $wgOpenIDProviders

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

Change 78532 had a related patch set (by Wikinaut) published:
Bug 44821 and Bug 44819

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

Change 78532 abandoned by Wikinaut:
Bug 44821 and Bug 44819

Reason:
cleaning up

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

Change 78535 had a related patch set (by Wikinaut) published:
Bug 44819 and bug 44821 merged version

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

  • Bug 21751 has been marked as a duplicate of this bug. ***

Change 78535 abandoned by Wikinaut:
Bug 44819, 44821, 47151 merged version

Reason:
there's no need for this cumulative patch any more, because "Bug 44821: OpenID Consumer wiki stalls with blank page" is solved by committing the related fix ( https://gerrit.wikimedia.org/r/78529 )

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

Change 55287 had a related patch set (by Wikinaut) published:
(bug 44819) introducing array of $wgOpenIDProviders and $wgOpenIDForcedProvider

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

Change 55287 had a related patch set (by Wikinaut) published:
(bug 44819) introducing array of $wgOpenIDProviders and $wgOpenIDForcedProvider

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

Change 55287 merged by Wikinaut:
(bug 44819) introducing array of $wgOpenIDProviders and $wgOpenIDForcedProvider

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