diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index c8429f5f..28195f42 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -15,7 +15,6 @@ use Cache; use Carbon\Carbon; use Illuminate\Contracts\Events\Dispatcher; use Illuminate\Http\Request; -use Laravel\Socialite\Facades\Socialite; use Mail; use Session; use URL; @@ -393,47 +392,4 @@ class AuthController extends Controller { return json(['token' => Auth::guard('jwt')->refresh()]); } - - public function oauthLogin($driver) - { - return Socialite::driver($driver)->redirect(); - } - - public function oauthCallback(Dispatcher $dispatcher, Filter $filter, $driver) - { - $remoteUser = Socialite::driver($driver)->user(); - - $email = $remoteUser->email; - if (empty($email)) { - abort(500, 'Unsupported OAuth Server which does not provide email.'); - } - - $user = User::where('email', $email)->first(); - if (!$user) { - $whip = new Whip(); - $ip = $whip->getValidIpAddress(); - $ip = $filter->apply('client_ip', $ip); - - $user = new User(); - $user->email = $email; - $user->nickname = $remoteUser->nickname ?? $remoteUser->name ?? $email; - $user->score = option('user_initial_score'); - $user->avatar = 0; - $user->password = ''; - $user->ip = $ip; - $user->permission = User::NORMAL; - $user->register_at = Carbon::now(); - $user->last_sign_at = Carbon::now()->subDay(); - $user->verified = true; - - $user->save(); - $dispatcher->dispatch('auth.registration.completed', [$user]); - } - - $dispatcher->dispatch('auth.login.ready', [$user]); - Auth::login($user); - $dispatcher->dispatch('auth.login.succeeded', [$user]); - - return redirect('/user'); - } } diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 8bdcbb54..7927f776 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -14,9 +14,6 @@ class AppServiceProvider extends ServiceProvider $this->app->singleton(Services\Option::class); $this->app->alias(Services\Option::class, 'options'); $this->app->singleton(Services\Webpack::class); - $this->app->singleton('oauth.providers', function () { - return new \Illuminate\Support\Collection(); - }); } public function boot(Request $request) diff --git a/app/Providers/ViewServiceProvider.php b/app/Providers/ViewServiceProvider.php index 7befffd6..33788334 100644 --- a/app/Providers/ViewServiceProvider.php +++ b/app/Providers/ViewServiceProvider.php @@ -75,9 +75,5 @@ class ViewServiceProvider extends ServiceProvider } // @codeCoverageIgnoreEnd }); - - View::composer('auth.oauth', function ($view) { - $view->with('providers', resolve('oauth.providers')); - }); } } diff --git a/composer.json b/composer.json index b08fd2e5..ef486164 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,6 @@ "nesbot/carbon": "^2.0", "nunomaduro/collision": "^4.1", "rcrowe/twigbridge": "^0.11.3", - "socialiteproviders/manager": "^3.5", "spatie/laravel-translation-loader": "^2.6", "symfony/process": "^5.0", "symfony/yaml": "^5.0", diff --git a/composer.lock b/composer.lock index 6ed05bbf..a8c6dfaa 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "69f751f6f450fda951eb714d895e7981", + "content-hash": "7a2599e2e1372d9c5ff7de7e1b75d5e2", "packages": [ { "name": "blessing/filter", @@ -1019,16 +1019,16 @@ }, { "name": "facade/ignition", - "version": "2.0.5", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/facade/ignition.git", - "reference": "38e1b180544bfefebe37e0f65980792ea78a534a" + "reference": "5261c488a1e8a7c3ebdf6a4037c34f5ddeb33922" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/ignition/zipball/38e1b180544bfefebe37e0f65980792ea78a534a", - "reference": "38e1b180544bfefebe37e0f65980792ea78a534a", + "url": "https://api.github.com/repos/facade/ignition/zipball/5261c488a1e8a7c3ebdf6a4037c34f5ddeb33922", + "reference": "5261c488a1e8a7c3ebdf6a4037c34f5ddeb33922", "shasum": "" }, "require": { @@ -1086,7 +1086,7 @@ "laravel", "page" ], - "time": "2020-05-28T22:49:07+00:00" + "time": "2020-06-01T09:04:48+00:00" }, { "name": "facade/ignition-contracts", @@ -1708,16 +1708,16 @@ }, { "name": "laravel/framework", - "version": "v7.13.0", + "version": "v7.14.1", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "6fa69bfbd57744a5bbec5538ce483919b3fd625f" + "reference": "469b7719a8dca40841a74f59f2e9f30f01d3a106" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/6fa69bfbd57744a5bbec5538ce483919b3fd625f", - "reference": "6fa69bfbd57744a5bbec5538ce483919b3fd625f", + "url": "https://api.github.com/repos/laravel/framework/zipball/469b7719a8dca40841a74f59f2e9f30f01d3a106", + "reference": "469b7719a8dca40841a74f59f2e9f30f01d3a106", "shasum": "" }, "require": { @@ -1728,7 +1728,7 @@ "ext-mbstring": "*", "ext-openssl": "*", "league/commonmark": "^1.3", - "league/flysystem": "^1.0.8", + "league/flysystem": "^1.0.34", "monolog/monolog": "^2.0", "nesbot/carbon": "^2.17", "opis/closure": "^3.1", @@ -1754,6 +1754,9 @@ "conflict": { "tightenco/collect": "<5.5.33" }, + "provide": { + "psr/container-implementation": "1.0" + }, "replace": { "illuminate/auth": "self.version", "illuminate/broadcasting": "self.version", @@ -1857,7 +1860,7 @@ "framework", "laravel" ], - "time": "2020-05-26T14:32:43+00:00" + "time": "2020-06-02T22:34:18+00:00" }, { "name": "laravel/passport", @@ -1932,70 +1935,6 @@ ], "time": "2020-05-05T14:25:53+00:00" }, - { - "name": "laravel/socialite", - "version": "v4.3.2", - "source": { - "type": "git", - "url": "https://github.com/laravel/socialite.git", - "reference": "4bd66ee416fea04398dee5b8c32d65719a075db4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/4bd66ee416fea04398dee5b8c32d65719a075db4", - "reference": "4bd66ee416fea04398dee5b8c32d65719a075db4", - "shasum": "" - }, - "require": { - "ext-json": "*", - "guzzlehttp/guzzle": "~6.0", - "illuminate/http": "~5.7.0|~5.8.0|^6.0|^7.0", - "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0", - "league/oauth1-client": "~1.0", - "php": "^7.1.3" - }, - "require-dev": { - "illuminate/contracts": "~5.7.0|~5.8.0|^6.0|^7.0", - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^7.0|^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.x-dev" - }, - "laravel": { - "providers": [ - "Laravel\\Socialite\\SocialiteServiceProvider" - ], - "aliases": { - "Socialite": "Laravel\\Socialite\\Facades\\Socialite" - } - } - }, - "autoload": { - "psr-4": { - "Laravel\\Socialite\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Laravel wrapper around OAuth 1 & OAuth 2 libraries.", - "homepage": "https://laravel.com", - "keywords": [ - "laravel", - "oauth" - ], - "time": "2020-02-04T15:30:01+00:00" - }, { "name": "lcobucci/jwt", "version": "3.3.2", @@ -2301,69 +2240,6 @@ ], "time": "2020-05-18T15:13:39+00:00" }, - { - "name": "league/oauth1-client", - "version": "1.7.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/oauth1-client.git", - "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/fca5f160650cb74d23fc11aa570dd61f86dcf647", - "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647", - "shasum": "" - }, - "require": { - "guzzlehttp/guzzle": "^6.0", - "php": ">=5.5.0" - }, - "require-dev": { - "mockery/mockery": "^0.9", - "phpunit/phpunit": "^4.0", - "squizlabs/php_codesniffer": "^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "League\\OAuth1\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ben Corlett", - "email": "bencorlett@me.com", - "homepage": "http://www.webcomm.com.au", - "role": "Developer" - } - ], - "description": "OAuth 1.0 Client Library", - "keywords": [ - "Authentication", - "SSO", - "authorization", - "bitbucket", - "identity", - "idp", - "oauth", - "oauth1", - "single sign on", - "trello", - "tumblr", - "twitter" - ], - "time": "2016-08-17T00:36:58+00:00" - }, { "name": "league/oauth2-server", "version": "8.1.0", @@ -2875,16 +2751,16 @@ }, { "name": "opis/closure", - "version": "3.5.3", + "version": "3.5.4", "source": { "type": "git", "url": "https://github.com/opis/closure.git", - "reference": "cac47092144043d5d676e2e7cf8d0d2f83fc89ca" + "reference": "1d0deef692f66dae5d70663caee2867d0971306b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/cac47092144043d5d676e2e7cf8d0d2f83fc89ca", - "reference": "cac47092144043d5d676e2e7cf8d0d2f83fc89ca", + "url": "https://api.github.com/repos/opis/closure/zipball/1d0deef692f66dae5d70663caee2867d0971306b", + "reference": "1d0deef692f66dae5d70663caee2867d0971306b", "shasum": "" }, "require": { @@ -2932,7 +2808,7 @@ "serialization", "serialize" ], - "time": "2020-05-25T09:32:45+00:00" + "time": "2020-06-07T11:41:29+00:00" }, { "name": "paragonie/random_compat", @@ -3791,63 +3667,6 @@ ], "time": "2020-03-02T05:59:21+00:00" }, - { - "name": "socialiteproviders/manager", - "version": "v3.5", - "source": { - "type": "git", - "url": "https://github.com/SocialiteProviders/Manager.git", - "reference": "7a5872d9e4b22bb26ecd0c69ea9ddbaad8c0f570" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/SocialiteProviders/Manager/zipball/7a5872d9e4b22bb26ecd0c69ea9ddbaad8c0f570", - "reference": "7a5872d9e4b22bb26ecd0c69ea9ddbaad8c0f570", - "shasum": "" - }, - "require": { - "illuminate/support": "~5.4|~5.7.0|~5.8.0|^6.0|^7.0", - "laravel/socialite": "~3.0|~4.0", - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^5.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "SocialiteProviders\\Manager\\ServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "SocialiteProviders\\Manager\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Andy Wendt", - "email": "andy@awendt.com" - }, - { - "name": "Anton Komarev", - "email": "a.komarev@cybercog.su" - }, - { - "name": "Miguel Piedrafita", - "email": "soy@miguelpiedrafita.com" - } - ], - "description": "Easily add new or override built-in providers in Laravel Socialite.", - "time": "2020-03-08T16:54:44+00:00" - }, { "name": "spatie/laravel-translation-loader", "version": "2.6.1", @@ -7216,16 +7035,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.4.0", + "version": "v4.5.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120" + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/53c2753d756f5adb586dca79c2ec0e2654dd9463", + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463", "shasum": "" }, "require": { @@ -7264,7 +7083,7 @@ "parser", "php" ], - "time": "2020-04-10T16:34:50+00:00" + "time": "2020-06-03T07:24:19+00:00" }, { "name": "phar-io/manifest", diff --git a/resources/views/auth/oauth.twig b/resources/views/auth/oauth.twig deleted file mode 100644 index 66ef2c3f..00000000 --- a/resources/views/auth/oauth.twig +++ /dev/null @@ -1,11 +0,0 @@ -{% if providers|length > 0 %} -