diff options
author | Yury German <blueknight@gentoo.org> | 2019-05-22 01:01:36 -0400 |
---|---|---|
committer | Yury German <blueknight@gentoo.org> | 2019-05-22 01:01:36 -0400 |
commit | 0914c92da22824025992c368c745546e41fbeb84 (patch) | |
tree | 965f6adf3b725e56d559fe4a93eff02281499dcc /plugins/jetpack/sal/class.json-api-token.php | |
parent | Deleting plugins for update (diff) | |
download | blogs-gentoo-0914c92da22824025992c368c745546e41fbeb84.tar.gz blogs-gentoo-0914c92da22824025992c368c745546e41fbeb84.tar.bz2 blogs-gentoo-0914c92da22824025992c368c745546e41fbeb84.zip |
Adding Plugins
Updating the following
akismet.4.1.2, google-authenticator.0.52, jetpack.7.3.1
Signed-off-by: Yury German <blueknight@gentoo.org>
Diffstat (limited to 'plugins/jetpack/sal/class.json-api-token.php')
-rw-r--r-- | plugins/jetpack/sal/class.json-api-token.php | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/plugins/jetpack/sal/class.json-api-token.php b/plugins/jetpack/sal/class.json-api-token.php new file mode 100644 index 00000000..10b16f6f --- /dev/null +++ b/plugins/jetpack/sal/class.json-api-token.php @@ -0,0 +1,60 @@ +<?php + +/** + * So that we have a real class instead of just passing around an array + */ +class SAL_Token { + + public $blog_id; + public $user_id; + public $scope; + public $client_id; + public $external_user_id; + public $external_user_code; + public $auth_type; + + function __construct( $blog_id, $user_id, $scope, $client_id, $external_user_id, $external_user_code, $auth_type ) { + $this->blog_id = $blog_id; // if blog_id is set and scope is not global, limit to that blog + $this->user_id = $user_id; + $this->client_id = $client_id; + $this->scope = $scope; + $this->external_user_id = $external_user_id; + $this->external_user_code = $external_user_code; + $this->auth_type = $auth_type; + } + + public function is_global() { + return $scope === 'global'; + } + + static function for_anonymous_user() { + return new SAL_Token( + null, + get_current_user_id(), + null, // there's only ever one scope in our current API implementation, auth or global + null, + null, + null, + null + ); + } + + static function from_rest_token( $token ) { + $user_id = isset( $token['user_id'] ) ? $token['user_id'] : get_current_user_id(); + $scope = isset( $token['scope'] ) ? $token['scope'][0] : null; + $client_id = isset( $token['client_id'] ) ? $token['client_id'] : null; + $external_user_id = isset( $token['external_user_id'] ) ? $token['external_user_id'] : null; + $external_user_code = isset( $token['external_user_code'] ) ? $token['external_user_code'] : null; + $auth = isset( $token['auth'] ) ? $token['auth'] : null; + + return new SAL_Token( + $token['blog_id'], + $user_id, + $scope, // there's only ever one scope in our current API implementation, auth or global + $client_id, + $external_user_id, + $external_user_code, + $auth + ); + } +} |