Files
perceptron-viewer/app/Providers/AppServiceProvider.php
T
2026-09-09 17:20:11 +02:00

50 lines
1.1 KiB
PHP

<?php
namespace App\Providers;
use Carbon\CarbonImmutable;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Support\Facades\Date;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\RateLimiter;
use Illuminate\Http\Request;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
//
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
$this->configureDefaults();
RateLimiter::for('training', function (Request $request) {
return [
Limit::perMinute(50),
Limit::perMinute(15)->by($request->ip()),
];
});
}
/**
* Configure default behaviors for production-ready applications.
*/
protected function configureDefaults(): void
{
Date::use(CarbonImmutable::class);
DB::prohibitDestructiveCommands(
app()->isProduction(),
);
}
}