diff --git a/Modules/Helpdesk/Livewire/TicketShow.php b/Modules/Helpdesk/Livewire/TicketShow.php index 22f91448..fc770fbc 100644 --- a/Modules/Helpdesk/Livewire/TicketShow.php +++ b/Modules/Helpdesk/Livewire/TicketShow.php @@ -784,7 +784,7 @@ final class TicketShow extends Component private function gitCommitLikeOperator(): string { return \Modules\Helpdesk\Models\GitCommit::query()->getConnection()->getDriverName() === 'pgsql' - ? $this->gitCommitLikeOperator() + ? 'ILIKE' : 'LIKE'; } diff --git a/Modules/Helpdesk/Resources/views/components/html-editor.blade.php b/Modules/Helpdesk/Resources/views/components/html-editor.blade.php index f193b909..3da0503e 100644 --- a/Modules/Helpdesk/Resources/views/components/html-editor.blade.php +++ b/Modules/Helpdesk/Resources/views/components/html-editor.blade.php @@ -55,37 +55,37 @@
-
+
Spellcheck enabled - - - - - - - @@ -104,6 +104,7 @@ role="textbox" aria-multiline="true" data-placeholder="{{ $placeholder }}" + data-wire-model="{{ $model }}" @if ($editorDusk) data-dusk="{{ $editorDusk }}" dusk="{{ $editorDusk }}" @endif x-on:blur="syncToLivewire(false)" class="helpdesk-rich-editor block min-h-[14rem] w-full overflow-y-auto whitespace-pre-wrap break-words border-0 bg-zinc-950 px-5 py-4 text-base leading-7 text-zinc-100 outline-none transition placeholder:text-zinc-500 empty:before:pointer-events-none empty:before:text-zinc-500 empty:before:content-[attr(data-placeholder)] focus:ring-2 focus:ring-blue-500" diff --git a/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php b/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php index 800bf6fd..3ba3995d 100644 --- a/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php +++ b/Modules/Helpdesk/Resources/views/livewire/ticket-create.blade.php @@ -342,7 +342,8 @@ + class="inline-flex min-h-10 items-center justify-center rounded-lg bg-blue-600 px-4 py-2 text-xs font-black text-white shadow-sm transition hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-400/70" + data-dusk="ticket-create-cancel" dusk="ticket-create-cancel"> Cancel diff --git a/Modules/Helpdesk/changelog.yaml b/Modules/Helpdesk/changelog.yaml index bf728001..071b1e37 100644 --- a/Modules/Helpdesk/changelog.yaml +++ b/Modules/Helpdesk/changelog.yaml @@ -540,3 +540,13 @@ version: 0.0.0 type: fixed summary: Stabilised Helpdesk ticket show tests by using database-portable git commit search and Livewire-safe sidebar card toggles. + +- version: 1.10.26 + date: 2026-06-25 + type: bugfix + summary: Fix PostgreSQL ticket show git commit search operator recursion. + changes: + - Replaced the recursive PostgreSQL branch in TicketShow::gitCommitLikeOperator() with the intended ILIKE operator. + - Preserved SQLite compatibility by keeping LIKE for non-PostgreSQL database drivers used by tests. + - Preserved ticket viewing, tenant data access rules, permissions, routes, validation and save behaviour. + - Preserved append-only changelog history. diff --git a/Modules/Helpdesk/module.json b/Modules/Helpdesk/module.json index 32fb8953..6c22e711 100644 --- a/Modules/Helpdesk/module.json +++ b/Modules/Helpdesk/module.json @@ -23,5 +23,5 @@ "Modules\\Helpdesk\\Providers\\HelpdeskServiceProvider" ], "files": [], - "version": "1.10.25" + "version": "1.10.26" } diff --git a/backup.sh b/backup.sh new file mode 100755 index 00000000..69fc190c --- /dev/null +++ b/backup.sh @@ -0,0 +1,62 @@ +#!/usr/bin/env bash + +############################################################################### +# Project Copy Script +# +# Copies a project while excluding generated and local-only directories. +# +# Excludes: +# - vendor/ +# - node_modules/ +# - .git/ +# - storage/ +# - bootstrap/cache/ +# - provision/ +# +# Usage: +# ./copy-project.sh /path/to/source /path/to/destination +# +############################################################################### + +set -euo pipefail + +if [ "$#" -ne 2 ]; then + echo "Usage:" + echo " $0 " + exit 1 +fi + +SOURCE="$(cd "$1" && pwd)" +DEST="$2" + +echo "Source : $SOURCE" +echo "Destination : $DEST" +echo + +mkdir -p "$DEST" + +echo "Copying..." + +rsync -a \ + --progress \ + --delete \ + --exclude=".git/" \ + --exclude="vendor/" \ + --exclude="node_modules/" \ + --exclude="storage/" \ + --exclude="bootstrap/cache/" \ + --exclude="provision/" \ + "$SOURCE/" \ + "$DEST/" + +echo +echo "Creating required empty directories..." + +mkdir -p "$DEST/storage" +mkdir -p "$DEST/bootstrap/cache" + +touch "$DEST/storage/.gitkeep" +touch "$DEST/bootstrap/cache/.gitkeep" + +echo +echo "Done."