Neuordnung des SuperAdminBackends
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2025-12-31 10:06:21 +01:00
parent d7c2f85eeb
commit 8e4d4c2ff6
34 changed files with 526 additions and 131 deletions

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources\Coupons;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\Coupons\Pages\CreateCoupon;
use App\Filament\Resources\Coupons\Pages\EditCoupon;
use App\Filament\Resources\Coupons\Pages\ListCoupons;
@@ -24,6 +25,8 @@ class CouponResource extends Resource
{
protected static ?string $model = Coupon::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedTicket;
protected static ?int $navigationSort = 60;
@@ -32,7 +35,7 @@ class CouponResource extends Resource
public static function getNavigationGroup(): string
{
return __('Billing & Finanzen');
return __('admin.nav.commercial');
}
public static function form(Schema $schema): Schema

View File

@@ -2,34 +2,38 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\EmotionResource\Pages;
use App\Models\Emotion;
use BackedEnum;
use Filament\Actions;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Toggle;
use Filament\Forms\Form;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Schemas\Schema;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Tabs as SchemaTabs;
use Filament\Schemas\Components\Tabs\Tab as SchemaTab;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Table;
use UnitEnum;
use BackedEnum;
class EmotionResource extends Resource
{
protected static ?string $model = Emotion::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-face-smile';
protected static UnitEnum|string|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.tasks_emotions');
return __('admin.nav.curation');
}
protected static ?int $navigationSort = 10;
public static function form(Schema $form): Schema
@@ -87,8 +91,10 @@ class EmotionResource extends Resource
$value = $record->name;
if (is_array($value)) {
$loc = app()->getLocale();
return $value[$loc] ?? ($value['de'] ?? ($value['en'] ?? ''));
}
return (string) $value;
})
->searchable(['name->de', 'name->en'])

View File

