diff --git a/Modules/Helpdesk/Livewire/TicketCreate.php b/Modules/Helpdesk/Livewire/TicketCreate.php index a08d0d81..7f0bcb94 100644 --- a/Modules/Helpdesk/Livewire/TicketCreate.php +++ b/Modules/Helpdesk/Livewire/TicketCreate.php @@ -58,6 +58,8 @@ final class TicketCreate extends Component */ public function save(TicketService $tickets): mixed { + $this->validate(); + $this->validate([ 'attachments.*' => 'file|max:' . config('helpdesk.max_upload_kb') . '|mimes:' . implode(',', config('helpdesk.allowed_mimes')), ]); @@ -75,9 +77,7 @@ final class TicketCreate extends Component session()->flash('success', 'Ticket ' . $ticket->reference . ' has been created.'); - return redirect()->route('helpdesk.tickets.show', [ - 'ticket' => $ticket, - ]); + return redirect()->route('helpdesk.tickets.index'); } /** @return View */ diff --git a/Modules/Helpdesk/Providers/HelpdeskServiceProvider.php b/Modules/Helpdesk/Providers/HelpdeskServiceProvider.php index 55b99a7b..1c11304c 100644 --- a/Modules/Helpdesk/Providers/HelpdeskServiceProvider.php +++ b/Modules/Helpdesk/Providers/HelpdeskServiceProvider.php @@ -8,6 +8,7 @@ use Illuminate\Support\Facades\Blade; use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\File; use Illuminate\Support\Facades\Gate; +use Illuminate\Support\Facades\Route; use Illuminate\Support\ServiceProvider; use Livewire\Livewire; use Modules\Helpdesk\Livewire\HelpdeskDashboardWidget; @@ -67,6 +68,13 @@ final class HelpdeskServiceProvider extends ServiceProvider $this->registerPolicies(); $this->loadMigrationsFrom(module_path(ModuleInfo::name(), 'Database/Migrations')); + Livewire::setUpdateRoute(function ($handle) { + + return Route::post('/livewire-cfc83872/update', $handle) + + ->middleware('web'); + + }); } /** diff --git a/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php b/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php index 5402a331..3afbe5e5 100644 --- a/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php +++ b/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php @@ -1,9 +1,9 @@
@include('helpdesk::partials.page-header', [ - 'eyebrow' => 'Helpdesk', - 'title' => 'Create Ticket', - 'subtitle' => 'Raise a new support request with priority, project, category and full details.', - ]) + 'eyebrow' => 'Helpdesk', + 'title' => 'Create Ticket', + 'subtitle' => 'Raise a new support request with priority, project, category, team and full details.', + ])
@@ -95,7 +95,7 @@
- Cancel + Cancel
diff --git a/Modules/Helpdesk/Resources/views/partials/page-header.blade.php b/Modules/Helpdesk/Resources/views/partials/page-header.blade.php index 714cd9fe..ab6c9804 100644 --- a/Modules/Helpdesk/Resources/views/partials/page-header.blade.php +++ b/Modules/Helpdesk/Resources/views/partials/page-header.blade.php @@ -1,17 +1,27 @@
-

- {{ $eyebrow ?? 'Helpdesk' }} -

+
+
+

+ {{ $eyebrow ?? 'Helpdesk' }} +

-

- {{ $title ?? 'Helpdesk' }} -

+

+ {{ $title ?? 'Helpdesk' }} +

- @if(! empty($subtitle)) -

- {{ $subtitle }} -

- @endif + @if(! empty($subtitle)) +

+ {{ $subtitle }} +

+ @endif +
+ + @isset($actions) +
+ {{ $actions }} +
+ @endisset +
diff --git a/Modules/Helpdesk/Resources/views/partials/sidebar-support-menu.blade.php b/Modules/Helpdesk/Resources/views/partials/sidebar-support-menu.blade.php new file mode 100644 index 00000000..54363464 --- /dev/null +++ b/Modules/Helpdesk/Resources/views/partials/sidebar-support-menu.blade.php @@ -0,0 +1,40 @@ +@php + $helpdeskEnabled = Route::has('helpdesk.index'); + + if (class_exists(\Nwidart\Modules\Facades\Module::class)) { + $helpdeskModule = \Nwidart\Modules\Facades\Module::find('Helpdesk'); + $helpdeskEnabled = $helpdeskModule !== null && $helpdeskModule->isEnabled() && Route::has('helpdesk.index'); + } +@endphp + +@if($helpdeskEnabled) +
+
{{ __('Support') }}
+ + + + {{ __('Helpdesk') }} + + + @if(Route::has('helpdesk.tickets.index')) + + + {{ __('Tickets') }} + + @endif + + @if(Route::has('helpdesk.kanban')) + + + {{ __('Kanban') }} + + @endif + + @if(Route::has('helpdesk.settings')) + + + {{ __('Support Settings') }} + + @endif +
+@endif diff --git a/Modules/Helpdesk/changelog.yaml b/Modules/Helpdesk/changelog.yaml index 4a475645..d1e8ba6b 100755 --- a/Modules/Helpdesk/changelog.yaml +++ b/Modules/Helpdesk/changelog.yaml @@ -21,3 +21,10 @@ versions: - Rebuilt the ticket create page to use the correct subject/body Livewire properties. - Stabilised the rich HTML editor so typing no longer clears the field or accidentally submits the ticket form. - Added root layout support-menu integration instructions for enabled Helpdesk modules. + + "1.0.4": + changed: + - Fixed the Helpdesk page header so dark WMS pages do not render a blank white hero. + - Changed ticket create save to validate all fields and return to the tickets index after creation to avoid route-model redirect issues. + - Added a root layout replacement containing the Support sidebar menu and Livewire update endpoint configuration. + - Kept module.json version in sync with changelog.yaml. diff --git a/Modules/Helpdesk/module.json b/Modules/Helpdesk/module.json index 17229611..e592e5ba 100644 --- a/Modules/Helpdesk/module.json +++ b/Modules/Helpdesk/module.json @@ -13,5 +13,5 @@ "Modules\\Helpdesk\\Providers\\HelpdeskServiceProvider" ], "files": [], - "version": "1.0.3" + "version": "1.0.4" } diff --git a/resources/views/components/layouts/app.blade.php b/resources/views/components/layouts/app.blade.php new file mode 100644 index 00000000..5f05ea76 --- /dev/null +++ b/resources/views/components/layouts/app.blade.php @@ -0,0 +1,406 @@ + + + + @include('partials.head') + + + +
+ + + + +
+ + +
+ {{ $slot }} +
+
+
+ + @persist('toast') + + @endpersist + + @livewireScriptConfig + @fluxScripts + + + +