From 141d4f8456abbd4f5495f98957708d09b644df22 Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Mon, 10 Jun 2024 07:12:29 -0700
Subject: [PATCH] Support disabling delete confirm
---
src-ui/messages.xlf | 357 +++++++++++++-----
.../admin/settings/settings.component.html | 2 +-
.../bulk-editor/bulk-editor.component.spec.ts | 9 +-
.../bulk-editor/bulk-editor.component.ts | 30 +-
4 files changed, 284 insertions(+), 114 deletions(-)
diff --git a/src-ui/messages.xlf b/src-ui/messages.xlf
index 56cfa9ae4..a643c0c97 100644
--- a/src-ui/messages.xlf
+++ b/src-ui/messages.xlf
@@ -684,6 +684,10 @@
src/app/components/admin/tasks/tasks.component.html
23
+
+ src/app/components/admin/trash/trash.component.html
+ 46
+
src/app/components/admin/users-groups/users-groups.component.html
92
@@ -976,13 +980,6 @@
195
-
- Deleting documents will always ask for confirmation.
-
- src/app/components/admin/settings/settings.component.html
- 195
-
-
Apply on close
@@ -1363,6 +1360,10 @@
src/app/components/admin/tasks/tasks.component.html
42
+
+ src/app/components/admin/trash/trash.component.html
+ 38
+
src/app/components/admin/users-groups/users-groups.component.html
23
@@ -1422,6 +1423,22 @@
src/app/components/admin/settings/settings.component.html
369
+
+ src/app/components/admin/trash/trash.component.html
+ 68
+
+
+ src/app/components/admin/trash/trash.component.html
+ 77
+
+
+ src/app/components/admin/trash/trash.component.ts
+ 57
+
+
+ src/app/components/admin/trash/trash.component.ts
+ 79
+
src/app/components/admin/users-groups/users-groups.component.html
38
@@ -1765,6 +1782,10 @@
src/app/components/admin/tasks/tasks.component.html
9
+
+ src/app/components/admin/trash/trash.component.html
+ 9
+
src/app/components/manage/management-list/management-list.component.html
3
@@ -1788,6 +1809,10 @@
src/app/components/admin/tasks/tasks.component.html
36
+
+ src/app/components/admin/trash/trash.component.html
+ 36
+
src/app/components/admin/users-groups/users-groups.component.html
21
@@ -2045,6 +2070,188 @@
141
+
+ Trash
+
+ src/app/components/admin/trash/trash.component.html
+ 2
+
+
+ src/app/components/app-frame/app-frame.component.html
+ 271
+
+
+ src/app/components/app-frame/app-frame.component.html
+ 274
+
+
+
+ Manage trashed documents that are pending deletion.
+
+ src/app/components/admin/trash/trash.component.html
+ 4
+
+
+
+ Restore selected
+
+ src/app/components/admin/trash/trash.component.html
+ 12
+
+
+
+ Delete selected
+
+ src/app/components/admin/trash/trash.component.html
+ 15
+
+
+
+ Empty trash
+
+ src/app/components/admin/trash/trash.component.html
+ 18
+
+
+
+ Remaining
+
+ src/app/components/admin/trash/trash.component.html
+ 37
+
+
+
+ days
+
+ src/app/components/admin/trash/trash.component.html
+ 59
+
+
+
+ Restore
+
+ src/app/components/admin/trash/trash.component.html
+ 67
+
+
+ src/app/components/admin/trash/trash.component.html
+ 74
+
+
+
+ {VAR_PLURAL, plural, =1 {One object in trash} other { total documents in trash}}
+
+ src/app/components/admin/trash/trash.component.html
+ 90
+
+
+
+ Confirm delete
+
+ src/app/components/admin/trash/trash.component.ts
+ 53
+
+
+ src/app/components/admin/trash/trash.component.ts
+ 73
+
+
+ src/app/components/manage/management-list/management-list.component.ts
+ 203
+
+
+ src/app/components/manage/management-list/management-list.component.ts
+ 320
+
+
+
+ This operation will permanently delete this document.
+
+ src/app/components/admin/trash/trash.component.ts
+ 54
+
+
+
+ This operation cannot be undone.
+
+ src/app/components/admin/trash/trash.component.ts
+ 55
+
+
+ src/app/components/admin/trash/trash.component.ts
+ 77
+
+
+ src/app/components/admin/users-groups/users-groups.component.ts
+ 116
+
+
+ src/app/components/admin/users-groups/users-groups.component.ts
+ 166
+
+
+ src/app/components/manage/custom-fields/custom-fields.component.ts
+ 73
+
+
+ src/app/components/manage/mail/mail.component.ts
+ 114
+
+
+ src/app/components/manage/mail/mail.component.ts
+ 173
+
+
+ src/app/components/manage/management-list/management-list.component.ts
+ 322
+
+
+ src/app/components/manage/workflows/workflows.component.ts
+ 97
+
+
+
+ Document deleted
+
+ src/app/components/admin/trash/trash.component.ts
+ 63
+
+
+
+ This operation will permanently delete documents in the trash.
+
+ src/app/components/admin/trash/trash.component.ts
+ 74,76
+
+
+
+ all
+
+ src/app/components/admin/trash/trash.component.ts
+ 75,76
+
+
+
+ Document(s) deleted
+
+ src/app/components/admin/trash/trash.component.ts
+ 86
+
+
+
+ Document restored
+
+ src/app/components/admin/trash/trash.component.ts
+ 95
+
+
+
+ Document(s) restored
+
+ src/app/components/admin/trash/trash.component.ts
+ 104
+
+
Users & Groups
@@ -2247,41 +2454,6 @@
115
-
- This operation cannot be undone.
-
- src/app/components/admin/users-groups/users-groups.component.ts
- 116
-
-
- src/app/components/admin/users-groups/users-groups.component.ts
- 166
-
-
- src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 714
-
-
- src/app/components/manage/custom-fields/custom-fields.component.ts
- 73
-
-
- src/app/components/manage/mail/mail.component.ts
- 114
-
-
- src/app/components/manage/mail/mail.component.ts
- 173
-
-
- src/app/components/manage/management-list/management-list.component.ts
- 322
-
-
- src/app/components/manage/workflows/workflows.component.ts
- 97
-
-
Proceed
@@ -2310,15 +2482,15 @@
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 755
+ 758
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 788
+ 791
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 807
+ 810
src/app/components/manage/custom-fields/custom-fields.component.ts
@@ -2433,11 +2605,11 @@
src/app/components/app-frame/app-frame.component.html
- 272
+ 279
src/app/components/app-frame/app-frame.component.html
- 275
+ 282
@@ -2612,42 +2784,42 @@
GitHub
src/app/components/app-frame/app-frame.component.html
- 282
+ 289
is available.
src/app/components/app-frame/app-frame.component.html
- 291,292
+ 298,299
Click to view.
src/app/components/app-frame/app-frame.component.html
- 292
+ 299
Paperless-ngx can automatically check for updates
src/app/components/app-frame/app-frame.component.html
- 296
+ 303
How does this work?
src/app/components/app-frame/app-frame.component.html
- 303,305
+ 310,312
Update available
src/app/components/app-frame/app-frame.component.html
- 316
+ 323
@@ -2887,6 +3059,10 @@
src/app/components/common/permissions-dialog/permissions-dialog.component.html
26
+
+ src/app/components/document-detail/document-detail.component.ts
+ 776
+
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
401
@@ -2907,6 +3083,10 @@
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
579
+
+ src/app/components/document-list/bulk-editor/bulk-editor.component.ts
+ 712
+
Page
@@ -5864,41 +6044,34 @@
749
-
- Confirm delete
-
- src/app/components/document-detail/document-detail.component.ts
- 776
-
-
- src/app/components/manage/management-list/management-list.component.ts
- 203
-
-
- src/app/components/manage/management-list/management-list.component.ts
- 320
-
-
-
- Do you really want to delete document ""?
+
+ Do you really want to move the document "" to the trash?
src/app/components/document-detail/document-detail.component.ts
777
-
- The files for this document will be deleted permanently. This operation cannot be undone.
+
+ Documents can be restored prior to permanent deletion.
src/app/components/document-detail/document-detail.component.ts
778
+
+ src/app/components/document-list/bulk-editor/bulk-editor.component.ts
+ 714
+
-
- Delete document
+
+ Move to trash
src/app/components/document-detail/document-detail.component.ts
780
+
+ src/app/components/document-list/bulk-editor/bulk-editor.component.ts
+ 716
+
Error deleting document
@@ -5915,7 +6088,7 @@
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 751
+ 754
@@ -5989,7 +6162,7 @@
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 784
+ 787
@@ -6364,74 +6537,60 @@
571,575
-
- Delete confirm
-
- src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 712
-
-
-
- This operation will permanently delete selected document(s).
+
+ Move selected document(s) to the trash?
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
713
-
- Delete document(s)
-
- src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 716
-
-
This operation will permanently recreate the archive files for selected document(s).
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 752
+ 755
The archive files will be re-generated with the current settings.
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 753
+ 756
This operation will permanently rotate the original version of document(s).
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 785
+ 788
This will alter the original copy.
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 786
+ 789
Merge confirm
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 805
+ 808
This operation will merge selected documents into a new document.
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 806
+ 809
Merged document will be queued for consumption.
src/app/components/document-list/bulk-editor/bulk-editor.component.ts
- 822
+ 825
diff --git a/src-ui/src/app/components/admin/settings/settings.component.html b/src-ui/src/app/components/admin/settings/settings.component.html
index bcab7de33..285599639 100644
--- a/src-ui/src/app/components/admin/settings/settings.component.html
+++ b/src-ui/src/app/components/admin/settings/settings.component.html
@@ -192,7 +192,7 @@
diff --git a/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.spec.ts b/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.spec.ts
index cbc8cc4bf..6a58abf1e 100644
--- a/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.spec.ts
+++ b/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.spec.ts
@@ -858,7 +858,7 @@ describe('BulkEditorComponent', () => {
)
})
- it('should support bulk delete with confirmation', () => {
+ it('should support bulk delete with confirmation or without', () => {
let modal: NgbModalRef
modalService.activeInstances.subscribe((m) => (modal = m[0]))
jest.spyOn(permissionsService, 'currentUserCan').mockReturnValue(true)
@@ -891,6 +891,13 @@ describe('BulkEditorComponent', () => {
httpTestingController.match(
`${environment.apiBaseUrl}documents/?page=1&page_size=100000&fields=id`
) // listAllFilteredIds
+
+ component.showConfirmationDialogs = false
+ fixture.detectChanges()
+ component.applyDelete()
+ req = httpTestingController.expectOne(
+ `${environment.apiBaseUrl}documents/bulk_edit/`
+ )
})
it('should not be accessible with insufficient global permissions', () => {
diff --git a/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.ts b/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.ts
index 763e69b0e..f823fe2bb 100644
--- a/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.ts
+++ b/src-ui/src/app/components/document-list/bulk-editor/bulk-editor.component.ts
@@ -705,20 +705,24 @@ export class BulkEditorComponent
}
applyDelete() {
- let modal = this.modalService.open(ConfirmDialogComponent, {
- backdrop: 'static',
- })
- modal.componentInstance.title = $localize`Confirm`
- modal.componentInstance.messageBold = $localize`Move ${this.list.selected.size} selected document(s) to the trash?`
- modal.componentInstance.message = $localize`Documents can be restored prior to permanent deletion.`
- modal.componentInstance.btnClass = 'btn-danger'
- modal.componentInstance.btnCaption = $localize`Move to trash`
- modal.componentInstance.confirmClicked
- .pipe(takeUntil(this.unsubscribeNotifier))
- .subscribe(() => {
- modal.componentInstance.buttonsEnabled = false
- this.executeBulkOperation(modal, 'delete', {})
+ if (this.showConfirmationDialogs) {
+ let modal = this.modalService.open(ConfirmDialogComponent, {
+ backdrop: 'static',
})
+ modal.componentInstance.title = $localize`Confirm`
+ modal.componentInstance.messageBold = $localize`Move ${this.list.selected.size} selected document(s) to the trash?`
+ modal.componentInstance.message = $localize`Documents can be restored prior to permanent deletion.`
+ modal.componentInstance.btnClass = 'btn-danger'
+ modal.componentInstance.btnCaption = $localize`Move to trash`
+ modal.componentInstance.confirmClicked
+ .pipe(takeUntil(this.unsubscribeNotifier))
+ .subscribe(() => {
+ modal.componentInstance.buttonsEnabled = false
+ this.executeBulkOperation(modal, 'delete', {})
+ })
+ } else {
+ this.executeBulkOperation(null, 'delete', {})
+ }
}
downloadSelected() {