@@ -2,36 +2,35 @@
namespace App\Filament\Resources;
use App\Exports\EventPurchaseExporter;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\EventPurchaseResource\Pages;
use App\Models\EventPurchase;
use App\Exports\EventPurchaseExporter;
use Filament\Forms\Components\DatePicker;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Textarea;
use Filament\Schemas\Schema;
use Filament\Resources\Resource;
use Filament\Tables;
use Filament\Actions\Action;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\ExportBulkAction;
use Filament\Actions\ViewAction;
use Filament\Forms\Components\DatePicker;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\TextInput;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\Filter;
use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Filters\TernaryFilter;
use Filament\Tables\Table;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;
use Illuminate\Support\Facades\Log;
use BackedEnum;
use UnitEnum;
class EventPurchaseResource extends Resource
{
protected static ?string $model = EventPurchase::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
public static function shouldRegisterNavigation(): bool
{
return false;
@@ -39,7 +38,7 @@ class EventPurchaseResource extends Resource
public static function getNavigationGroup(): string
{
return 'Billing & Finanzen';
return __('admin.nav.commercial');
}
public static function form(Schema $schema): Schema
@@ -99,7 +98,7 @@ class EventPurchaseResource extends Resource
TextColumn::make('package_id')
->label('Paket')
->badge()
->color(fn (string $state): string => match($state) {
->color(fn (string $state): string => match ($state) {
'starter_pack' => 'info',
'pro_pack' => 'success',
'lifetime_unlimited' => 'danger',
@@ -112,7 +111,7 @@ class EventPurchaseResource extends Resource
->sortable(),
TextColumn::make('platform')
->badge()
->color(fn (string $state): string => match($state) {
->color(fn (string $state): string => match ($state) {
'ios' => 'info',
'android' => 'success',
'web' => 'warning',
@@ -174,7 +173,7 @@ class EventPurchaseResource extends Resource
->visible(fn (EventPurchase $record): bool => $record->transaction_id && is_null($record->refunded_at))
->action(function (EventPurchase $record) {
$record->update(['refunded_at' => now()]);
Log::info('Refund processed for purchase ID: ' . $record->id);
Log::info('Refund processed for purchase ID: '.$record->id);
}),
])
->bulkActions([

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\DailyOps\DailyOpsCluster;
use App\Filament\Resources\EventResource\Pages;
use App\Filament\Resources\EventResource\RelationManagers\EventPackagesRelationManager;
use App\Models\Event;
@@ -27,6 +28,8 @@ class EventResource extends Resource
{
protected static ?string $model = Event::class;
protected static ?string $cluster = DailyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-calendar';
protected static UnitEnum|string|null $navigationGroup = null;
@@ -35,7 +38,7 @@ class EventResource extends Resource
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.event_management');
return __('admin.nav.events');
}
public static function form(Schema $form): Schema

View File

@@ -2,31 +2,37 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\EventTypeResource\Pages;
use App\Models\EventType;
use BackedEnum;
use Filament\Actions;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Schema;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Tabs as SchemaTabs;
use Filament\Schemas\Components\Tabs\Tab as SchemaTab;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Actions;
use Filament\Tables\Table;
use UnitEnum;
use BackedEnum;
class EventTypeResource extends Resource
{
protected static ?string $model = EventType::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-swatch';
protected static UnitEnum|string|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.event_management');
return __('admin.nav.events');
}
protected static ?int $navigationSort = 20;
public static function form(Schema $form): Schema
@@ -76,8 +82,10 @@ class EventTypeResource extends Resource
$value = $record->name;
if (is_array($value)) {
$loc = app()->getLocale();
return $value[$loc] ?? ($value['de'] ?? ($value['en'] ?? ''));
}
return (string) $value;
})
->searchable(['name->de', 'name->en'])

View File

@@ -2,34 +2,37 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\GiftVoucherResource\Pages;
use App\Models\GiftVoucher;
use App\Services\GiftVouchers\GiftVoucherService;
use BackedEnum;
use Carbon\Carbon;
use Filament\Forms\Components\Textarea;
use Filament\Actions\Action;
use Filament\Actions\ExportAction;
use Filament\Forms\Components\DateTimePicker;
use Filament\Forms\Components\Textarea;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Columns\BadgeColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Table;
use Filament\Tables\Actions\ExportAction;
use UnitEnum;
class GiftVoucherResource extends Resource
{
protected static ?string $model = GiftVoucher::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static string|BackedEnum|null $navigationIcon = 'heroicon-o-gift';
protected static ?int $navigationSort = 12;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.billing');
return __('admin.nav.commercial');
}
public static function table(Table $table): Table

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources\InfrastructureActionLogs;
use App\Filament\Clusters\RareAdmin\RareAdminCluster;
use App\Filament\Resources\InfrastructureActionLogs\Pages\ManageInfrastructureActionLogs;
use App\Models\InfrastructureActionLog;
use BackedEnum;
@@ -16,12 +17,19 @@ class InfrastructureActionLogResource extends Resource
{
protected static ?string $model = InfrastructureActionLog::class;
protected static ?string $cluster = RareAdminCluster::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedRectangleStack;
protected static string|UnitEnum|null $navigationGroup = 'Platform';
protected static string|UnitEnum|null $navigationGroup = null;
protected static ?int $navigationSort = 90;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.infrastructure');
}
public static function table(Table $table): Table
{
return $table

View File

@@ -2,33 +2,39 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\RareAdmin\RareAdminCluster;
use App\Filament\Resources\LegalPageResource\Pages;
use App\Models\LegalPage;
use Filament\Resources\Resource;
use Filament\Tables;
use Filament\Tables\Table;
use BackedEnum;
use Filament\Actions;
use Filament\Schemas\Schema;
use Filament\Forms\Components\DatePicker;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Toggle;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\DatePicker;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Tabs as SchemaTabs;
use Filament\Schemas\Components\Tabs\Tab as SchemaTab;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Table;
use UnitEnum;
use BackedEnum;
class LegalPageResource extends Resource
{
protected static ?string $model = LegalPage::class;
protected static ?string $cluster = RareAdminCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-scale';
protected static UnitEnum|string|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.content_library');
return __('admin.nav.content');
}
protected static ?int $navigationSort = 40;
public static function form(Schema $form): Schema

View File

@@ -2,8 +2,10 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\RareAdmin\RareAdminCluster;
use App\Filament\Resources\MediaStorageTargetResource\Pages;
use App\Models\MediaStorageTarget;
use BackedEnum;
use Filament\Actions;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\Select;
@@ -14,19 +16,20 @@ use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Table;
use UnitEnum;
use BackedEnum;
class MediaStorageTargetResource extends Resource
{
protected static ?string $model = MediaStorageTarget::class;
protected static ?string $cluster = RareAdminCluster::class;
protected static string|BackedEnum|null $navigationIcon = 'heroicon-o-server';
protected static string|UnitEnum|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.platform_management');
return __('admin.nav.storage');
}
protected static ?int $navigationSort = 60;

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\PackageAddonResource\Pages;
use App\Jobs\SyncPackageAddonToPaddle;
use App\Models\PackageAddon;
@@ -21,13 +22,15 @@ class PackageAddonResource extends Resource
{
protected static ?string $model = PackageAddon::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static \BackedEnum|string|null $navigationIcon = 'heroicon-o-plus-circle';
protected static ?int $navigationSort = 6;
public static function getNavigationGroup(): \BackedEnum|string|null
{
return __('admin.nav.platform_management');
return __('admin.nav.commercial');
}
public static function form(Schema $schema): Schema

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\PackageResource\Pages;
use App\Jobs\PullPackageFromPaddle;
use App\Jobs\SyncPackageToPaddle;
@@ -11,9 +12,9 @@ use Filament\Actions;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\ForceDeleteAction;
use Filament\Actions\ForceDeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\RestoreAction;
use Filament\Actions\RestoreBulkAction;
use Filament\Actions\ViewAction;
@@ -45,13 +46,15 @@ class PackageResource extends Resource
{
protected static ?string $model = Package::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static string|BackedEnum|null $navigationIcon = 'heroicon-o-cube';
protected static string|UnitEnum|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.platform_management');
return __('admin.nav.commercial');
}
protected static ?int $navigationSort = 5;

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\DailyOps\DailyOpsCluster;
use App\Filament\Resources\PhotoResource\Pages;
use App\Models\Event;
use App\Models\Photo;
@@ -11,7 +12,6 @@ use Filament\Forms\Components\FileUpload;
use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\Toggle;
use Filament\Forms\Form;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
@@ -22,6 +22,8 @@ class PhotoResource extends Resource
{
protected static ?string $model = Photo::class;
protected static ?string $cluster = DailyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-photo';
protected static UnitEnum|string|null $navigationGroup = null;
@@ -30,7 +32,7 @@ class PhotoResource extends Resource
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.event_management');
return __('admin.nav.events');
}
public static function form(Schema $form): Schema

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources\PhotoboothSettings;
use App\Filament\Clusters\RareAdmin\RareAdminCluster;
use App\Filament\Resources\PhotoboothSettings\Pages\EditPhotoboothSetting;
use App\Filament\Resources\PhotoboothSettings\Pages\ListPhotoboothSettings;
use App\Filament\Resources\PhotoboothSettings\Schemas\PhotoboothSettingForm;
@@ -20,6 +21,8 @@ class PhotoboothSettingResource extends Resource
{
protected static ?string $model = PhotoboothSetting::class;
protected static ?string $cluster = RareAdminCluster::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedRectangleStack;
protected static UnitEnum|string|null $navigationGroup = null;
@@ -28,7 +31,7 @@ class PhotoboothSettingResource extends Resource
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.platform_management');
return __('admin.nav.storage');
}
public static function form(Schema $schema): Schema

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources\PhotoboothSettings\Tables;
use Filament\Actions\EditAction;
use Filament\Tables;
use Filament\Tables\Table;
@@ -28,7 +29,7 @@ class PhotoboothSettingsTable
->label(__('Aktualisiert')),
])
->recordActions([
Tables\Actions\EditAction::make(),
EditAction::make(),
])
->headerActions([])
->bulkActions([]);

View File

@@ -3,6 +3,7 @@
namespace App\Filament\Resources;
use App\Exports\PurchaseHistoryExporter;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\PurchaseHistoryResource\Pages;
use App\Models\PurchaseHistory;
use BackedEnum;
@@ -21,13 +22,15 @@ class PurchaseHistoryResource extends Resource
{
protected static ?string $model = PurchaseHistory::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-receipt-refund';
protected static ?int $navigationSort = 20;
public static function getNavigationGroup(): string
{
return __('admin.nav.billing');
return __('admin.nav.commercial');
}
public static function form(Schema $form): Schema

View File

@@ -2,8 +2,12 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\DailyOps\DailyOpsCluster;
use App\Filament\Resources\PurchaseResource\Pages;
use App\Models\PackagePurchase;
use App\Notifications\Customer\RefundReceipt;
use App\Notifications\Ops\RefundProcessed;
use App\Services\Paddle\PaddleTransactionService;
use BackedEnum;
use Filament\Actions\Action;
use Filament\Actions\BulkActionGroup;
@@ -26,19 +30,18 @@ use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Notification;
use App\Notifications\Ops\RefundProcessed;
use App\Notifications\Customer\RefundReceipt;
use App\Services\Paddle\PaddleTransactionService;
class PurchaseResource extends Resource
{
protected static ?string $model = PackagePurchase::class;
protected static ?string $cluster = DailyOpsCluster::class;
protected static string|BackedEnum|null $navigationIcon = 'heroicon-o-shopping-cart';
public static function getNavigationGroup(): string
{
return 'Billing & Finanzen';
return __('admin.nav.billing');
}
protected static ?int $navigationSort = 10;

View File

@@ -2,33 +2,38 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\TaskResource\Pages;
use App\Models\Task;
use Filament\Forms\Components\KeyValue;
use BackedEnum;
use Filament\Actions;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Toggle;
use Filament\Forms\Components\MarkdownEditor;
use Filament\Schemas\Schema;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Tabs as SchemaTabs;
use Filament\Schemas\Components\Tabs\Tab as SchemaTab;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Table;
use Filament\Actions;
use UnitEnum;
use BackedEnum;
class TaskResource extends Resource
{
protected static ?string $model = Task::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-clipboard-document-check';
protected static UnitEnum|string|null $navigationGroup = null;
protected static ?int $navigationSort = 30;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.tasks_emotions');
return __('admin.nav.curation');
}
public static function getNavigationLabel(): string
@@ -106,8 +111,10 @@ class TaskResource extends Resource
$value = $record->title;
if (is_array($value)) {
$loc = app()->getLocale();
return $value[$loc] ?? ($value['de'] ?? ($value['en'] ?? ''));
}
return (string) $value;
})
->limit(60)
@@ -119,8 +126,10 @@ class TaskResource extends Resource
$value = optional($record->emotion)->name;
if (is_array($value)) {
$loc = app()->getLocale();
return $value[$loc] ?? ($value['de'] ?? ($value['en'] ?? ''));
}
return (string) ($value ?? '');
})
->sortable()
@@ -132,8 +141,10 @@ class TaskResource extends Resource
$value = optional($record->eventType)->name;
if (is_array($value)) {
$loc = app()->getLocale();
return $value[$loc] ?? ($value['de'] ?? ($value['en'] ?? ''));
}
return (string) ($value ?? '');
})
->toggleable(),

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\DailyOps\DailyOpsCluster;
use App\Filament\Resources\TenantFeedbackResource\Pages\ListTenantFeedback;
use App\Filament\Resources\TenantFeedbackResource\Pages\ViewTenantFeedback;
use App\Filament\Resources\TenantFeedbackResource\Schemas\TenantFeedbackForm;
@@ -19,6 +20,8 @@ class TenantFeedbackResource extends Resource
{
protected static ?string $model = TenantFeedback::class;
protected static ?string $cluster = DailyOpsCluster::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedChatBubbleBottomCenterText;
protected static UnitEnum|string|null $navigationGroup = null;
@@ -47,7 +50,7 @@ class TenantFeedbackResource extends Resource
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('Feedback & Support');
return __('admin.nav.feedback_support');
}
public static function getRelations(): array

View File

@@ -3,6 +3,7 @@
namespace App\Filament\Resources\TenantFeedbackResource\Tables;
use App\Models\TenantFeedback;
use Filament\Actions\ViewAction;
use Filament\Tables;
use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Table;
@@ -69,7 +70,7 @@ class TenantFeedbackTable
->toArray()),
])
->recordActions([
Tables\Actions\ViewAction::make(),
ViewAction::make(),
])
->bulkActions([]);
}

