M3 Security Fixes for Pass 39

This commit is contained in:
Mark Gregory
2026-09-17 13:08:40 +01:00
parent e0d8e1a725
commit 34c3460760
63 changed files with 655 additions and 503 deletions
@@ -149,8 +149,9 @@
class="hd-attachment-action !rounded-lg !px-3 !py-2 !text-xs">
<i class="fa-solid fa-paperclip" aria-hidden="true"></i>
<span>Choose files</span>
<input name="attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input>
<label for="sonar-input-d20751f562" class="visually-hidden">attachments[]</label>
<input name="attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input id="sonar-input-d20751f562">
</label>
<button type="submit"
@@ -510,8 +511,9 @@
class="inline-flex cursor-pointer items-center justify-center rounded-lg bg-blue-600 px-3 py-2 text-xs font-bold text-white shadow-sm transition hover:bg-blue-700 focus-within:outline-none focus-within:ring-2 focus-within:ring-blue-400/70">
<i class="fa-solid fa-paperclip mr-2 text-xs" aria-hidden="true"></i>
<span>Choose files</span>
<input name="comment_attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input>
<label for="sonar-input-cc351ecc57" class="visually-hidden">comment attachments[]</label>
<input name="comment_attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input id="sonar-input-cc351ecc57">
</label>
</div>
@@ -535,7 +537,8 @@
@if ($canSeeInternalNotes)
<div class="grid gap-3 sm:grid-cols-2">
<label class="flex cursor-pointer items-start gap-3 rounded-xl border border-emerald-300 bg-emerald-50 p-3 text-emerald-950 shadow-sm transition hover:border-emerald-400 hover:bg-emerald-100/80 focus-within:border-emerald-500 focus-within:bg-emerald-100/80 focus-within:ring-2 focus-within:ring-emerald-400/30 active:bg-emerald-100/80 dark:border-emerald-900 dark:bg-emerald-950/60 dark:text-emerald-100 dark:hover:border-emerald-700 dark:hover:bg-emerald-900/50 dark:focus-within:bg-emerald-900/50">
<input type="radio" name="internal" value="0" @checked(! old('internal')) class="mt-1 border-emerald-400 text-emerald-600 focus:ring-emerald-500">
<label for="sonar-input-f732ff44ac" class="visually-hidden">internal</label>
<input type="radio" name="internal" value="0" @checked(! old('internal')) class="mt-1 border-emerald-400 text-emerald-600 focus:ring-emerald-500" id="sonar-input-f732ff44ac">
<span>
<span class="block text-sm font-extrabold">Public reply</span>
<span class="mt-1 block text-xs font-semibold opacity-80">Visible to the requester and counts as the first SLA response.</span>
@@ -543,7 +546,8 @@
</label>
<label class="flex cursor-pointer items-start gap-3 rounded-xl border border-purple-300 bg-purple-50 p-3 text-purple-950 shadow-sm transition hover:border-purple-400 hover:bg-purple-100/80 focus-within:border-purple-500 focus-within:bg-purple-100/80 focus-within:ring-2 focus-within:ring-purple-400/30 active:bg-purple-100/80 dark:border-purple-900 dark:bg-purple-950/60 dark:text-purple-100 dark:hover:border-purple-700 dark:hover:bg-purple-900/50 dark:focus-within:bg-purple-900/50">
<input type="radio" name="internal" value="1" @checked((bool) old('internal')) class="mt-1 border-purple-400 text-purple-600 focus:ring-purple-500">
<label for="sonar-input-2d1a395f19" class="visually-hidden">internal</label>
<input type="radio" name="internal" value="1" @checked((bool) old('internal')) class="mt-1 border-purple-400 text-purple-600 focus:ring-purple-500" id="sonar-input-2d1a395f19">
<span>
<span class="block text-sm font-extrabold">Internal note</span>
<span class="mt-1 block text-xs font-semibold opacity-80">MPBA/support-only note. Does not count as a public SLA response.</span>
@@ -1328,7 +1332,8 @@
@foreach ($ticket->checklistItems as $item)
<label
class="flex items-start gap-2 rounded-lg border border-zinc-200 p-2 text-xs dark:border-zinc-700">
<input type="checkbox" wire:click="toggleChecklistItem({{ $item->id }})"
<label for="sonar-input-a729c04093" class="visually-hidden">sonar input a729c04093</label>
<input type="checkbox" wire:click="toggleChecklistItem({{ $item- id="sonar-input-a729c04093">id }})"
@checked($item->is_completed) class="mt-1 rounded border-zinc-300">
<span
class="{{ $item->is_completed ? 'text-zinc-500 line-through' : 'text-zinc-800 dark:text-zinc-100' }}">{{ $item->title }}</span>