2021-03-06 14:50:38 -08:00
< div class = "card mb-3 shadow-sm" [ class . card-selected ]=" selected " [ class . document-card ]=" selectable " [ class . popover-hidden ]=" popoverHidden " ( mouseleave )=" mouseLeaveCard ()" >
2022-02-19 21:38:07 -08:00
< div class = "row g-0" >
2023-03-28 22:10:12 -07:00
< div class = "col-md-2 doc-img-background rounded-start" [ class . doc-img-background-selected ]=" selected " ( click )=" this . toggleSelected . emit ($ event )" ( dblclick )=" dblClickDocument . emit ()" >
2022-02-20 01:21:30 +01:00
< img [ src ]=" getThumbUrl ()" class = "card-img doc-img border-end rounded-start" [ class . inverted ]=" getIsThumbInverted ()" >
2020-12-22 02:43:18 +01:00
2022-02-19 22:57:04 -08:00
< div class = "border-end border-bottom bg-light document-card-check" >
< div class = "form-check" >
< input type = "checkbox" class = "form-check-input" id = "smallCardCheck{{document.id}}" [ checked ]=" selected " ( click )=" this . toggleSelected . emit ($ event )" >
< label class = "form-check-label" for = "smallCardCheck{{document.id}}" ></ label >
2020-12-22 02:43:18 +01:00
</ div >
</ div >
2020-10-27 01:10:18 +01:00
</ div >
< div class = "col" >
2020-12-28 16:52:51 -08:00
< div class = "card-body bg-light" >
2020-10-27 01:10:18 +01:00
2020-11-02 12:44:06 +01:00
< div class = "d-flex justify-content-between align-items-center" >
2020-12-11 15:20:47 -08:00
< h5 class = "card-title" >
2020-12-04 01:25:52 +01:00
< ng-container * ngIf = "document.correspondent" >
2022-03-27 00:08:08 -07:00
< a * ngIf = "clickCorrespondent.observers.length ; else nolink" title = "Filter by correspondent" i18n-title ( click )=" clickCorrespondent . emit ( document . correspondent );$ event . stopPropagation ()" class = "fw-bold btn-link" > {{(document.correspondent$ | async)?.name}}</ a >
2020-12-04 01:25:52 +01:00
< ng-template # nolink > {{(document.correspondent$ | async)?.name}}</ ng-template > :
2020-11-28 21:28:07 +01:00
</ ng-container >
2020-12-11 17:57:56 +01:00
{{document.title | documentTitle}}
2022-02-20 01:21:30 +01:00
< app-tag [ tag ]=" t " linkTitle = "Filter by tag" i18n-linkTitle * ngFor = "let t of document.tags$ | async" class = "ms-1" ( click )=" clickTag . emit ( t . id );$ event . stopPropagation ()" [ clickable ]=" clickTag . observers . length " ></ app-tag >
2020-11-28 21:28:07 +01:00
</ h5 >
2020-11-02 12:44:06 +01:00
</ div >
2020-10-27 01:10:18 +01:00
< p class = "card-text" >
2023-01-04 19:06:51 -08:00
< span * ngIf = "document.__search_hit__ && document.__search_hit__.highlights" [ innerHtml ]=" document . __search_hit__ . highlights " ></ span >
2023-03-17 16:36:08 -07:00
< span * ngFor = "let highlight of searchNoteHighlights" class = "d-block" >
2023-01-04 19:06:51 -08:00
< svg width = "1em" height = "1em" fill = "currentColor" class = "me-2" >
< use xlink:href = "assets/bootstrap-icons.svg#chat-left-text" />
</ svg >
2023-01-27 10:29:40 -08:00
< span [ innerHtml ]=" highlight " ></ span >
2023-01-04 19:06:51 -08:00
</ span >
2021-03-17 22:25:22 +01:00
< span * ngIf = "!document.__search_hit__" class = "result-content" > {{contentTrimmed}}</ span >
2020-10-27 01:10:18 +01:00
</ p >
2021-01-09 19:52:31 -08:00
< div class = "d-flex flex-column flex-md-row align-items-md-center" >
2020-10-27 01:10:18 +01:00
< div class = "btn-group" >
2021-03-17 22:25:22 +01:00
< a class = "btn btn-sm btn-outline-secondary" ( click )=" clickMoreLike . emit ()" >
2022-05-12 20:14:59 -07:00
< svg class = "sidebaricon" fill = "currentColor" class = "sidebaricon" >
< use xlink:href = "assets/bootstrap-icons.svg#diagram-3" />
</ svg > < span class = "d-none d-md-inline" i18n > More like this</ span >
2020-12-17 21:36:21 +01:00
</ a >
2022-12-17 20:09:29 -08:00
< a routerLink = "/documents/{{document.id}}" class = "btn btn-sm btn-outline-secondary" * appIfPermissions = "{ action: PermissionAction.Change, type: PermissionType.Document }" >
2022-05-12 20:14:59 -07:00
< svg class = "sidebaricon" fill = "currentColor" class = "sidebaricon" >
< use xlink:href = "assets/bootstrap-icons.svg#pencil" />
</ svg > < span class = "d-none d-md-inline" i18n > Edit</ span >
2020-10-27 01:10:18 +01:00
</ a >
2022-04-19 21:47:49 +02:00
< a class = "btn btn-sm btn-outline-secondary" target = "_blank" [ href ]=" previewUrl "
2021-03-06 14:50:38 -08:00
[ ngbPopover ]=" previewContent " [ popoverTitle ]=" document . title | documentTitle "
2023-07-26 10:52:47 -07:00
autoClose = "true" popoverClass = "shadow popover-preview" ( mouseenter )=" mouseEnterPreview ()" ( mouseleave )=" mouseLeavePreview ()" # popover = "ngbPopover" >
2022-05-12 20:14:59 -07:00
< svg class = "sidebaricon" fill = "currentColor" class = "sidebaricon" >
< use xlink:href = "assets/bootstrap-icons.svg#eye" />
</ svg > < span class = "d-none d-md-inline" i18n > View</ span >
2020-11-28 14:50:14 +01:00
</ a >
2021-02-24 13:02:26 -08:00
< ng-template # previewContent >
2022-03-22 22:01:46 -07:00
< object [ data ]=" previewUrl | safeUrl " class = "preview" width = "100%" ></ object >
2021-02-24 13:02:26 -08:00
</ ng-template >
2021-01-08 22:09:15 -08:00
< a class = "btn btn-sm btn-outline-secondary" [ href ]=" getDownloadUrl ()" >
2022-05-12 20:14:59 -07:00
< svg class = "sidebaricon" fill = "currentColor" class = "sidebaricon" >
< use xlink:href = "assets/bootstrap-icons.svg#download" />
</ svg > < span class = "d-none d-md-inline" i18n > Download</ span >
2020-10-27 01:10:18 +01:00
</ a >
</ div >
2020-12-18 14:09:12 +01:00
2023-03-16 00:42:24 -07:00
2022-02-20 01:21:30 +01:00
< div class = "list-group list-group-horizontal border-0 card-info ms-md-auto mt-2 mt-md-0" >
2023-03-17 16:36:08 -07:00
< button * ngIf = "notesEnabled && document.notes.length" routerLink = "/documents/{{document.id}}/notes" class = "list-group-item btn btn-sm bg-light text-dark p-1 border-0 me-2" title = "View notes" i18n-title >
2023-03-16 00:42:24 -07:00
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#chat-left-text" />
</ svg >
2023-03-17 16:36:08 -07:00
< small i18n > {{document.notes.length}} Notes</ small >
2023-03-16 00:42:24 -07:00
</ button >
2022-05-19 23:50:57 -07:00
< button * ngIf = "document.document_type" type = "button" class = "list-group-item btn btn-sm bg-light text-dark p-1 border-0 me-2" title = "Filter by document type" i18n-title
2021-03-12 06:54:22 -08:00
( click )=" clickDocumentType . emit ( document . document_type );$ event . stopPropagation ()" >
2023-03-16 00:42:24 -07:00
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#file-earmark" />
2021-03-12 06:54:22 -08:00
</ svg >
< small > {{(document.document_type$ | async)?.name}}</ small >
</ button >
2022-05-19 23:50:57 -07:00
< button * ngIf = "document.storage_path" type = "button" class = "list-group-item btn btn-sm bg-light text-dark p-1 border-0 me-2" title = "Filter by storage path" i18n-title
2022-05-19 23:42:25 +02:00
( click )=" clickStoragePath . emit ( document . storage_path );$ event . stopPropagation ()" >
2023-03-16 00:42:24 -07:00
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#archive" />
2022-05-19 23:42:25 +02:00
</ svg >
< small > {{(document.storage_path$ | async)?.name}}</ small >
</ button >
2022-02-20 01:21:30 +01:00
< div * ngIf = "document.archive_serial_number" class = "list-group-item me-2 bg-light text-dark p-1 border-0" >
2023-03-16 00:42:24 -07:00
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#upc-scan" />
2021-03-12 06:54:22 -08:00
</ svg >
< small > #{{document.archive_serial_number}}</ small >
2021-03-12 19:35:25 -08:00
</ div >
2022-05-19 23:50:57 -07:00
< ng-template # dateTooltip >
2023-07-26 11:31:37 -07:00
< div class = "d-flex flex-column text-light" >
2022-05-19 23:50:57 -07:00
< span i18n > Created: {{ document.created | customDate }}</ span >
< span i18n > Added: {{ document.added | customDate }}</ span >
< span i18n > Modified: {{ document.modified | customDate }}</ span >
</ div >
</ ng-template >
< div class = "list-group-item bg-light text-dark p-1 border-0" [ ngbTooltip ]=" dateTooltip " >
2023-03-16 00:42:24 -07:00
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#calendar-event" />
2021-03-12 06:54:22 -08:00
</ svg >
2022-05-16 00:30:21 -07:00
< small > {{document.created_date | customDate:'mediumDate'}}</ small >
2021-03-12 19:35:25 -08:00
</ div >
2023-05-02 20:41:41 -07:00
< div * ngIf = "document.owner && document.owner !== settingsService.currentUser.id" class = "list-group-item bg-light text-dark p-1 border-0" >
< svg class = "metadata-icon me-2 text-muted" fill = "currentColor" >
< use xlink:href = "assets/bootstrap-icons.svg#person-fill-lock" />
</ svg >
< small > {{document.owner | username}}</ small >
</ div >
2022-02-20 01:21:30 +01:00
< div * ngIf = "document.__search_hit__?.score" class = "list-group-item bg-light text-dark border-0 d-flex p-0 ps-4 search-score" >
2021-04-03 21:50:05 +02:00
< small class = "text-muted" i18n > Score:</ small >
< ngb-progressbar [ type ]=" searchScoreClass " [ value ]=" document . __search_hit__ . score " class = "search-score-bar mx-2 mt-1" [ max ]=" 1 " ></ ngb-progressbar >
</ div >
2021-01-09 19:52:31 -08:00
</ div >
2020-10-27 01:10:18 +01:00
</ div >
2020-12-28 14:20:00 -08:00
2020-10-27 01:10:18 +01:00
</ div >
</ div >
</ div >
2020-12-11 15:20:47 -08:00
</ div >