aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/develop/create_schema_files.php14
-rw-r--r--phpBB/phpbb/auth/provider/oauth/service/bitly.php3
-rw-r--r--phpBB/phpbb/auth/provider/oauth/service/interface.php3
-rw-r--r--phpBB/phpbb/db/migration/data/310/auth_provider_oauth.php13
4 files changed, 29 insertions, 4 deletions
diff --git a/phpBB/develop/create_schema_files.php b/phpBB/develop/create_schema_files.php
index c7d3cc4106..2cfe336511 100644
--- a/phpBB/develop/create_schema_files.php
+++ b/phpBB/develop/create_schema_files.php
@@ -923,7 +923,7 @@ function get_schema_struct()
),
);
- $schemda_data['auth_provider_oauth'] = array(
+ $schemda_data['auth_provider_oauth_token_storage'] = array(
'COLUMNS' => array(
'user_id' => array('UINT', 0), // phpbb_users.user_id
'session_id' => array('CHAR:32', ''), // phpbb_sessions.session_id used only when user_id not set
@@ -936,6 +936,18 @@ function get_schema_struct()
),
);
+ $schemda_data['auth_provider_oauth_account_assoc'] = array(
+ 'COLUMNS' => array(
+ 'user_id' => array('UINT', 0),
+ 'oauth_provider' => array('VCHAR'),
+ 'oauth_provider_id' => array('TEXT_UNI'),
+ ),
+ 'PRIMARY_KEY' => array(
+ 'user_id',
+ 'oauth_provider',
+ ),
+ );
+
$schema_data['phpbb_banlist'] = array(
'COLUMNS' => array(
'ban_id' => array('UINT', NULL, 'auto_increment'),
diff --git a/phpBB/phpbb/auth/provider/oauth/service/bitly.php b/phpBB/phpbb/auth/provider/oauth/service/bitly.php
index cbfad3d852..b6b99c0850 100644
--- a/phpBB/phpbb/auth/provider/oauth/service/bitly.php
+++ b/phpBB/phpbb/auth/provider/oauth/service/bitly.php
@@ -76,6 +76,7 @@ class phpbb_auth_provider_oauth_service_bitly extends phpbb_auth_provider_oauth_
// Send a request with it
$result = json_decode( $this->service_provider->request('user/info'), true );
- // Get the user id
+ // Return the unique identifier returned from bitly
+ return $result['data']['login'];
}
}
diff --git a/phpBB/phpbb/auth/provider/oauth/service/interface.php b/phpBB/phpbb/auth/provider/oauth/service/interface.php
index 4d06606f49..a69148695d 100644
--- a/phpBB/phpbb/auth/provider/oauth/service/interface.php
+++ b/phpBB/phpbb/auth/provider/oauth/service/interface.php
@@ -52,7 +52,8 @@ interface phpbb_auth_provider_oauth_service_interface
/**
* Returns the results of the authentication in json format
*
- * @return type The results of the authentication action in json format.
+ * @return string The unique identifier returned by the service provider
+ * that is used to authenticate the user with phpBB.
*/
public function perform_auth_login();
diff --git a/phpBB/phpbb/db/migration/data/310/auth_provider_oauth.php b/phpBB/phpbb/db/migration/data/310/auth_provider_oauth.php
index 92da42ba31..86e446e48e 100644
--- a/phpBB/phpbb/db/migration/data/310/auth_provider_oauth.php
+++ b/phpBB/phpbb/db/migration/data/310/auth_provider_oauth.php
@@ -18,7 +18,7 @@ class phpbb_db_migration_data_310_auth_provider_oauth extends phpbb_db_migration
{
return array(
'add_tables' => array(
- $this->table_prefix . 'auth_provider_oauth' => array(
+ $this->table_prefix . 'auth_provider_oauth_token_storage' => array(
'COLUMNS' => array(
'user_id' => array('UINT', 0), // phpbb_users.user_id
'session_id' => array('CHAR:32', ''), // phpbb_sessions.session_id used only when user_id not set
@@ -30,6 +30,17 @@ class phpbb_db_migration_data_310_auth_provider_oauth extends phpbb_db_migration
'oauth_provider' => array('INDEX', 'oauth_provider'),
),
),
+ $this->table_prefix . 'auth_provider_oauth_account_assoc' => array(
+ 'COLUMNS' => array(
+ 'user_id' => array('UINT', 0),
+ 'oauth_provider' => array('VCHAR'),
+ 'oauth_provider_id' => array('TEXT_UNI'),
+ ),
+ 'PRIMARY_KEY' => array(
+ 'user_id',
+ 'oauth_provider',
+ ),
+ ),
),
);
}