diff options
author | Yury German <blueknight@gentoo.org> | 2016-02-12 22:22:00 -0500 |
---|---|---|
committer | Yury German <blueknight@gentoo.org> | 2016-02-12 22:22:00 -0500 |
commit | 657cafe0e955cf88033597f131aa50835140c617 (patch) | |
tree | cf21a30d319cb2a238a6cfb8b4eb3b20b1b5dcff /plugins/openid/consumer.php | |
parent | Adding New Mantra version 2.4.1.1 - Bug 574468 (diff) | |
download | blogs-gentoo-657cafe0e955cf88033597f131aa50835140c617.tar.gz blogs-gentoo-657cafe0e955cf88033597f131aa50835140c617.tar.bz2 blogs-gentoo-657cafe0e955cf88033597f131aa50835140c617.zip |
Updating plugins easy-table, jetpack, openid, public-post preview, talbe-of-contents-plus, wordress-mobile-pack - Bug 574468
Diffstat (limited to 'plugins/openid/consumer.php')
-rw-r--r-- | plugins/openid/consumer.php | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/plugins/openid/consumer.php b/plugins/openid/consumer.php index d12aabdb..e478ccbe 100644 --- a/plugins/openid/consumer.php +++ b/plugins/openid/consumer.php @@ -186,10 +186,17 @@ function openid_add_ax_extension($extensions, $auth_request) { require_once('Auth/OpenID/AX.php'); if ($auth_request->endpoint->usesExtension(Auth_OpenID_AX_NS_URI)) { + $default_fields = array( + Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson/friendly', 1, true), + Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email', 1, true), + Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson', 1, true) + ); + $fields = apply_filters('openid_consumer_ax_fields', $default_fields); + $ax_request = new Auth_OpenID_AX_FetchRequest(); - $ax_request->add(Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson/friendly', 1, true)); - $ax_request->add(Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email', 1, true)); - $ax_request->add(Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson', 1, true)); + foreach ($fields as $field) { + $ax_request->add($field); + } $extensions[] = $ax_request; } @@ -201,13 +208,18 @@ function openid_add_ax_extension($extensions, $auth_request) { /** * Build an SReg attribute query extension if we've never seen this OpenID before. + * + * @uses apply_filters() Calls 'openid_consumer_sreg_required_fields' and + * 'openid_consumer_sreg_required_fields' to collect sreg fields. */ function openid_add_sreg_extension($extensions, $auth_request) { if(!get_user_by_openid($auth_request->endpoint->claimed_id)) { require_once('Auth/OpenID/SReg.php'); if ($auth_request->endpoint->usesExtension(Auth_OpenID_SREG_NS_URI_1_0) || $auth_request->endpoint->usesExtension(Auth_OpenID_SREG_NS_URI_1_1)) { - $extensions[] = Auth_OpenID_SRegRequest::build(array(),array('nickname','email','fullname')); + $required = apply_filters('openid_consumer_sreg_required_fields', array()); + $optional = apply_filters('openid_consumer_sreg_optional_fields', array('nickname','email','fullname')); + $extensions[] = Auth_OpenID_SRegRequest::build($required, $optional); } } @@ -237,13 +249,11 @@ function openid_consumer_xrds_simple($xrds) { // OpenID Consumer Service $return_urls = array_unique(apply_filters('openid_consumer_return_urls', array(openid_service_url('consumer', 'login_post')))); if (!empty($return_urls)) { + // fixes https://github.com/diso/wordpress-xrds-simple/issues/4 + unset( $xrds['main']['type'] ); $xrds = xrds_add_simple_service($xrds, 'OpenID Consumer Service', 'http://specs.openid.net/auth/2.0/return_to', $return_urls); } } return $xrds; } - - - - |