mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-01 22:40:39 +02:00
[ticket/13248] Allow specifying different auth provider in provider collection
PHPBB3-13248
This commit is contained in:
@@ -38,6 +38,7 @@ class provider_collection extends \phpbb\di\service_collection
|
|||||||
/**
|
/**
|
||||||
* Get an auth provider.
|
* Get an auth provider.
|
||||||
*
|
*
|
||||||
|
* @param string $provider_name The name of the auth provider
|
||||||
* @return object Default auth provider selected in config if it
|
* @return object Default auth provider selected in config if it
|
||||||
* does exist. Otherwise the standard db auth
|
* does exist. Otherwise the standard db auth
|
||||||
* provider.
|
* provider.
|
||||||
@@ -46,11 +47,12 @@ class provider_collection extends \phpbb\di\service_collection
|
|||||||
* auth provider exist. The db auth provider
|
* auth provider exist. The db auth provider
|
||||||
* should always exist in a phpBB installation.
|
* should always exist in a phpBB installation.
|
||||||
*/
|
*/
|
||||||
public function get_provider()
|
public function get_provider($provider_name = '')
|
||||||
{
|
{
|
||||||
if ($this->offsetExists('auth.provider.' . basename(trim($this->config['auth_method']))))
|
$provider_name = ($provider_name !== '') ?: basename(trim($this->config['auth_method']));
|
||||||
|
if ($this->offsetExists('auth.provider.' . $provider_name))
|
||||||
{
|
{
|
||||||
return $this->offsetGet('auth.provider.' . basename(trim($this->config['auth_method'])));
|
return $this->offsetGet('auth.provider.' . $provider_name);
|
||||||
}
|
}
|
||||||
// Revert to db auth provider if selected method does not exist
|
// Revert to db auth provider if selected method does not exist
|
||||||
else if ($this->offsetExists('auth.provider.db'))
|
else if ($this->offsetExists('auth.provider.db'))
|
||||||
|
Reference in New Issue
Block a user