mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
[feature/oauth] Update storage implementation due to inteface change
PHPBB3-11673
This commit is contained in:
parent
d04def0558
commit
6df2bd4fd3
2 changed files with 21 additions and 3 deletions
|
@ -613,7 +613,7 @@ class phpbb_auth_provider_oauth extends phpbb_auth_provider_base
|
||||||
// Clear all tokens belonging to the user on this servce
|
// Clear all tokens belonging to the user on this servce
|
||||||
$service_name = 'auth.provider.oauth.service.' . strtolower($link_data['oauth_service']);
|
$service_name = 'auth.provider.oauth.service.' . strtolower($link_data['oauth_service']);
|
||||||
$storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $service_name, $this->auth_provider_oauth_token_storage_table);
|
$storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $service_name, $this->auth_provider_oauth_token_storage_table);
|
||||||
$storage->clearToken();
|
$storage->clearToken($service_name);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -145,13 +145,31 @@ class phpbb_auth_provider_oauth_token_storage implements TokenStorageInterface
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
public function clearToken()
|
public function clearToken($service)
|
||||||
{
|
{
|
||||||
$this->cachedToken = null;
|
$this->cachedToken = null;
|
||||||
|
|
||||||
$sql = 'DELETE FROM ' . $this->auth_provider_oauth_table . '
|
$sql = 'DELETE FROM ' . $this->auth_provider_oauth_table . '
|
||||||
WHERE user_id = ' . $this->user->data['user_id'] . "
|
WHERE user_id = ' . $this->user->data['user_id'] . "
|
||||||
AND provider = '" . $this->db->sql_escape($this->service_name) . "'";
|
AND provider = '" . $this->db->sql_escape($service) . "'";
|
||||||
|
|
||||||
|
if ($this->user->data['user_id'] === ANONYMOUS)
|
||||||
|
{
|
||||||
|
$sql .= " AND session_id = '" . $this->user->data['session_id'] . "'";
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->db->sql_query($sql);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function clearAllTokens()
|
||||||
|
{
|
||||||
|
$this->cachedToken = null;
|
||||||
|
|
||||||
|
$sql = 'DELETE FROM ' . $this->auth_provider_oauth_table . '
|
||||||
|
WHERE user_id = ' . $this->user->data['user_id'];
|
||||||
|
|
||||||
if ($this->user->data['user_id'] === ANONYMOUS)
|
if ($this->user->data['user_id'] === ANONYMOUS)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue