Update Laravel socailite package

Update Laravel socailite package to fix facebook authentication.
This commit is contained in:
Manish Verma
2018-08-16 14:47:19 +05:30
parent cfec60b43f
commit 89809c3123
50 changed files with 647 additions and 361 deletions

View File

@@ -2,9 +2,16 @@
namespace Laravel\Socialite;
use Illuminate\Support\Arr;
use Illuminate\Support\Str;
use InvalidArgumentException;
use Illuminate\Support\Manager;
use Laravel\Socialite\Two\GithubProvider;
use Laravel\Socialite\Two\GoogleProvider;
use Laravel\Socialite\One\TwitterProvider;
use Laravel\Socialite\Two\FacebookProvider;
use Laravel\Socialite\Two\LinkedInProvider;
use Laravel\Socialite\Two\BitbucketProvider;
use League\OAuth1\Client\Server\Twitter as TwitterServer;
class SocialiteManager extends Manager implements Contracts\Factory
@@ -30,7 +37,7 @@ class SocialiteManager extends Manager implements Contracts\Factory
$config = $this->app['config']['services.github'];
return $this->buildProvider(
'Laravel\Socialite\Two\GithubProvider', $config
GithubProvider::class, $config
);
}
@@ -44,7 +51,7 @@ class SocialiteManager extends Manager implements Contracts\Factory
$config = $this->app['config']['services.facebook'];
return $this->buildProvider(
'Laravel\Socialite\Two\FacebookProvider', $config
FacebookProvider::class, $config
);
}
@@ -58,7 +65,7 @@ class SocialiteManager extends Manager implements Contracts\Factory
$config = $this->app['config']['services.google'];
return $this->buildProvider(
'Laravel\Socialite\Two\GoogleProvider', $config
GoogleProvider::class, $config
);
}
@@ -72,7 +79,7 @@ class SocialiteManager extends Manager implements Contracts\Factory
$config = $this->app['config']['services.linkedin'];
return $this->buildProvider(
'Laravel\Socialite\Two\LinkedInProvider', $config
LinkedInProvider::class, $config
);
}
@@ -86,7 +93,7 @@ class SocialiteManager extends Manager implements Contracts\Factory
$config = $this->app['config']['services.bitbucket'];
return $this->buildProvider(
'Laravel\Socialite\Two\BitbucketProvider', $config
BitbucketProvider::class, $config
);
}
@@ -101,7 +108,8 @@ class SocialiteManager extends Manager implements Contracts\Factory
{
return new $provider(
$this->app['request'], $config['client_id'],
$config['client_secret'], $config['redirect']
$config['client_secret'], $this->formatRedirectUrl($config),
Arr::get($config, 'guzzle', [])
);
}
@@ -130,10 +138,25 @@ class SocialiteManager extends Manager implements Contracts\Factory
return array_merge([
'identifier' => $config['client_id'],
'secret' => $config['client_secret'],
'callback_uri' => $config['redirect'],
'callback_uri' => $this->formatRedirectUrl($config),
], $config);
}
/**
* Format the callback URL, resolving a relative URI if needed.
*
* @param array $config
* @return string
*/
protected function formatRedirectUrl(array $config)
{
$redirect = value($config['redirect']);
return Str::startsWith($redirect, '/')
? $this->app['url']->to($redirect)
: $redirect;
}
/**
* Get the default driver name.
*