This package is a Laravel 5 service provider which provides support for Wargaming OpenID and is very easy to integrate with any project that requires Wargaming authentication.
Require this package with composer.
composer require azate/laravel-wargaming-authLaravel >=5.5 uses Package Auto-Discovery, so doesn't require you to manually add the ServiceProvider.
Copy the package config to your local config with the publish command:
php artisan vendor:publish --provider="Azate\LaravelWargamingAuth\WargamingServiceProvider"In routes/web.php:
Route::get('auth/wargaming', 'AuthController@redirectToWargaming')->name('auth.wargaming');
Route::get('auth/wargaming/callback', 'AuthController@handleWargamingCallback')->name('auth.wargaming.handle');In AuthController:
namespace App\Http\Controllers;
use Azate\LaravelWargamingAuth\WargamingAuth;
class AuthController extends Controller
{
/**
* @var WargamingAuth
*/
protected $wargaming;
/**
* AuthController constructor.
*
* @param WargamingAuth $wargaming
*/
public function __construct(WargamingAuth $wargaming)
{
$this->wargaming = $wargaming;
}
/**
* Redirect the user to the authentication page
*
* @return \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse
*/
public function redirectToWargaming()
{
return $this->wargaming->redirect();
}
/**
* Get user info and log in (hypothetically)
*
* @return \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse
*/
public function handleWargamingCallback()
{
if ($this->wargaming->validate()) {
$user = $this->wargaming->user();
//
return redirect('/');
}
return $this->redirectToWargaming();
}
}