From 21f33383aefea47b6aa2d61f55108338d0a886ee Mon Sep 17 00:00:00 2001 From: iridium34 Date: Mon, 10 Mar 2025 19:28:46 +0100 Subject: [PATCH] Created FilamentTypeController & FilamentType Model --- .../Controllers/FilamentTypeController.php | 87 +++++++++++++++++++ app/Livewire/CreateFilamentType.php | 26 ++++++ app/Models/FilamentType.php | 15 ++++ ...025_03_10_151717_create_filament_types.php | 29 +++++++ resources/css/app.css | 12 +++ .../views/components/layouts/app.blade.php | 12 +++ resources/views/components/navbar.blade.php | 8 +- resources/views/flux/icon/ellipsis.blade.php | 43 +++++++++ resources/views/flux/icon/x.blade.php | 42 +++++++++ resources/views/layouts/app.blade.php | 2 +- resources/views/types/create.blade.php | 36 ++++++++ resources/views/types/edit.blade.php | 30 +++++++ resources/views/types/index.blade.php | 29 +++++++ resources/views/types/show.blade.php | 31 +++++++ routes/web.php | 7 ++ 15 files changed, 404 insertions(+), 5 deletions(-) create mode 100644 app/Http/Controllers/FilamentTypeController.php create mode 100644 app/Livewire/CreateFilamentType.php create mode 100644 app/Models/FilamentType.php create mode 100644 database/migrations/2025_03_10_151717_create_filament_types.php create mode 100644 resources/views/components/layouts/app.blade.php create mode 100644 resources/views/flux/icon/ellipsis.blade.php create mode 100644 resources/views/flux/icon/x.blade.php create mode 100644 resources/views/types/create.blade.php create mode 100644 resources/views/types/edit.blade.php create mode 100644 resources/views/types/index.blade.php create mode 100644 resources/views/types/show.blade.php diff --git a/app/Http/Controllers/FilamentTypeController.php b/app/Http/Controllers/FilamentTypeController.php new file mode 100644 index 0000000..1b458ef --- /dev/null +++ b/app/Http/Controllers/FilamentTypeController.php @@ -0,0 +1,87 @@ +name = $request->name; + $type->description = $request->description; + $type->save(); + return redirect()->route('types.index'); + } + + /** + * Display the specified resource. + */ + public function show(string $id) + { + // Show Single Type + $type = FilamentType::find($id); + + + return view('types.show', compact('type')); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(string $id) + { + // + $type = FilamentType::find($id); + return view('types.edit', compact('type')); + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, string $id) + { + // Store updated type + $type = FilamentType::find($id); + $type->name = $request->name; + $type->description = $request->description; + $type->save(); + return redirect()->route('types.show', $type->id); + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(string $id) + { + // Delete Type + $type = FilamentType::find($id); + $type->delete(); + return redirect()->route('types.index')->with('success','Type deleted successfully.'); + + } +} diff --git a/app/Livewire/CreateFilamentType.php b/app/Livewire/CreateFilamentType.php new file mode 100644 index 0000000..1a4d9eb --- /dev/null +++ b/app/Livewire/CreateFilamentType.php @@ -0,0 +1,26 @@ +only(['name', 'description']) + ); + session()->flash('status', 'Filament Type Created Successfully.'); + return redirect()->route('filamenttype.list'); + } + public function render() + { + return view('filamenttype.create'); + } +} diff --git a/app/Models/FilamentType.php b/app/Models/FilamentType.php new file mode 100644 index 0000000..bbb0592 --- /dev/null +++ b/app/Models/FilamentType.php @@ -0,0 +1,15 @@ +id(); + $table->timestamps(); + $table->string('name'); + $table->string('description'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('filament_types'); + } +}; diff --git a/resources/css/app.css b/resources/css/app.css index 5173eb6..0624d14 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -11,6 +11,10 @@ --font-sans: Inter, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; + + --color-accent: var(--color-rose-500); + --color-accent-content: var(--color-rose-500); + --color-accent-foreground: var(--color-white); } /* @@ -31,6 +35,14 @@ } } +@layer theme { + .dark { + --color-accent: var(--color-rose-500); + --color-accent-content: var(--color-rose-400); + --color-accent-foreground: var(--color-white); + } +} + [x-cloak] { display: none; } diff --git a/resources/views/components/layouts/app.blade.php b/resources/views/components/layouts/app.blade.php new file mode 100644 index 0000000..68ba638 --- /dev/null +++ b/resources/views/components/layouts/app.blade.php @@ -0,0 +1,12 @@ + + + + + + + {{ $title ?? 'Page Title' }} + + + {{ $slot }} + + diff --git a/resources/views/components/navbar.blade.php b/resources/views/components/navbar.blade.php index 6ac7641..d2714d8 100644 --- a/resources/views/components/navbar.blade.php +++ b/resources/views/components/navbar.blade.php @@ -5,10 +5,10 @@