diff options
Diffstat (limited to 'Year_3/TSDWL/LARAVEL/iBook/app/Providers')
5 files changed, 174 insertions, 0 deletions
| diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AppServiceProvider.php b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AppServiceProvider.php new file mode 100644 index 0000000..ee8ca5b --- /dev/null +++ b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AppServiceProvider.php @@ -0,0 +1,28 @@ +<?php + +namespace App\Providers; + +use Illuminate\Support\ServiceProvider; + +class AppServiceProvider extends ServiceProvider +{ +    /** +     * Register any application services. +     * +     * @return void +     */ +    public function register() +    { +        // +    } + +    /** +     * Bootstrap any application services. +     * +     * @return void +     */ +    public function boot() +    { +        // +    } +} diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AuthServiceProvider.php b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AuthServiceProvider.php new file mode 100644 index 0000000..22b77e6 --- /dev/null +++ b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/AuthServiceProvider.php @@ -0,0 +1,30 @@ +<?php + +namespace App\Providers; + +use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider; +use Illuminate\Support\Facades\Gate; + +class AuthServiceProvider extends ServiceProvider +{ +    /** +     * The policy mappings for the application. +     * +     * @var array<class-string, class-string> +     */ +    protected $policies = [ +        // 'App\Models\Model' => 'App\Policies\ModelPolicy', +    ]; + +    /** +     * Register any authentication / authorization services. +     * +     * @return void +     */ +    public function boot() +    { +        $this->registerPolicies(); + +        // +    } +} diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Providers/BroadcastServiceProvider.php b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/BroadcastServiceProvider.php new file mode 100644 index 0000000..395c518 --- /dev/null +++ b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/BroadcastServiceProvider.php @@ -0,0 +1,21 @@ +<?php + +namespace App\Providers; + +use Illuminate\Support\Facades\Broadcast; +use Illuminate\Support\ServiceProvider; + +class BroadcastServiceProvider extends ServiceProvider +{ +    /** +     * Bootstrap any application services. +     * +     * @return void +     */ +    public function boot() +    { +        Broadcast::routes(); + +        require base_path('routes/channels.php'); +    } +} diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Providers/EventServiceProvider.php b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/EventServiceProvider.php new file mode 100644 index 0000000..23499eb --- /dev/null +++ b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/EventServiceProvider.php @@ -0,0 +1,32 @@ +<?php + +namespace App\Providers; + +use Illuminate\Auth\Events\Registered; +use Illuminate\Auth\Listeners\SendEmailVerificationNotification; +use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; +use Illuminate\Support\Facades\Event; + +class EventServiceProvider extends ServiceProvider +{ +    /** +     * The event listener mappings for the application. +     * +     * @var array<class-string, array<int, class-string>> +     */ +    protected $listen = [ +        Registered::class => [ +            SendEmailVerificationNotification::class, +        ], +    ]; + +    /** +     * Register any events for your application. +     * +     * @return void +     */ +    public function boot() +    { +        // +    } +} diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Providers/RouteServiceProvider.php b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/RouteServiceProvider.php new file mode 100644 index 0000000..3bd3c81 --- /dev/null +++ b/Year_3/TSDWL/LARAVEL/iBook/app/Providers/RouteServiceProvider.php @@ -0,0 +1,63 @@ +<?php + +namespace App\Providers; + +use Illuminate\Cache\RateLimiting\Limit; +use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider; +use Illuminate\Http\Request; +use Illuminate\Support\Facades\RateLimiter; +use Illuminate\Support\Facades\Route; + +class RouteServiceProvider extends ServiceProvider +{ +    /** +     * The path to the "home" route for your application. +     * +     * This is used by Laravel authentication to redirect users after login. +     * +     * @var string +     */ +    public const HOME = '/home'; + +    /** +     * The controller namespace for the application. +     * +     * When present, controller route declarations will automatically be prefixed with this namespace. +     * +     * @var string|null +     */ +    // protected $namespace = 'App\\Http\\Controllers'; + +    /** +     * Define your route model bindings, pattern filters, etc. +     * +     * @return void +     */ +    public function boot() +    { +        $this->configureRateLimiting(); + +        $this->routes(function () { +            Route::prefix('api') +                ->middleware('api') +                ->namespace($this->namespace) +                ->group(base_path('routes/api.php')); + +            Route::middleware('web') +                ->namespace($this->namespace) +                ->group(base_path('routes/web.php')); +        }); +    } + +    /** +     * Configure the rate limiters for the application. +     * +     * @return void +     */ +    protected function configureRateLimiting() +    { +        RateLimiter::for('api', function (Request $request) { +            return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); +        }); +    } +} | 
