diff --git a/app/Filament/Pages/Reserve.php b/app/Filament/Pages/Reserve.php index f8c6091..2330c03 100644 --- a/app/Filament/Pages/Reserve.php +++ b/app/Filament/Pages/Reserve.php @@ -31,6 +31,10 @@ use Filament\Infolists\Components\Section; use Filament\Tables\Contracts\HasTable; use Filament\Tables\Concerns\InteractsWithTable; use Filament\Infolists\Components\ImageEntry; +use Filament\Tables\Columns\TextColumn; +use Filament\Tables\Columns\ImageColumn; +use Filament\Tables\Columns\IconColumn; +use Filament\Tables\Actions\Action; class Reserve extends BasePage implements HasTable { @@ -46,22 +50,22 @@ class Reserve extends BasePage implements HasTable return $table ->query( Item::where('can_be_loaned', true)->where('type', "game")) ->columns([ - Tables\Columns\TextColumn::make('desc') + TextColumn::make('desc') ->label('Description') ->sortable() ->searchable(), - Tables\Columns\ImageColumn::make('image') + ImageColumn::make('image') ->label('Image'), - Tables\Columns\TextColumn::make('players') + TextColumn::make('players') ->label('Players') ->sortable(), - Tables\Columns\TextColumn::make('play_time') + TextColumn::make('play_time') ->label('Play Time') ->sortable(), - Tables\Columns\TextColumn::make('age') + TextColumn::make('age') ->label('Age') ->sortable(), - Tables\Columns\IconColumn::make('reserved') + IconColumn::make('reserved') ->label('Available') ->falseIcon('heroicon-o-check-badge') ->trueIcon('heroicon-o-x-mark') @@ -82,12 +86,14 @@ class Reserve extends BasePage implements HasTable ->toggle() ],layout: FiltersLayout::AboveContent) ->actions([ - Tables\Actions\Action::make('More info') + Action::make('More info') ->modalSubmitAction(false) ->infolist([ Section::make('Game') ->schema([ - ImageEntry::make('image'), + ImageEntry::make('image') + ->width(300) + ->height('auto'), TextEntry::make('desc'), TextEntry::make('acquisition_date'), TextEntry::make('category.name'), @@ -96,16 +102,16 @@ class Reserve extends BasePage implements HasTable TextEntry::make('age'), ]) ->columns(), - ]), - Tables\Actions\Action::make('reserve') + ]), + Action::make('reserve') ->label('Reserve') ->button() ->color('success') ->form([ - Forms\Components\TextInput::make('username') + TextInput::make('username') ->label('Name') ->required(), - Forms\Components\TextInput::make('email') + TextInput::make('email') ->label('Email') ->required(), ]) diff --git a/app/Filament/Resources/CategoryResource.php b/app/Filament/Resources/CategoryResource.php index 019cebf..bd62de5 100644 --- a/app/Filament/Resources/CategoryResource.php +++ b/app/Filament/Resources/CategoryResource.php @@ -12,6 +12,10 @@ use Filament\Tables; use Filament\Tables\Table; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\SoftDeletingScope; +use Filament\Forms\Components\TextInput; +use Filament\Forms\Components\Select; +use Filament\Tables\Columns\TextColumn; + class CategoryResource extends Resource { @@ -27,10 +31,10 @@ class CategoryResource extends Resource { return $form ->schema([ - Forms\Components\TextInput::make('name') + TextInput::make('name') ->required() ->maxLength(255), - Forms\Components\Select::make('type') + Select::make('type') ->required() ->options([ 'game' => 'Game', @@ -43,10 +47,10 @@ class CategoryResource extends Resource { return $table ->columns([ - Tables\Columns\TextColumn::make('name') + TextColumn::make('name') ->label('Name') ->searchable(), - Tables\Columns\TextColumn::make('type') + TextColumn::make('type') ->label('Type') ->searchable(), ]) diff --git a/app/Filament/Resources/ItemResource.php b/app/Filament/Resources/ItemResource.php index c497e01..b467cb2 100644 --- a/app/Filament/Resources/ItemResource.php +++ b/app/Filament/Resources/ItemResource.php @@ -30,6 +30,13 @@ use Filament\Infolists\Components\Section; use Illuminate\Support\Facades\Mail; use App\Mail\ReservationCreatedUser; use App\Mail\ReservationCreated; +use Filament\Forms\Components\FileUpload; +use Filament\Forms\Components\DatePicker; +use Filament\Forms\Components\Toggle; +use Filament\Tables\Columns\TextColumn; +use Filament\Tables\Columns\ImageColumn; +use Filament\Tables\Columns\IconColumn; +use Filament\Tables\Actions\Action; class ItemResource extends Resource @@ -40,61 +47,59 @@ class ItemResource extends Resource protected static ?string $modelLabel = 'Inventory'; - - public static function form(Form $form): Form { return $form ->schema([ Radio::make('type') - ->options([ - 'game' => 'Game', - 'item' => 'Item', - ]) - ->default('game') - ->live(), - Forms\Components\FileUpload::make('image') - ->label('Image') - ->minSize(25) - ->maxSize(5500) - ->columnSpan('full') - ->disk('public') - ->image(), - Forms\Components\TextInput::make('desc') + ->options([ + 'game' => 'Game', + 'item' => 'Item', + ]) + ->default('game') + ->live(), + FileUpload::make('image') + ->label('Image') + ->minSize(25) + ->maxSize(5500) + ->columnSpan('full') + ->disk('public') + ->image(), + TextInput::make('desc') ->label('Description') ->maxLength(255) ->default(null), - Forms\Components\DatePicker::make('acquisition_date') + DatePicker::make('acquisition_date') ->label('Acquisition date'), - Forms\Components\TextInput::make('quantity') + TextInput::make('quantity') ->label('Quantity') ->numeric() ->minValue(0) ->maxValue(1000) ->default(0) ->hidden(fn ($get): string => $get('type') == 'game'), - Forms\Components\Select::make('category_id') + Select::make('category_id') ->label('Category') ->options(Category::all()->pluck('name', 'id')), - Forms\Components\TextInput::make('cost') + TextInput::make('cost') ->label('Price') ->default(null), - Forms\Components\TextInput::make('age') + TextInput::make('age') ->label('Age') ->maxLength(255) ->default(null) ->hidden(fn ($get): string => $get('type') == 'item'), - Forms\Components\TextInput::make('players') + TextInput::make('players') ->label('Players') ->maxLength(255) ->default(null) ->hidden(fn ($get): string => $get('type') == 'item'), - Forms\Components\TextInput::make('play_time') + TextInput::make('play_time') ->label('Play time') ->maxLength(255) ->default(null) ->hidden(fn ($get): string => $get('type') == 'item'), - Forms\Components\Toggle::make('can_be_loaned') + Toggle::make('can_be_loaned') ->label('Can be loaned') ->hidden(fn ($get): string => $get('type') == 'game'), ]); @@ -104,24 +109,24 @@ class ItemResource extends Resource { return $table ->columns([ - Tables\Columns\TextColumn::make('desc') + TextColumn::make('desc') ->label('Description') ->sortable() ->searchable(), - Tables\Columns\TextColumn::make('type') + TextColumn::make('type') ->label('Type') ->searchable() ->sortable(), - Tables\Columns\ImageColumn::make('image') + ImageColumn::make('image') ->label('Image'), - Tables\Columns\IconColumn::make('can_be_loaned') + IconColumn::make('can_be_loaned') ->label('Can be loaned') ->sortable() ->trueIcon('heroicon-o-check-badge') ->falseIcon('heroicon-o-x-mark') ->trueColor('success') ->falseColor('danger'), - Tables\Columns\IconColumn::make('reserved') + IconColumn::make('reserved') ->label('Available') ->falseIcon('heroicon-o-check-badge') ->trueIcon('heroicon-o-x-mark') @@ -158,12 +163,14 @@ class ItemResource extends Resource ->toggle() ],layout: FiltersLayout::AboveContent) ->actions([ - Tables\Actions\Action::make('More info') + Action::make('More info') ->modalSubmitAction(false) ->infolist([ Section::make('Game') ->schema([ - ImageEntry::make('image'), + ImageEntry::make('image') + ->width(300) + ->height('auto'), TextEntry::make('desc'), TextEntry::make('acquisition_date'), TextEntry::make('category.name'), @@ -196,10 +203,10 @@ class ItemResource extends Resource ->button() ->color('success') ->form([ - Forms\Components\TextInput::make('username') + TextInput::make('username') ->label('Name') ->required(), - Forms\Components\TextInput::make('email') + TextInput::make('email') ->label('Email') ->required(), ]) @@ -219,7 +226,7 @@ class ItemResource extends Resource ->hidden(fn ($record) => $record->reserved) ]) ->bulkActions([ - Tables\Actions\BulkActionGroup::make([ + Tables\Actions\BulkActionGroup::make([ Tables\Actions\DeleteBulkAction::make(), ]), ]); diff --git a/app/Filament/Resources/ReserveditemResource.php b/app/Filament/Resources/ReserveditemResource.php index 12cd8a6..a875be1 100644 --- a/app/Filament/Resources/ReserveditemResource.php +++ b/app/Filament/Resources/ReserveditemResource.php @@ -16,7 +16,13 @@ use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\SoftDeletingScope; use Filament\Forms\Components\Section; use Filament\Forms\Components\Radio; +use Filament\Forms\Components\TextInput; +use Filament\Forms\Components\Toggle; use Filament\Support\Enums\IconPosition; +use Filament\Tables\Columns\TextColumn; +use Filament\Tables\Columns\ImageColumn; +use Filament\Tables\Columns\IconColumn; +use Filament\Tables\Actions\Action; class ReserveditemResource extends Resource @@ -33,16 +39,16 @@ class ReserveditemResource extends Resource { return $form ->schema([ - Forms\Components\TextInput::make('username') + TextInput::make('username') ->label('Name') ->default(null), - Forms\Components\TextInput::make('email') + TextInput::make('email') ->label('Email') ->default(null), Section::make('') ->schema([ - Forms\Components\Toggle::make('delivered'), - Forms\Components\Toggle::make('returned') + Toggle::make('delivered'), + Toggle::make('returned') ]) ]); @@ -53,25 +59,25 @@ class ReserveditemResource extends Resource return $table //->query(Reserveditem::withTrashed()) ->columns([ - Tables\Columns\TextColumn::make('item.desc') + TextColumn::make('item.desc') ->label('Name') ->sortable(), - Tables\Columns\TextColumn::make('username') + TextColumn::make('username') ->label('User') ->sortable(), - Tables\Columns\TextColumn::make('email') + TextColumn::make('email') ->label('Email') ->sortable(), - Tables\Columns\TextColumn::make('reserved_date') + TextColumn::make('reserved_date') ->label('Reservation date') ->sortable(), - Tables\Columns\TextColumn::make('delivered_date') + TextColumn::make('delivered_date') ->label('Delivery date') ->sortable(), - Tables\Columns\TextColumn::make('return_date') + TextColumn::make('return_date') ->label('Return date') ->sortable(), - Tables\Columns\TextColumn::make('returned_date') + TextColumn::make('returned_date') ->label('Returned') ->sortable(), ]) diff --git a/app/Filament/Resources/ReserveditemResourceUser.php b/app/Filament/Resources/ReserveditemResourceUser.php index e0d46f9..592a47c 100644 --- a/app/Filament/Resources/ReserveditemResourceUser.php +++ b/app/Filament/Resources/ReserveditemResourceUser.php @@ -13,6 +13,15 @@ use Filament\Tables; use Filament\Tables\Table; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\SoftDeletingScope; +use Filament\Forms\Components\Section; +use Filament\Forms\Components\Radio; +use Filament\Forms\Components\TextInput; +use Filament\Forms\Components\Toggle; +use Filament\Support\Enums\IconPosition; +use Filament\Tables\Columns\TextColumn; +use Filament\Tables\Columns\ImageColumn; +use Filament\Tables\Columns\IconColumn; +use Filament\Tables\Actions\Action; class ReserveditemResourceUser extends Resource { @@ -28,7 +37,7 @@ class ReserveditemResourceUser extends Resource { return $form ->schema([ - Forms\Components\Select::make('item_id') + Select::make('item_id') ->label('Choose an item to reserve') ->relationship( name: 'item', @@ -49,22 +58,22 @@ class ReserveditemResourceUser extends Resource { return $table ->columns([ - Tables\Columns\TextColumn::make('items.desc') + TextColumn::make('items.desc') ->label('Name') ->sortable(), - Tables\Columns\TextColumn::make('username') + TextColumn::make('username') ->label('User') ->sortable(), - Tables\Columns\TextColumn::make('reserved_date') + TextColumn::make('reserved_date') ->label('Reserved date') ->sortable(), - Tables\Columns\TextColumn::make('delivered_date') + TextColumn::make('delivered_date') ->label('Delivery date') ->sortable(), - Tables\Columns\TextColumn::make('return_date') + TextColumn::make('return_date') ->label('Return date') ->sortable(), - Tables\Columns\TextColumn::make('returned_date') + TextColumn::make('returned_date') ->label('Returned') ->sortable(), ]) diff --git a/app/Filament/Resources/UserResource.php b/app/Filament/Resources/UserResource.php index 6446f98..f2e2af3 100644 --- a/app/Filament/Resources/UserResource.php +++ b/app/Filament/Resources/UserResource.php @@ -12,6 +12,16 @@ use Filament\Tables; use Filament\Tables\Table; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\SoftDeletingScope; +use Filament\Forms\Components\Section; +use Filament\Forms\Components\Radio; +use Filament\Forms\Components\TextInput; +use Filament\Forms\Components\Toggle; +use Filament\Forms\Components\DateTimePicker; +use Filament\Support\Enums\IconPosition; +use Filament\Tables\Columns\TextColumn; +use Filament\Tables\Columns\ImageColumn; +use Filament\Tables\Columns\IconColumn; +use Filament\Tables\Actions\Action; class UserResource extends Resource { @@ -23,19 +33,19 @@ class UserResource extends Resource { return $form ->schema([ - Forms\Components\TextInput::make('name') + TextInput::make('name') ->required() ->maxLength(255), - Forms\Components\TextInput::make('email') + TextInput::make('email') ->email() ->required() ->maxLength(255), - Forms\Components\DateTimePicker::make('email_verified_at'), - Forms\Components\TextInput::make('password') + DateTimePicker::make('email_verified_at'), + TextInput::make('password') ->password() ->required() ->maxLength(255), - Forms\Components\Toggle::make('is_admin') + Toggle::make('is_admin') ->required(), ]); } @@ -44,12 +54,12 @@ class UserResource extends Resource { return $table ->columns([ - Tables\Columns\TextColumn::make('name') + TextColumn::make('name') ->label('Name') ->searchable(), - Tables\Columns\TextColumn::make('email') + TextColumn::make('email') ->searchable(), - Tables\Columns\IconColumn::make('is_admin') + IconColumn::make('is_admin') ->boolean(), ]) ->filters([