1
0
forked from poc/pds
Files
poc-pds1/app/Providers/AppServiceProvider.php
2025-06-27 12:46:29 +05:30

61 lines
1.7 KiB
PHP

<?php
namespace App\Providers;
use App\Models\User;
use Illuminate\Support\Facades\Gate;
use Illuminate\Support\ServiceProvider;
use App\Policies\RolePolicy;
use App\Policies\PermissionPolicy;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
use Filament\Support\Facades\FilamentAsset;
use Filament\Support\Assets\Js;
use Illuminate\Support\Facades\Vite;
// use Doctrine\DBAL\Types\Type;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
//
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
// Gate::before(function ($user, $ability) {
// return $user->hasRole('Super Admin') ? true : null;
// });
Gate::before(function (User $user, string $ability) {
return $user->isSuperAdmin() ? true: null;
});
// FilamentAsset::register([
// Js::make('chart-js-plugins', Vite::asset('resources/js/filament-chart-js-plugins.js'))->module(),
// ]);
FilamentAsset::register([
Js::make('chart-js-plugins', Vite::asset('resources/js/filament-chart-js-plugins.js'))->module(),
]);
// URL::forceScheme('https');
// if (!Type::hasType('citext')) {
// Type::addType('citext', \Doctrine\DBAL\Platforms\PostgreSqlPlatform::class);
// }
Gate::policy(Role::class, RolePolicy::class);
Gate::policy(Permission::class, PermissionPolicy::class);
ini_set('max_execution_time', 300); // 300 seconds = 5 minutes
ini_set('memory_limit', '512M'); // 512MB
}
}