QR: add type-to-confirm delete on the QR code page
Deploy Ladill QR Plus / deploy (push) Successful in 59s

Users asked to delete codes they no longer need. Add a destroy route +
controller action (authorized via QrCodePolicy::delete) and a danger-zone
delete on the show page behind a confirmation modal that requires typing the
code's label — deliberately not a one-click delete since it permanently
breaks the printed code and removes its scan history.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
isaacclad
2026-06-17 20:24:55 +00:00
co-authored by Claude Opus 4.8
parent c4e2c75324
commit 46d0ef8825
3 changed files with 62 additions and 0 deletions
+1
View File
@@ -48,6 +48,7 @@ Route::middleware(['auth'])->group(function () {
Route::post('/qr-codes/style-preview', [QrCodeController::class, 'stylePreview'])->name('user.qr-codes.style-preview');
Route::get('/qr-codes/{qrCode}', [QrCodeController::class, 'show'])->name('user.qr-codes.show');
Route::patch('/qr-codes/{qrCode}', [QrCodeController::class, 'update'])->name('user.qr-codes.update');
Route::delete('/qr-codes/{qrCode}', [QrCodeController::class, 'destroy'])->name('user.qr-codes.destroy');
Route::post('/qr-codes/{qrCode}/canonical-image', [QrCodeController::class, 'storeCanonicalImage'])->name('user.qr-codes.canonical-image');
Route::get('/qr-codes/{qrCode}/preview.png', [QrCodeController::class, 'preview'])->name('user.qr-codes.preview');
Route::get('/qr-codes/{qrCode}/download/{format}', [QrCodeController::class, 'download'])->name('user.qr-codes.download')->whereIn('format', ['png', 'svg', 'pdf']);