use Juniyasyos\FilamentSettingsHub\Facades\FilamentSettingsHub;
use Juniyasyos\FilamentSettingsHub\Services\Contracts\SettingHold;
FilamentSettingsHub::register([
SettingHold::make()
->order(2)
->label('Site Settings') // to translate label just use direct translation path like `messages.text.name`
->icon('heroicon-o-globe-alt')
->route('filament.admin.pages.site-settings') // use page / route
->page(\Juniyasyos\FilamentSettingsHub\Pages\SiteSettings::class) // use page / route
->description('Name, Logo, Site Profile') // to translate label just use direct translation path like `messages.text.name`
->group('General') // to translate label just use direct translation path like `messages.text.name`,
]);
use Juniyasyos\FilamentSettingsHub\Traits\UseShield;
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(FilamentLaravelBackupPlugin::make());
}
}
namespace App\Filament\Pages;
use Juniyasyos\FilamentLaravelBackup\Pages\Backups as BaseBackups;
class Backups extends BaseBackups
{
protected static ?string $navigationIcon = 'heroicon-o-cpu-chip';
public function getHeading(): string | Htmlable
{
return 'Application Backups';
}
public static function getNavigationGroup(): ?string
{
return 'Core';
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use App\Filament\Pages\Backups;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->usingPage(Backups::class)
);
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->usingPolingInterval('10s') // default value is 4s
);
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->usingQueue('my-queue') // default value is null
);
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->timeout(120) // default value is max_execution_time from php.ini, or 30s if it wasn't defined
);
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->noTimeout()
);
}
}
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Juniyasyos\FilamentLaravelBackup\FilamentLaravelBackupPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FilamentLaravelBackupPlugin::make()
->authorize(fn (): bool => auth()->user()->email === '[email protected]'),
);
}
}