From ccbdb155f80bf9e3bb9c6d77a54ac816318bd0bb Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Wed, 12 Feb 2025 23:00:18 -0800 Subject: [PATCH] Hide button if not enabled should be in details --- src-ui/messages.xlf | 82 +++++++++---------- .../email-document-dialog.component.spec.ts | 7 -- .../email-document-dialog.component.ts | 9 +- .../document-detail.component.html | 8 +- .../document-detail.component.spec.ts | 5 ++ .../document-detail.component.ts | 4 + 6 files changed, 56 insertions(+), 59 deletions(-) diff --git a/src-ui/messages.xlf b/src-ui/messages.xlf index ed4458ec2..ae9abe847 100644 --- a/src-ui/messages.xlf +++ b/src-ui/messages.xlf @@ -385,7 +385,7 @@ src/app/components/document-detail/document-detail.component.html - 115 + 117 @@ -534,7 +534,7 @@ src/app/components/document-detail/document-detail.component.html - 368 + 370 @@ -593,7 +593,7 @@ src/app/components/document-detail/document-detail.component.html - 361 + 363 src/app/components/document-list/bulk-editor/custom-fields-bulk-edit-dialog/custom-fields-bulk-edit-dialog.component.html @@ -739,7 +739,7 @@ src/app/components/document-detail/document-detail.component.html - 381 + 383 src/app/components/document-list/document-list.component.html @@ -1190,7 +1190,7 @@ src/app/components/document-detail/document-detail.component.html - 337 + 339 src/app/components/document-list/bulk-editor/bulk-editor.component.html @@ -3391,7 +3391,7 @@ src/app/components/document-detail/document-detail.component.html - 109 + 111 src/app/components/document-detail/document-detail.component.ts @@ -4288,7 +4288,7 @@ src/app/components/document-detail/document-detail.component.html - 303 + 305 @@ -4392,7 +4392,7 @@ src/app/components/document-detail/document-detail.component.html - 95 + 96 @@ -5104,21 +5104,21 @@ Email Document src/app/components/common/email-document-dialog/email-document-dialog.component.ts - 19 + 17 Email sent src/app/components/common/email-document-dialog/email-document-dialog.component.ts - 72 + 65 Error emailing document src/app/components/common/email-document-dialog/email-document-dialog.component.ts - 76 + 69 @@ -6450,21 +6450,21 @@ Previous src/app/components/document-detail/document-detail.component.html - 112 + 114 Details src/app/components/document-detail/document-detail.component.html - 125 + 127 Title src/app/components/document-detail/document-detail.component.html - 128 + 130 src/app/components/document-list/document-list.component.html @@ -6487,21 +6487,21 @@ Archive serial number src/app/components/document-detail/document-detail.component.html - 129 + 131 Date created src/app/components/document-detail/document-detail.component.html - 130 + 132 Correspondent src/app/components/document-detail/document-detail.component.html - 132 + 134 src/app/components/document-list/bulk-editor/bulk-editor.component.html @@ -6528,7 +6528,7 @@ Document type src/app/components/document-detail/document-detail.component.html - 134 + 136 src/app/components/document-list/bulk-editor/bulk-editor.component.html @@ -6555,7 +6555,7 @@ Storage path src/app/components/document-detail/document-detail.component.html - 136 + 138 src/app/components/document-list/bulk-editor/bulk-editor.component.html @@ -6578,7 +6578,7 @@ Default src/app/components/document-detail/document-detail.component.html - 137 + 139 src/app/components/manage/saved-views/saved-views.component.html @@ -6589,14 +6589,14 @@ Content src/app/components/document-detail/document-detail.component.html - 233 + 235 Metadata src/app/components/document-detail/document-detail.component.html - 242 + 244 src/app/components/document-detail/metadata-collapse/metadata-collapse.component.ts @@ -6607,119 +6607,119 @@ Date modified src/app/components/document-detail/document-detail.component.html - 249 + 251 Date added src/app/components/document-detail/document-detail.component.html - 253 + 255 Media filename src/app/components/document-detail/document-detail.component.html - 257 + 259 Original filename src/app/components/document-detail/document-detail.component.html - 261 + 263 Original MD5 checksum src/app/components/document-detail/document-detail.component.html - 265 + 267 Original file size src/app/components/document-detail/document-detail.component.html - 269 + 271 Original mime type src/app/components/document-detail/document-detail.component.html - 273 + 275 Archive MD5 checksum src/app/components/document-detail/document-detail.component.html - 278 + 280 Archive file size src/app/components/document-detail/document-detail.component.html - 284 + 286 Original document metadata src/app/components/document-detail/document-detail.component.html - 293 + 295 Archived document metadata src/app/components/document-detail/document-detail.component.html - 296 + 298 Notes src/app/components/document-detail/document-detail.component.html - 315,318 + 317,320 History src/app/components/document-detail/document-detail.component.html - 326 + 328 Save & next src/app/components/document-detail/document-detail.component.html - 363 + 365 Save & close src/app/components/document-detail/document-detail.component.html - 366 + 368 Document loading... src/app/components/document-detail/document-detail.component.html - 376 + 378 Enter Password src/app/components/document-detail/document-detail.component.html - 430 + 432 @@ -7016,11 +7016,11 @@ An error occurred loading tiff: src/app/components/document-detail/document-detail.component.ts - 1477 + 1481 src/app/components/document-detail/document-detail.component.ts - 1481 + 1485 diff --git a/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.spec.ts b/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.spec.ts index b0f998a41..7a3659205 100644 --- a/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.spec.ts +++ b/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.spec.ts @@ -8,7 +8,6 @@ import { of, throwError } from 'rxjs' import { IfPermissionsDirective } from 'src/app/directives/if-permissions.directive' import { PermissionsService } from 'src/app/services/permissions.service' import { DocumentService } from 'src/app/services/rest/document.service' -import { SettingsService } from 'src/app/services/settings.service' import { ToastService } from 'src/app/services/toast.service' import { EmailDocumentDialogComponent } from './email-document-dialog.component' @@ -40,12 +39,6 @@ describe('EmailDocumentDialogComponent', () => { fixture.detectChanges() }) - it('should get email enabled status from settings', () => { - const settingsService = TestBed.inject(SettingsService) - jest.spyOn(settingsService, 'get').mockReturnValue(true) - expect(component.emailEnabled).toBeTruthy() - }) - it('should set hasArchiveVersion and useArchiveVersion', () => { expect(component.hasArchiveVersion).toBeTruthy() component.hasArchiveVersion = false diff --git a/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.ts b/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.ts index da77838a8..ab8b9768b 100644 --- a/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.ts +++ b/src-ui/src/app/components/common/email-document-dialog/email-document-dialog.component.ts @@ -2,9 +2,7 @@ import { Component, Input } from '@angular/core' import { FormsModule } from '@angular/forms' import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap' import { NgxBootstrapIconsModule } from 'ngx-bootstrap-icons' -import { SETTINGS_KEYS } from 'src/app/data/ui-settings' import { DocumentService } from 'src/app/services/rest/document.service' -import { SettingsService } from 'src/app/services/settings.service' import { ToastService } from 'src/app/services/toast.service' import { LoadingComponentWithPermissions } from '../../loading-component/loading.component' @@ -39,15 +37,10 @@ export class EmailDocumentDialogComponent extends LoadingComponentWithPermission public emailSubject: string = '' public emailMessage: string = '' - get emailEnabled(): boolean { - return this.settingsService.get(SETTINGS_KEYS.EMAIL_ENABLED) - } - constructor( private activeModal: NgbActiveModal, private documentService: DocumentService, - private toastService: ToastService, - private settingsService: SettingsService + private toastService: ToastService ) { super() this.loading = false diff --git a/src-ui/src/app/components/document-detail/document-detail.component.html b/src-ui/src/app/components/document-detail/document-detail.component.html index 399419314..b155cc14d 100644 --- a/src-ui/src/app/components/document-detail/document-detail.component.html +++ b/src-ui/src/app/components/document-detail/document-detail.component.html @@ -91,9 +91,11 @@ - + @if (emailEnabled) { + + } diff --git a/src-ui/src/app/components/document-detail/document-detail.component.spec.ts b/src-ui/src/app/components/document-detail/document-detail.component.spec.ts index d9e74f881..b85a7eaf4 100644 --- a/src-ui/src/app/components/document-detail/document-detail.component.spec.ts +++ b/src-ui/src/app/components/document-detail/document-detail.component.spec.ts @@ -1331,6 +1331,11 @@ describe('DocumentDetailComponent', () => { expect(urlRevokeSpy).toHaveBeenCalled() }) + it('should get email enabled status from settings', () => { + jest.spyOn(settingsService, 'get').mockReturnValue(true) + expect(component.emailEnabled).toBeTruthy() + }) + it('should support open share links and email modals', () => { const modalSpy = jest.spyOn(modalService, 'open') initNormally() diff --git a/src-ui/src/app/components/document-detail/document-detail.component.ts b/src-ui/src/app/components/document-detail/document-detail.component.ts index ae09ed359..27a74cfcd 100644 --- a/src-ui/src/app/components/document-detail/document-detail.component.ts +++ b/src-ui/src/app/components/document-detail/document-detail.component.ts @@ -1433,6 +1433,10 @@ export class DocumentDetailComponent !!this.document?.archived_file_name } + get emailEnabled(): boolean { + return this.settings.get(SETTINGS_KEYS.EMAIL_ENABLED) + } + public openEmailDocument() { const modal = this.modalService.open(EmailDocumentDialogComponent, { backdrop: 'static',