View File

@@ -2,12 +2,12 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\TenantPackageResource\Pages;
use App\Models\TenantPackage;
use BackedEnum;
use Filament\Actions\ActionGroup;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\CreateAction;
use Filament\Actions\DeleteAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
@@ -15,26 +15,25 @@ use Filament\Actions\ViewAction;
use Filament\Forms\Components\DateTimePicker;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\Toggle;
use Filament\Forms\Form;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
use UnitEnum;
class TenantPackageResource extends Resource
{
protected static ?string $model = TenantPackage::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-shopping-bag';
protected static ?string $slug = 'tenant-packages';
public static function getNavigationGroup(): string
{
return 'Billing & Finanzen';
return __('admin.nav.commercial');
}
public static function form(Schema $form): Schema

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\DailyOps\DailyOpsCluster;
use App\Filament\Resources\TenantResource\Pages;
use App\Filament\Resources\TenantResource\RelationManagers\PackagePurchasesRelationManager;
use App\Filament\Resources\TenantResource\RelationManagers\TenantPackagesRelationManager;
@@ -13,7 +14,6 @@ use Filament\Forms\Components\KeyValue;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Toggle;
use Filament\Notifications\Notification;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables;
@@ -25,13 +25,15 @@ class TenantResource extends Resource
{
protected static ?string $model = Tenant::class;
protected static ?string $cluster = DailyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-building-office';
protected static UnitEnum|string|null $navigationGroup = null;
public static function getNavigationGroup(): UnitEnum|string|null
{
return __('admin.nav.platform_management');
return __('admin.nav.tenants');
}
protected static ?int $navigationSort = 10;

View File

@@ -2,6 +2,7 @@
namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\UserResource\Pages;
use App\Models\User;
use BackedEnum;
@@ -10,29 +11,28 @@ use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\ViewAction;
use Filament\Schemas\Components\Section;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Form;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Section;
use Filament\Schemas\Schema;
use Filament\Tables;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
use UnitEnum;
class UserResource extends Resource
{
protected static ?string $model = User::class;
protected static ?string $cluster = WeeklyOpsCluster::class;
protected static BackedEnum|string|null $navigationIcon = 'heroicon-o-user-circle';
protected static ?string $slug = 'users';
public static function getNavigationGroup(): string
{
return 'Plattform-Verwaltung';
return __('admin.nav.platform');
}
public static function form(Schema $form): Schema