diff options
| author | Joseph Warner <hardolaf@hardolaf.com> | 2013-07-24 10:39:48 -0400 |
|---|---|---|
| committer | Joseph Warner <hardolaf@hardolaf.com> | 2013-07-24 10:40:42 -0400 |
| commit | 58d5820069a5889ae2f09319ae4f972c8b8f87a8 (patch) | |
| tree | 83073bb0422d6a33d78234083512cbefeeb3bad0 | |
| parent | ffb14a69887e0410c5093f23142bbc3375552620 (diff) | |
| download | forums-58d5820069a5889ae2f09319ae4f972c8b8f87a8.tar forums-58d5820069a5889ae2f09319ae4f972c8b8f87a8.tar.gz forums-58d5820069a5889ae2f09319ae4f972c8b8f87a8.tar.bz2 forums-58d5820069a5889ae2f09319ae4f972c8b8f87a8.tar.xz forums-58d5820069a5889ae2f09319ae4f972c8b8f87a8.zip | |
[feature/oauth] Basic login functionality now working
These changes are currently unique to OAuth and need to be made
generic so that any auth provider can modify the login template.
PHPBB3-11673
| -rw-r--r-- | phpBB/includes/functions.php | 7 | ||||
| -rw-r--r-- | phpBB/phpbb/auth/provider/oauth/oauth.php | 11 |
2 files changed, 8 insertions, 10 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index b14f03f5a0..02cdfd7ed1 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -3373,12 +3373,9 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa { $auth_provider = $phpbb_container->get('auth.provider.oauth'); $oauth_box_data = $auth_provider->get_login_data(); - foreach ($oauth_box_data as $service_name => $data) + foreach ($oauth_box_data as $data) { - $template->assign_block_vars('oauth', array( - 'SERVICE_NAME' => $service_name, - 'REDIRECT_URL' => $data['url'], - )); + $template->assign_block_vars('oauth', $data); } } diff --git a/phpBB/phpbb/auth/provider/oauth/oauth.php b/phpBB/phpbb/auth/provider/oauth/oauth.php index 6e822101e3..0762e202db 100644 --- a/phpBB/phpbb/auth/provider/oauth/oauth.php +++ b/phpBB/phpbb/auth/provider/oauth/oauth.php @@ -272,11 +272,12 @@ class phpbb_auth_provider_oauth extends phpbb_auth_provider_base $credentials = $service_provider->get_service_credentials(); if ($credentials['key'] && $credentials['secret']) { - $login_data[$service_provider] = array(); - - // Build the redirect url for the box - $redirect_url = build_url(false) . '&oauth_service=' . $service_name; - $login_data[$service_provider]['url'] = redirect($redirect_url, true); + $actual_name = str_replace('auth.provider.oauth.service.', '', $service_name); + $redirect_url = build_url(false) . '&login=external&oauth_service=' . $actual_name; + $login_data[$service_name] = array( + 'REDIRECT_URL' => redirect($redirect_url, true), + 'SERVICE_NAME' => $this->user->lang['AUTH_PROVIDER_OAUTH_SERVICE_' . strtoupper($actual_name)], + ); } } |
