2020-10-27 01:10:18 +01:00
< app-page-header [ ( title ) ] = " title " >
2021-01-14 13:35:21 +01:00
< div class = "input-group input-group-sm mr-5 d-none d-md-flex" * ngIf = "getContentType() == 'application/pdf' && !useNativePdfViewer" >
2020-12-18 14:31:09 -08:00
< div class = "input-group-prepend" >
2020-12-23 15:09:39 +01:00
< div class = "input-group-text" i18n > Page< / div >
2020-12-18 14:31:09 -08:00
< / div >
2020-12-18 14:47:06 -08:00
< input class = "form-control flex-grow-0 w-auto" type = "number" min = "1" [ max ] = " previewNumPages " [ ( ngModel ) ] = " previewCurrentPage " / >
2020-12-18 14:31:09 -08:00
< div class = "input-group-append" >
2020-12-23 15:09:39 +01:00
< div class = "input-group-text" i18n > of {{previewNumPages}}< / div >
2020-12-18 14:31:09 -08:00
< / div >
< / div >
2021-01-11 11:49:27 -08:00
< button type = "button" class = "btn btn-sm btn-outline-danger mr-2 ml-auto" ( click ) = " delete ( ) " >
2020-10-27 01:10:18 +01:00
< svg class = "buttonicon" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#trash" / >
2020-12-23 15:09:39 +01:00
< / svg > < span class = "d-none d-lg-inline" i18n > Delete< / span >
2020-10-27 01:10:18 +01:00
< / button >
2020-11-25 18:01:43 +01:00
< div class = "btn-group mr-2" >
< a [ href ] = " downloadUrl " class = "btn btn-sm btn-outline-primary" >
< svg class = "buttonicon" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#download" / >
2020-12-23 15:09:39 +01:00
< / svg > < span class = "d-none d-lg-inline" i18n > Download< / span >
2020-11-25 18:01:43 +01:00
< / a >
2020-12-11 14:22:02 -08:00
2020-12-08 15:28:09 +01:00
< div class = "btn-group" ngbDropdown role = "group" * ngIf = "metadata?.has_archive_version" >
2020-12-07 23:42:18 +01:00
< button class = "btn btn-sm btn-outline-primary dropdown-toggle-split" ngbDropdownToggle > < / button >
2020-12-09 13:44:37 +01:00
< div class = "dropdown-menu shadow" ngbDropdownMenu >
2020-12-23 15:09:39 +01:00
< a ngbDropdownItem [ href ] = " downloadOriginalUrl " i18n > Download original< / a >
2020-12-07 23:42:18 +01:00
< / div >
2020-11-25 18:01:43 +01:00
< / div >
2020-12-11 14:22:02 -08:00
2020-12-07 23:42:18 +01:00
< / div >
2020-11-25 18:01:43 +01:00
2020-12-17 21:36:21 +01:00
< button type = "button" class = "btn btn-sm btn-outline-primary mr-2" ( click ) = " moreLike ( ) " >
< svg class = "buttonicon" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#three-dots" / >
2020-12-23 15:09:39 +01:00
< / svg > < span class = "d-none d-lg-inline" i18n > More like this< / span >
2020-12-17 21:36:21 +01:00
< / button >
2020-11-25 18:01:43 +01:00
2022-02-16 01:06:22 -08:00
< button type = "button" class = "btn btn-sm btn-outline-primary" ( click ) = " close ( ) " >
2020-10-27 01:10:18 +01:00
< svg class = "buttonicon" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#x" / >
2020-12-23 15:09:39 +01:00
< / svg > < span class = "d-none d-lg-inline" i18n > Close< / span >
2020-10-27 01:10:18 +01:00
< / button >
< / app-page-header >
< div class = "row" >
2020-12-12 22:56:44 +01:00
< div class = "col mb-4" >
2020-10-28 20:21:00 +01:00
2020-12-07 23:42:18 +01:00
< form [ formGroup ] = ' documentForm ' ( ngSubmit ) = " save ( ) " >
2020-10-28 20:21:00 +01:00
2020-12-07 23:42:18 +01:00
< ul ngbNav # nav = "ngbNav" class = "nav-tabs" >
< li [ ngbNavItem ] = " 1 " >
2020-12-23 15:09:39 +01:00
< a ngbNavLink i18n > Details< / a >
2020-12-07 23:42:18 +01:00
< ng-template ngbNavContent >
2021-01-05 22:11:42 +01:00
< app-input-text # inputTitle i18n-title title = "Title" formControlName = "title" [ error ] = " error ? . title " > < / app-input-text >
2021-01-03 13:09:16 +01:00
< app-input-number i18n-title title = "Archive serial number" [ error ] = " error ? . archive_serial_number " formControlName = 'archive_serial_number' > < / app-input-number >
2021-02-24 18:00:26 +01:00
< app-input-date i18n-title title = "Date created" formControlName = "created" [ error ] = " error ? . created " > < / app-input-date >
2020-12-23 15:09:39 +01:00
< app-input-select [ items ] = " correspondents " i18n-title title = "Correspondent" formControlName = "correspondent" [ allowNull ] = " true "
2021-03-24 12:21:13 -07:00
(createNew)="createCorrespondent($event)" [suggestions]="suggestions?.correspondents">< / app-input-select >
2020-12-23 15:09:39 +01:00
< app-input-select [ items ] = " documentTypes " i18n-title title = "Document type" formControlName = "document_type" [ allowNull ] = " true "
2021-03-24 12:21:13 -07:00
(createNew)="createDocumentType($event)" [suggestions]="suggestions?.document_types">< / app-input-select >
2021-01-29 16:48:51 +01:00
< app-input-tags formControlName = "tags" [ suggestions ] = " suggestions ? . tags " > < / app-input-tags >
2020-12-07 23:42:18 +01:00
< / ng-template >
< / li >
< li [ ngbNavItem ] = " 2 " >
2020-12-23 15:09:39 +01:00
< a ngbNavLink i18n > Content< / a >
2020-12-07 23:42:18 +01:00
< ng-template ngbNavContent >
< div class = "form-group" >
< textarea class = "form-control" id = "content" rows = "20" formControlName = 'content' > < / textarea >
< / div >
< / ng-template >
< / li >
< li [ ngbNavItem ] = " 3 " >
2020-12-23 15:09:39 +01:00
< a ngbNavLink i18n > Metadata< / a >
2020-12-07 23:42:18 +01:00
< ng-template ngbNavContent >
2020-12-08 15:28:09 +01:00
2020-12-07 23:42:18 +01:00
< table class = "table table-borderless" >
< tbody >
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Date modified< / td >
2021-01-17 00:15:45 +01:00
< td > {{document.modified | customDate}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Date added< / td >
2021-01-17 00:15:45 +01:00
< td > {{document.added | customDate}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
2020-12-08 16:09:47 +01:00
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Media filename< / td >
2020-12-08 16:09:47 +01:00
< td > {{metadata?.media_filename}}< / td >
< / tr >
2020-12-07 23:42:18 +01:00
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Original MD5 checksum< / td >
2020-12-08 15:28:09 +01:00
< td > {{metadata?.original_checksum}}< / td >
< / tr >
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Original file size< / td >
2020-12-08 16:09:47 +01:00
< td > {{metadata?.original_size | fileSize}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
< tr >
2020-12-23 15:09:39 +01:00
< td i18n > Original mime type< / td >
2020-12-08 15:28:09 +01:00
< td > {{metadata?.original_mime_type}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
2020-12-08 16:09:47 +01:00
< tr * ngIf = "metadata?.has_archive_version" >
2020-12-23 15:09:39 +01:00
< td i18n > Archive MD5 checksum< / td >
2020-12-08 16:09:47 +01:00
< td > {{metadata?.archive_checksum}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
2020-12-08 16:09:47 +01:00
< tr * ngIf = "metadata?.has_archive_version" >
2020-12-23 15:09:39 +01:00
< td i18n > Archive file size< / td >
2020-12-08 16:09:47 +01:00
< td > {{metadata?.archive_size | fileSize}}< / td >
2020-12-07 23:42:18 +01:00
< / tr >
< / tbody >
< / table >
2020-12-08 15:28:09 +01:00
2020-12-23 15:09:39 +01:00
< app-metadata-collapse i18n-title title = "Original document metadata" [ metadata ] = " metadata . original_metadata " * ngIf = "metadata?.original_metadata?.length > 0" > < / app-metadata-collapse >
< app-metadata-collapse i18n-title title = "Archived document metadata" [ metadata ] = " metadata . archive_metadata " * ngIf = "metadata?.archive_metadata?.length > 0" > < / app-metadata-collapse >
2020-12-08 15:28:09 +01:00
2020-12-07 23:42:18 +01:00
< / ng-template >
< / li >
2020-12-13 02:28:02 -08:00
< li [ ngbNavItem ] = " 4 " class = "d-md-none" >
< a ngbNavLink > Preview< / a >
2020-12-17 00:50:40 -08:00
< ng-template ngbNavContent * ngIf = "pdfPreview.offsetParent == undefined" >
2022-02-16 12:00:19 -08:00
< ng-container * ngIf = "getContentType() == 'application/pdf'" >
< div class = "preview-sticky pdf-viewer-container" * ngIf = "!useNativePdfViewer ; else nativePdfViewer" >
< pdf-viewer [ src ] = " previewUrl " [ original-size ] = " false " [ show-borders ] = " true " [ show-all ] = " true " [ render-text-mode ] = " 2 " > < / pdf-viewer >
< / div >
< ng-template # nativePdfViewer >
< object [ data ] = " previewUrl | safe " class = "preview-sticky" width = "100%" > < / object >
< / ng-template >
< / ng-container >
< ng-container * ngIf = "getContentType() == 'text/plain'" >
< object [ data ] = " previewUrl | safe " type = "text/plain" class = "preview-sticky bg-white" width = "100%" > < / object >
< / ng-container >
2020-12-13 02:28:02 -08:00
< / ng-template >
< / li >
2020-12-07 23:42:18 +01:00
< / ul >
< div [ ngbNavOutlet ] = " nav " class = "mt-2" > < / div >
2020-10-27 01:10:18 +01:00
2021-01-25 23:09:56 -08:00
< button type = "button" class = "btn btn-outline-secondary" ( click ) = " discard ( ) " i18n [ disabled ] = " networkActive | | ! ( isDirty $ | async ) " > Discard< / button >
2021-01-25 23:00:57 -08:00
< button type = "button" class = "btn btn-outline-primary" ( click ) = " saveEditNext ( ) " * ngIf = "hasNext()" i18n [ disabled ] = " networkActive | | ! ( isDirty $ | async ) " > Save & next< / button >
< button type = "submit" class = "btn btn-primary" i18n [ disabled ] = " networkActive | | ! ( isDirty $ | async ) " > Save< / button >
2020-10-27 01:10:18 +01:00
< / form >
< / div >
2020-12-17 00:50:40 -08:00
< div class = "col-md-6 col-xl-8 mb-3 d-none d-md-block" # pdfPreview >
2021-01-14 13:35:21 +01:00
< ng-container * ngIf = "getContentType() == 'application/pdf'" >
< div class = "preview-sticky pdf-viewer-container" * ngIf = "!useNativePdfViewer ; else nativePdfViewer" >
< pdf-viewer [ src ] = " previewUrl " [ original-size ] = " false " [ show-borders ] = " true " [ show-all ] = " true " [ ( page ) ] = " previewCurrentPage " [ render-text-mode ] = " 2 " ( after-load-complete ) = " pdfPreviewLoaded ( $ event ) " > < / pdf-viewer >
< / div >
< ng-template # nativePdfViewer >
2021-04-28 07:32:18 -07:00
< object [ data ] = " previewUrl | safe " class = "preview-sticky" width = "100%" > < / object >
2021-01-14 13:35:21 +01:00
< / ng-template >
2021-01-19 16:23:49 +01:00
< / ng-container >
< ng-container * ngIf = "getContentType() == 'text/plain'" >
2022-01-13 11:13:33 -08:00
< object [ data ] = " previewUrl | safe " type = "text/plain" class = "preview-sticky bg-white" width = "100%" > < / object >
2021-01-19 16:23:49 +01:00
< / ng-container >
2020-10-27 01:10:18 +01:00
< / div >
2020-12-12 08:43:03 -08:00
< / div >