add konto und konto optionen

This commit is contained in:
salam committed 2025-09-06 17:56:57 +02:00
1 parent 81370e9706
commit b005c7677e
89 files changed
+4406 -7

No files matched your search

@@ -0,0 +1,70 @@
<?php
namespace App\Filament\Resources\Gutachters;
use App\Filament\Resources\Gutachters\Pages\CreateGutachter;
use App\Filament\Resources\Gutachters\Pages\EditGutachter;
use App\Filament\Resources\Gutachters\Pages\ListGutachters;
use App\Filament\Resources\Gutachters\Schemas\GutachterForm;
use App\Filament\Resources\Gutachters\Tables\GutachtersTable;
use App\Models\Gutachter;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;
class GutachterResource extends Resource
{
protected static ?string $model = Gutachter::class;
protected static string|BackedEnum|null $navigationIcon = 'lucide-drafting-compass';
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $navigationLabel = 'Gutachter';
protected static ?string $modelLabel = 'Gutachter';
protected static ?string $pluralModelLabel = 'Gutachter';
public static function form(Schema $schema): Schema
{
return GutachterForm::configure($schema);
}
public static function table(Table $table): Table
{
return GutachtersTable::configure($table);
}
public static function getRelations(): array
{
return [
//
];
}
public static function getPages(): array
{
return [
'index' => ListGutachters::route('/'),
'create' => CreateGutachter::route('/create'),
'edit' => EditGutachter::route('/{record}/edit'),
];
}
public static function getRecordRouteBindingEloquentQuery(): Builder
{
return parent::getRecordRouteBindingEloquentQuery()
->withoutGlobalScopes([
SoftDeletingScope::class,
]);
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Resources\Gutachters\Pages;
use App\Filament\Resources\Gutachters\GutachterResource;
use Filament\Resources\Pages\CreateRecord;
class CreateGutachter extends CreateRecord
{
protected static string $resource = GutachterResource::class;
}
@@ -0,0 +1,23 @@
<?php
namespace App\Filament\Resources\Gutachters\Pages;
use App\Filament\Resources\Gutachters\GutachterResource;
use Filament\Actions\DeleteAction;
use Filament\Actions\ForceDeleteAction;
use Filament\Actions\RestoreAction;
use Filament\Resources\Pages\EditRecord;
class EditGutachter extends EditRecord
{
protected static string $resource = GutachterResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
ForceDeleteAction::make(),
RestoreAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Gutachters\Pages;
use App\Filament\Resources\Gutachters\GutachterResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListGutachters extends ListRecords
{
protected static string $resource = GutachterResource::class;
protected function getHeaderActions(): array
{
return [
CreateAction::make(),
];
}
}
@@ -0,0 +1,16 @@
<?php
namespace App\Filament\Resources\Gutachters\Schemas;
use Filament\Schemas\Schema;
class GutachterForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
//
]);
}
}
@@ -0,0 +1,36 @@
<?php
namespace App\Filament\Resources\Gutachters\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\ForceDeleteBulkAction;
use Filament\Actions\RestoreBulkAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\TrashedFilter;
use Filament\Tables\Table;
class GutachtersTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('name'),
])
->filters([
TrashedFilter::make(),
])
->recordActions([
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
ForceDeleteBulkAction::make(),
RestoreBulkAction::make(),
]),
]);
}
}
@@ -0,0 +1,61 @@
<?php
namespace App\Filament\Resources\Kontooptionens;
use App\Filament\Resources\Kontooptionens\Pages\CreateKontooptionen;
use App\Filament\Resources\Kontooptionens\Pages\EditKontooptionen;
use App\Filament\Resources\Kontooptionens\Pages\ListKontooptionens;
use App\Filament\Resources\Kontooptionens\Schemas\KontooptionenForm;
use App\Filament\Resources\Kontooptionens\Tables\KontooptionensTable;
use App\Models\Kontooptionen;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use UnitEnum;
class KontooptionenResource extends Resource
{
protected static ?string $model = Kontooptionen::class;
protected static string|BackedEnum|null $navigationIcon = 'lucide-key-square';
protected static string|UnitEnum|null $navigationGroup = 'Interne Administration';
protected static ?string $navigationLabel = 'Konto Optionen';
protected static ?string $modelLabel = 'Konto Option';
protected static ?string $pluralModelLabel = 'Konto Optionen';
public static function form(Schema $schema): Schema
{
return KontooptionenForm::configure($schema);
}
public static function table(Table $table): Table
{
return KontooptionensTable::configure($table);
}
public static function getRelations(): array
{
return [
//
];
}
public static function getPages(): array
{
return [
'index' => ListKontooptionens::route('/'),
'create' => CreateKontooptionen::route('/create'),
'edit' => EditKontooptionen::route('/{record}/edit'),
];
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Resources\Kontooptionens\Pages;
use App\Filament\Resources\Kontooptionens\KontooptionenResource;
use Filament\Resources\Pages\CreateRecord;
class CreateKontooptionen extends CreateRecord
{
protected static string $resource = KontooptionenResource::class;
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Kontooptionens\Pages;
use App\Filament\Resources\Kontooptionens\KontooptionenResource;
use Filament\Actions\DeleteAction;
use Filament\Resources\Pages\EditRecord;
class EditKontooptionen extends EditRecord
{
protected static string $resource = KontooptionenResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Kontooptionens\Pages;
use App\Filament\Resources\Kontooptionens\KontooptionenResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListKontooptionens extends ListRecords
{
protected static string $resource = KontooptionenResource::class;
protected function getHeaderActions(): array
{
return [
CreateAction::make(),
];
}
}
@@ -0,0 +1,16 @@
<?php
namespace App\Filament\Resources\Kontooptionens\Schemas;
use Filament\Schemas\Schema;
class KontooptionenForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
//
]);
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Filament\Resources\Kontooptionens\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class KontooptionensTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('name')->description(fn ($record): string => $record->description),
TextColumn::make('number_user')->alignCenter()->badge(),
TextColumn::make('number_gutachter')->alignCenter()->badge(),
])
->filters([
//
])
->recordActions([
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
}
}
@@ -0,0 +1,61 @@
<?php
namespace App\Filament\Resources\Kontos;
use App\Filament\Resources\Kontos\Pages\CreateKonto;
use App\Filament\Resources\Kontos\Pages\EditKonto;
use App\Filament\Resources\Kontos\Pages\ListKontos;
use App\Filament\Resources\Kontos\Schemas\KontoForm;
use App\Filament\Resources\Kontos\Tables\KontosTable;
use App\Models\Konto;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use UnitEnum;
class KontoResource extends Resource
{
protected static ?string $model = Konto::class;
protected static string|BackedEnum|null $navigationIcon = 'lucide-circle-user-round';
protected static string|UnitEnum|null $navigationGroup = 'Interne Administration';
protected static ?string $navigationLabel = 'Kontos';
protected static ?string $modelLabel = 'Konto';
protected static ?string $pluralModelLabel = 'Kontos';
public static function form(Schema $schema): Schema
{
return KontoForm::configure($schema);
}
public static function table(Table $table): Table
{
return KontosTable::configure($table);
}
public static function getRelations(): array
{
return [
//
];
}
public static function getPages(): array
{
return [
'index' => ListKontos::route('/'),
'create' => CreateKonto::route('/create'),
'edit' => EditKonto::route('/{record}/edit'),
];
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Resources\Kontos\Pages;
use App\Filament\Resources\Kontos\KontoResource;
use Filament\Resources\Pages\CreateRecord;
class CreateKonto extends CreateRecord
{
protected static string $resource = KontoResource::class;
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Kontos\Pages;
use App\Filament\Resources\Kontos\KontoResource;
use Filament\Actions\DeleteAction;
use Filament\Resources\Pages\EditRecord;
class EditKonto extends EditRecord
{
protected static string $resource = KontoResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Kontos\Pages;
use App\Filament\Resources\Kontos\KontoResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListKontos extends ListRecords
{
protected static string $resource = KontoResource::class;
protected function getHeaderActions(): array
{
return [
CreateAction::make(),
];
}
}
@@ -0,0 +1,16 @@
<?php
namespace App\Filament\Resources\Kontos\Schemas;
use Filament\Schemas\Schema;
class KontoForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
//
]);
}
}
@@ -0,0 +1,40 @@
<?php
namespace App\Filament\Resources\Kontos\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class KontosTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('gender')->label('Geschlecht'),
TextColumn::make('title')->label('Title'),
TextColumn::make('first_name')->label('Vorname'),
TextColumn::make('last_name')->label('Nachname'),
TextColumn::make('company')->label('Firma'),
TextColumn::make('address')->label('Adresse'),
TextColumn::make('place')->label('Ort'),
TextColumn::make('code')->label('PLZ'),
TextColumn::make('phone')->label('Telefon'),
TextColumn::make('uid_number')->label('UID Nummer'),
])
->filters([
//
])
->recordActions([
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
}
}
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Resources\Permissions\Pages;
use App\Filament\Resources\Permissions\PermissionResource;
use Filament\Resources\Pages\CreateRecord;
class CreatePermission extends CreateRecord
{
protected static string $resource = PermissionResource::class;
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Permissions\Pages;
use App\Filament\Resources\Permissions\PermissionResource;
use Filament\Actions\DeleteAction;
use Filament\Resources\Pages\EditRecord;
class EditPermission extends EditRecord
{
protected static string $resource = PermissionResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Permissions\Pages;
use App\Filament\Resources\Permissions\PermissionResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListPermissions extends ListRecords
{
protected static string $resource = PermissionResource::class;
protected function getHeaderActions(): array
{
return [
CreateAction::make(),
];
}
}
@@ -0,0 +1,63 @@
<?php
namespace App\Filament\Resources\Permissions;
use App\Filament\Resources\Permissions\Pages\CreatePermission;
use App\Filament\Resources\Permissions\Pages\EditPermission;
use App\Filament\Resources\Permissions\Pages\ListPermissions;
use App\Filament\Resources\Permissions\Schemas\PermissionForm;
use App\Filament\Resources\Permissions\Tables\PermissionsTable;
use App\Models\Permission;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use UnitEnum;
class PermissionResource extends Resource
{
protected static ?string $model = Permission::class;
protected static string|BackedEnum|null $navigationIcon = 'lucide-toggle-right';
protected static string|UnitEnum|null $navigationGroup = 'Interne Administration';
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $navigationLabel = 'Berechtigungen';
protected static ?string $modelLabel = 'Berechtigungen';
protected static ?string $pluralModelLabel = 'Berechtigungen';
public static function form(Schema $schema): Schema
{
return PermissionForm::configure($schema);
}
public static function table(Table $table): Table
{
return PermissionsTable::configure($table);
}
public static function getRelations(): array
{
return [
//
];
}
public static function getPages(): array
{
return [
'index' => ListPermissions::route('/'),
'create' => CreatePermission::route('/create'),
'edit' => EditPermission::route('/{record}/edit'),
];
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
@@ -0,0 +1,16 @@
<?php
namespace App\Filament\Resources\Permissions\Schemas;
use Filament\Schemas\Schema;
class PermissionForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
//
]);
}
}
@@ -0,0 +1,31 @@
<?php
namespace App\Filament\Resources\Permissions\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class PermissionsTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('name'),
])
->filters([
//
])
->recordActions([
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
}
}
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Resources\Users\Pages;
use App\Filament\Resources\Users\UserResource;
use Filament\Resources\Pages\CreateRecord;
class CreateUser extends CreateRecord
{
protected static string $resource = UserResource::class;
}
@@ -0,0 +1,23 @@
<?php
namespace App\Filament\Resources\Users\Pages;
use App\Filament\Resources\Users\UserResource;
use Filament\Actions\DeleteAction;
use Filament\Actions\ForceDeleteAction;
use Filament\Actions\RestoreAction;
use Filament\Resources\Pages\EditRecord;
class EditUser extends EditRecord
{
protected static string $resource = UserResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
ForceDeleteAction::make(),
RestoreAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\Users\Pages;
use App\Filament\Resources\Users\UserResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListUsers extends ListRecords
{
protected static string $resource = UserResource::class;
protected function getHeaderActions(): array
{
return [
CreateAction::make(),
];
}
}
@@ -0,0 +1,16 @@
<?php
namespace App\Filament\Resources\Users\Schemas;
use Filament\Schemas\Schema;
class UserForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
//
]);
}
}
@@ -0,0 +1,37 @@
<?php
namespace App\Filament\Resources\Users\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\ForceDeleteBulkAction;
use Filament\Actions\RestoreBulkAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\TrashedFilter;
use Filament\Tables\Table;
class UsersTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('name'),
//
])
->filters([
TrashedFilter::make(),
])
->recordActions([
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
ForceDeleteBulkAction::make(),
RestoreBulkAction::make(),
]),
]);
}
}
@@ -0,0 +1,75 @@
<?php
namespace App\Filament\Resources\Users;
use App\Filament\Resources\Users\Pages\CreateUser;
use App\Filament\Resources\Users\Pages\EditUser;
use App\Filament\Resources\Users\Pages\ListUsers;
use App\Filament\Resources\Users\Schemas\UserForm;
use App\Filament\Resources\Users\Tables\UsersTable;
use App\Models\User;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;
use UnitEnum;
class UserResource extends Resource
{
protected static ?string $model = User::class;
// protected static bool $shouldSkipAuthorization = true;
protected static string|BackedEnum|null $navigationIcon = 'lucide-user';
// protected static string|UnitEnum|null $navigationGroup = 'Gutachten';
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $navigationLabel = 'Benutzer';
protected static ?string $modelLabel = 'Benutzer';
protected static ?string $pluralModelLabel = 'Benutzer';
public static function form(Schema $schema): Schema
{
return UserForm::configure($schema);
}
public static function table(Table $table): Table
{
return UsersTable::configure($table);
}
public static function getRelations(): array
{
return [
//
];
}
public static function getPages(): array
{
return [
'index' => ListUsers::route('/'),
'create' => CreateUser::route('/create'),
'edit' => EditUser::route('/{record}/edit'),
];
}
public static function getRecordRouteBindingEloquentQuery(): Builder
{
return parent::getRecordRouteBindingEloquentQuery()
->withoutGlobalScopes([
SoftDeletingScope::class,
]);
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
+11
View File
@@ -0,0 +1,11 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Gutachter extends Model
{
use SoftDeletes;
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Konto extends Model
{
//
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Kontooptionen extends Model
{
//
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace App\Models;
use Spatie\Permission\Models\Permission as SpatiePermission;
class Permission extends SpatiePermission
{
//
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace App\Models;
use Spatie\Permission\Models\Role as SpatieRole;
class Role extends SpatieRole
{
//
}
+2 -2
View File
@@ -32,10 +32,10 @@ class User extends Authenticatable implements FilamentUser, MustVerifyEmail
'last_name',
'gender',
'company',
'uid',
'uid_number',
'address',
'place',
'postcode',
'code',
'phone',
];
+108
View File
@@ -0,0 +1,108 @@
<?php
namespace App\Policies;
use App\Models\User;
use App\Models\Gutachter;
use Illuminate\Auth\Access\HandlesAuthorization;
class GutachterPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*/
public function viewAny(User $user): bool
{
return $user->can('view_any_gutachters::gutachter');
}
/**
* Determine whether the user can view the model.
*/
public function view(User $user, Gutachter $gutachter): bool
{
return $user->can('view_gutachters::gutachter');
}
/**
* Determine whether the user can create models.
*/
public function create(User $user): bool
{
return $user->can('create_gutachters::gutachter');
}
/**
* Determine whether the user can update the model.
*/
public function update(User $user, Gutachter $gutachter): bool
{
return $user->can('update_gutachters::gutachter');
}
/**
* Determine whether the user can delete the model.
*/
public function delete(User $user, Gutachter $gutachter): bool
{
return $user->can('delete_gutachters::gutachter');
}
/**
* Determine whether the user can bulk delete.
*/
public function deleteAny(User $user): bool
{
return $user->can('delete_any_gutachters::gutachter');
}
/**
* Determine whether the user can permanently delete.
*/
public function forceDelete(User $user, Gutachter $gutachter): bool
{
return $user->can('force_delete_gutachters::gutachter');
}
/**
* Determine whether the user can permanently bulk delete.
*/
public function forceDeleteAny(User $user): bool
{
return $user->can('force_delete_any_gutachters::gutachter');
}
/**
* Determine whether the user can restore.
*/
public function restore(User $user, Gutachter $gutachter): bool
{
return $user->can('restore_gutachters::gutachter');
}
/**
* Determine whether the user can bulk restore.
*/
public function restoreAny(User $user): bool
{
return $user->can('restore_any_gutachters::gutachter');
}
/**
* Determine whether the user can replicate.
*/
public function replicate(User $user, Gutachter $gutachter): bool
{
return $user->can('replicate_gutachters::gutachter');
}
/**
* Determine whether the user can reorder.
*/
public function reorder(User $user): bool
{
return $user->can('reorder_gutachters::gutachter');
}
}
+108
View File
@@ -0,0 +1,108 @@
<?php
namespace App\Policies;
use App\Models\User;
use App\Models\Konto;
use Illuminate\Auth\Access\HandlesAuthorization;
class KontoPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*/
public function viewAny(User $user): bool
{
return $user->can('view_any_kontos::konto');
}
/**
* Determine whether the user can view the model.
*/
public function view(User $user, Konto $konto): bool
{
return $user->can('view_kontos::konto');
}
/**
* Determine whether the user can create models.
*/
public function create(User $user): bool
{
return $user->can('create_kontos::konto');
}
/**
* Determine whether the user can update the model.
*/
public function update(User $user, Konto $konto): bool
{
return $user->can('update_kontos::konto');
}
/**
* Determine whether the user can delete the model.
*/
public function delete(User $user, Konto $konto): bool
{
return $user->can('delete_kontos::konto');
}
/**
* Determine whether the user can bulk delete.
*/
public function deleteAny(User $user): bool
{
return $user->can('delete_any_kontos::konto');
}
/**
* Determine whether the user can permanently delete.
*/
public function forceDelete(User $user, Konto $konto): bool
{
return $user->can('force_delete_kontos::konto');
}
/**
* Determine whether the user can permanently bulk delete.
*/
public function forceDeleteAny(User $user): bool
{
return $user->can('force_delete_any_kontos::konto');
}
/**
* Determine whether the user can restore.
*/
public function restore(User $user, Konto $konto): bool
{
return $user->can('restore_kontos::konto');
}
/**
* Determine whether the user can bulk restore.
*/
public function restoreAny(User $user): bool
{
return $user->can('restore_any_kontos::konto');
}
/**
* Determine whether the user can replicate.
*/
public function replicate(User $user, Konto $konto): bool
{
return $user->can('replicate_kontos::konto');
}
/**
* Determine whether the user can reorder.
*/
public function reorder(User $user): bool
{
return $user->can('reorder_kontos::konto');
}
}
+108
View File
@@ -0,0 +1,108 @@
<?php
namespace App\Policies;
use App\Models\User;
use App\Models\Kontooptionen;
use Illuminate\Auth\Access\HandlesAuthorization;
class KontooptionenPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*/
public function viewAny(User $user): bool
{
return $user->can('view_any_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can view the model.
*/
public function view(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('view_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can create models.
*/
public function create(User $user): bool
{
return $user->can('create_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can update the model.
*/
public function update(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('update_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can delete the model.
*/
public function delete(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('delete_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can bulk delete.
*/
public function deleteAny(User $user): bool
{
return $user->can('delete_any_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can permanently delete.
*/
public function forceDelete(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('force_delete_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can permanently bulk delete.
*/
public function forceDeleteAny(User $user): bool
{
return $user->can('force_delete_any_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can restore.
*/
public function restore(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('restore_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can bulk restore.
*/
public function restoreAny(User $user): bool
{
return $user->can('restore_any_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can replicate.
*/
public function replicate(User $user, Kontooptionen $kontooptionen): bool
{
return $user->can('replicate_kontooptionens::kontooptionen');
}
/**
* Determine whether the user can reorder.
*/
public function reorder(User $user): bool
{
return $user->can('reorder_kontooptionens::kontooptionen');
}
}
+108
View File
@@ -0,0 +1,108 @@
<?php
namespace App\Policies;
use App\Models\User;
use App\Models\Permission;
use Illuminate\Auth\Access\HandlesAuthorization;
class PermissionPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*/
public function viewAny(User $user): bool
{
return $user->can('view_any_permissions::permission');
}
/**
* Determine whether the user can view the model.
*/
public function view(User $user, Permission $permission): bool
{
return $user->can('view_permissions::permission');
}
/**
* Determine whether the user can create models.
*/
public function create(User $user): bool
{
return $user->can('create_permissions::permission');
}
/**
* Determine whether the user can update the model.
*/
public function update(User $user, Permission $permission): bool
{
return $user->can('update_permissions::permission');
}
/**
* Determine whether the user can delete the model.
*/
public function delete(User $user, Permission $permission): bool
{
return $user->can('delete_permissions::permission');
}
/**
* Determine whether the user can bulk delete.
*/
public function deleteAny(User $user): bool
{
return $user->can('delete_any_permissions::permission');
}
/**
* Determine whether the user can permanently delete.
*/
public function forceDelete(User $user, Permission $permission): bool
{
return $user->can('force_delete_permissions::permission');
}
/**
* Determine whether the user can permanently bulk delete.
*/
public function forceDeleteAny(User $user): bool
{
return $user->can('force_delete_any_permissions::permission');
}
/**
* Determine whether the user can restore.
*/
public function restore(User $user, Permission $permission): bool
{
return $user->can('restore_permissions::permission');
}
/**
* Determine whether the user can bulk restore.
*/
public function restoreAny(User $user): bool
{
return $user->can('restore_any_permissions::permission');
}
/**
* Determine whether the user can replicate.
*/
public function replicate(User $user, Permission $permission): bool
{
return $user->can('replicate_permissions::permission');
}
/**
* Determine whether the user can reorder.
*/
public function reorder(User $user): bool
{
return $user->can('reorder_permissions::permission');
}
}
+144
View File
@@ -0,0 +1,144 @@
<?php
namespace App\Policies;
use App\Models\User;
use Illuminate\Auth\Access\HandlesAuthorization;
class UserPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*
* @param \App\Models\User $user
* @return bool
*/
public function viewAny(User $user): bool
{
return $user->can('view_any_users::user');
}
/**
* Determine whether the user can view the model.
*
* @param \App\Models\User $user
* @return bool
*/
public function view(User $user): bool
{
return $user->can('view_users::user');
}
/**
* Determine whether the user can create models.
*
* @param \App\Models\User $user
* @return bool
*/
public function create(User $user): bool
{
return $user->can('create_users::user');
}
/**
* Determine whether the user can update the model.
*
* @param \App\Models\User $user
* @return bool
*/
public function update(User $user): bool
{
return $user->can('update_users::user');
}
/**
* Determine whether the user can delete the model.
*
* @param \App\Models\User $user
* @return bool
*/
public function delete(User $user): bool
{
return $user->can('delete_users::user');
}
/**
* Determine whether the user can bulk delete.
*
* @param \App\Models\User $user
* @return bool
*/
public function deleteAny(User $user): bool
{
return $user->can('delete_any_users::user');
}
/**
* Determine whether the user can permanently delete.
*
* @param \App\Models\User $user
* @return bool
*/
public function forceDelete(User $user): bool
{
return $user->can('force_delete_users::user');
}
/**
* Determine whether the user can permanently bulk delete.
*
* @param \App\Models\User $user
* @return bool
*/
public function forceDeleteAny(User $user): bool
{
return $user->can('force_delete_any_users::user');
}
/**
* Determine whether the user can restore.
*
* @param \App\Models\User $user
* @return bool
*/
public function restore(User $user): bool
{
return $user->can('restore_users::user');
}
/**
* Determine whether the user can bulk restore.
*
* @param \App\Models\User $user
* @return bool
*/
public function restoreAny(User $user): bool
{
return $user->can('restore_any_users::user');
}
/**
* Determine whether the user can bulk restore.
*
* @param \App\Models\User $user
* @return bool
*/
public function replicate(User $user): bool
{
return $user->can('replicate_users::user');
}
/**
* Determine whether the user can reorder.
*
* @param \App\Models\User $user
* @return bool
*/
public function reorder(User $user): bool
{
return $user->can('reorder_users::user');
}
}
+4
View File
@@ -27,6 +27,10 @@ class AppServiceProvider extends ServiceProvider
'primary' => '#47847f',
]);
FilamentView::registerRenderHook(
PanelsRenderHook::AUTH_LOGIN_FORM_BEFORE, fn (): View => view('login-links'),
);
FilamentView::registerRenderHook(
PanelsRenderHook::AUTH_LOGIN_FORM_AFTER, fn (): View => view('login-text'),
);
@@ -38,7 +38,7 @@ class AdminPanelProvider extends PanelProvider
->default()
->renderHook(
PanelsRenderHook::GLOBAL_SEARCH_BEFORE,
fn (): string => auth()->user()->hasRole('tenancy_switch') ? Blade::render('@livewire(\'tenancy-switch\')') : false
fn (): string => auth()->user()->hasRole('gutachter_switch') ? Blade::render('@livewire(\'tenancy-switch\')') : false
)
->maxContentWidth(Width::ScreenExtraLarge)
// ->sidebarCollapsibleOnDesktop()