- Delete unused Livewire Search test and fuel type select Blade component - Move subscription webhook listener from EventServiceProvider to AppServiceProvider - Add FUEL_TYPES global config to app layout for client-side use - Add Billable trait to User model and include email_verified_at in fillable - Implement monthly/annual cadence toggle with pricing display and smart CTA routing on homepage - Update VerifyApiKeyMiddlewareTest to use e10 instead of petrol - Refactor PollFuelPrices to auto-refresh stale stations based on last_seen_at - Add incremental polling with cached timestamp and effective-start-timestamp param to FuelPriceService - Normalize amenities/fuel_types from API objects to flat arrays, skip stations missing required fields - Log response body on API failures in ApiLogger - Default homepage sort to 'reliable' instead of 'price'
55 lines
1.2 KiB
PHP
55 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Filament\Resources\UserResource\Pages;
|
|
|
|
use App\Filament\Resources\UserResource;
|
|
use App\Filament\Resources\UserResource\Widgets\MissedNotificationsOverview;
|
|
use App\Models\User;
|
|
use Filament\Notifications\Notification;
|
|
use Filament\Resources\Pages\EditRecord;
|
|
|
|
class EditUser extends EditRecord
|
|
{
|
|
protected static string $resource = UserResource::class;
|
|
|
|
protected function getHeaderWidgets(): array
|
|
{
|
|
return [
|
|
MissedNotificationsOverview::class,
|
|
];
|
|
}
|
|
|
|
public function getHeaderWidgetsColumns(): int|array
|
|
{
|
|
return 3;
|
|
}
|
|
|
|
protected function getHeaderActions(): array
|
|
{
|
|
return [];
|
|
}
|
|
|
|
protected function afterSave(): void
|
|
{
|
|
/** @var User $user */
|
|
$user = $this->record;
|
|
|
|
$tier = $this->data['tier'] ?? null;
|
|
$cadence = $this->data['cadence'] ?? 'monthly';
|
|
|
|
if ($tier === null) {
|
|
return;
|
|
}
|
|
|
|
try {
|
|
UserResource::applyTier($user, $tier, $cadence);
|
|
} catch (\RuntimeException $e) {
|
|
Notification::make()
|
|
->title('Tier not changed')
|
|
->body($e->getMessage())
|
|
->warning()
|
|
->send();
|
|
}
|
|
}
|
|
}
|