[], 'access_token' => [ 'Content-Type' => 'application/x-www-form-urlencoded' ], 'user_details' => [], ]; protected function compileScopes() { return implode(' ', $this->scope); } protected function getAuthorizeUrl() { return $this->authorizeUrl; } protected function getAccessTokenBaseUrl() { return $this->accessTokenUrl; } protected function getUserDataUrl() { return $this->userDataUrl; } protected function parseTokenResponse($response) { return $this->parseJsonTokenResponse($response); } protected function parseUserDataResponse($response) { return json_decode($response, true); } protected function userId() { return $this->getProviderUserData('id'); } protected function nickname() { return $this->getProviderUserData('given_name'); } protected function fullName() { return $this->getProviderUserData('name'); // this is the full name } protected function avatar() { return $this->getProviderUserData('picture'); } protected function email() { return $this->getProviderUserData('email'); } }