]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/eg2/src/app/staff/catalog/record/record.component.html
LP1915464 follow-up: use spaces, not tabs; remove extra comma
[working/Evergreen.git] / Open-ILS / src / eg2 / src / app / staff / catalog / record / record.component.html
1
2 <ng-container *ngIf="summary">
3   <eg-title i18n-prefix prefix="Bib {{summary.record.tcn_value()}} - {{summary.display.title}}">
4   </eg-title>
5 </ng-container>
6
7 <eg-confirm-dialog #pendingChangesDialog
8   i18n-dialogTitle dialogTitle="Unsaved Changes Confirmation" 
9   i18n-dialogBoby  dialogBody="Unsaved changes will be lost.  Continue navigation?">
10 </eg-confirm-dialog>
11
12 <div id="staff-catalog-record-container" role="region" aria-labelledby="bib-record-summary">
13   <div id='staff-catalog-bib-summary-container' class='mt-1'>
14     <eg-bib-summary [bibSummary]="summaryForDisplay()">
15     </eg-bib-summary>
16   </div>
17   <div class="row ms-0 me-0">
18     <div class="col-5 ps-0">
19       <div id='staff-catalog-bib-navigation'>
20         <eg-catalog-record-pagination [recordId]="recordId" [recordTab]="recordTab">
21         </eg-catalog-record-pagination>
22       </div>
23     </div>
24     <!-- push the actions component to the right -->
25     <div class="col-7 d-flex pe-0">
26       <div class="flex-1"></div>
27       <div id='staff-catalog-bib-actions'>
28         <eg-catalog-record-actions [recordId]="recordId"
29           [isHoldable]="summary && summary.isHoldable"
30           (addHoldingsRequested)="addHoldingsRequested()">
31         </eg-catalog-record-actions>
32       </div>
33     </div>
34   </div>
35   <div id='staff-catalog-bib-tabs-container' class='mt-3'>
36     <div class="w-100">
37       <div class="text-end">
38         <button type="button" class="btn btn-secondary btn-sm"
39             [disabled]="recordTab === defaultTab"
40             (click)="setDefaultTab()" i18n>Set Default View</button>
41       </div>
42     </div>
43     <ul ngbNav #recordTabs="ngbNav" [(activeId)]="recordTab" [destroyOnHide]="false"
44       (navChange)="beforeNavChange($event)" [keyboard]="true" [roles]="false" role="tablist" class="nav-tabs">
45       <li role="presentation" [ngbNavItem]="'staff_view'">
46         <h2><a i18n ngbNavLink role="tab">Staff View</a></h2>
47         <ng-template ngbNavContent>
48           <eg-bib-staff-view [recordId]="recordId" [bibSummary]="summaryForDisplay()">
49           </eg-bib-staff-view>
50         </ng-template>
51       </li>
52
53       <!-- ADDED CONTENT -->
54       <!-- This tab must not be destroyed on hide. It calls external
55               scripts that determine whether added content is available -->
56       <li role="presentation" [destroyOnHide]="false" [ngbNavItem]="'added-content'" [hidden]="!added_content_activated">
57         <h2><a ngbNavLink role="tab">
58           <span id="added-content-data" style="display: none;">
59             <span i18n>Added Content</span>
60             <span class="material-icons tab-icon text-warning" aria-hidden="true">star</span>
61           </span>
62       
63           <span id="added-content-no-data" style="display: inline;">
64             <span i18n>No Added Content</span>
65             <span class="material-icons tab-icon text-muted" aria-hidden="true">star_outline</span>
66           </span>
67         </a></h2>
68         <ng-template ngbNavContent>
69           <div class="mt-2" *ngIf="summary">
70             <eg-catalog-added-content [bibSummary]="summary">
71             </eg-catalog-added-content>
72           </div>
73         </ng-template>
74       </li>
75
76       <li role="presentation" [ngbNavItem]="'item_table'" [destroyOnHide]="true">
77         <h2><a i18n ngbNavLink role="tab">Item Table</a></h2>
78         <ng-template ngbNavContent>
79           <eg-catalog-copies [recordId]="recordId"></eg-catalog-copies>
80         </ng-template>
81       </li>
82       <!-- NOTE some tabs send the user over to the AngJS app -->
83       <li role="presentation" [ngbNavItem]="'marc_edit'" [destroyOnHide]="true">
84         <h2><a i18n ngbNavLink role="tab">MARC Edit</a></h2>
85         <ng-template ngbNavContent>
86           <div class="mt-3">
87             <eg-marc-editor #marcEditor (recordSaved)="handleMarcRecordSaved()" 
88               [recordId]="recordId"></eg-marc-editor>
89           </div>
90         </ng-template>
91       </li>
92       <li role="presentation" [ngbNavItem]="'marc_html'" [destroyOnHide]="true">
93         <h2><a i18n ngbNavLink role="tab">MARC View</a></h2>
94         <ng-template ngbNavContent>
95           <eg-marc-html [recordId]="recordId" recordType="bib"></eg-marc-html>
96         </ng-template>
97       </li>
98       <li role="presentation" [ngbNavItem]="'bibnotes'" [destroyOnHide]="true">
99         <h2>
100           <a ngbNavLink role="tab" *ngIf="summary?.recordNoteCount; else noRecordNotes">
101             <span i18n>Record Notes</span>&nbsp;
102             <span class="badge text-bg-primary fw-bold">({{summary.recordNoteCount}})</span>
103           </a>
104           <ng-template #noRecordNotes>
105             <a i18n ngbNavLink role="tab">Record Notes</a>
106           </ng-template>
107         </h2>
108         <ng-template ngbNavContent>
109           <eg-catalog-record-notes [recordId]="recordId"
110             (noteCountUpdated)="summary.recordNoteCount = $event">
111           </eg-catalog-record-notes>
112         </ng-template>
113       </li>
114       <li role="presentation" [ngbNavItem]="'holds'" [destroyOnHide]="true">
115         <h2><a i18n ngbNavLink role="tab">View Holds</a></h2>
116         <ng-template ngbNavContent>
117           <eg-holds-grid [recordId]="recordId"
118             preFetchSetting="catalog.record.holds.prefetch"
119             printTemplate="holds_for_bib"
120             persistKey="cat.catalog.wide_holds"
121             [defaultSort]="[{name:'request_time',dir:'asc'}]"
122             [initialPickupLib]="currentSearchOrg()"></eg-holds-grid>
123         </ng-template>
124       </li>
125       <li role="presentation" [ngbNavItem]="'monoparts'" [destroyOnHide]="true">
126         <h2><a i18n ngbNavLink role="tab">Monograph Parts</a></h2>
127         <ng-template ngbNavContent>
128           <eg-catalog-record-parts [recordId]="recordId">
129           </eg-catalog-record-parts>
130         </ng-template>
131       </li>
132       <li role="presentation" [ngbNavItem]="'holdings'" [destroyOnHide]="true">
133         <h2><a i18n ngbNavLink role="tab">Holdings View</a></h2>
134         <ng-template ngbNavContent>
135           <eg-holdings-maintenance #holdingsMaint [recordId]="recordId">
136           </eg-holdings-maintenance>
137         </ng-template>
138       </li>
139       <li role="presentation" [ngbNavItem]="'conjoined'" [destroyOnHide]="true">
140         <h2><a i18n ngbNavLink role="tab">Conjoined Items</a></h2>
141         <ng-template ngbNavContent>
142           <eg-catalog-record-conjoined [recordId]="recordId">
143           </eg-catalog-record-conjoined>
144         </ng-template>
145       </li>
146       <li role="presentation" [ngbNavItem]="'cnbrowse'" [destroyOnHide]="true">
147         <h2><a i18n ngbNavLink role="tab">Shelf Browse</a></h2>
148         <ng-template ngbNavContent>
149           <ng-container *ngIf="summary">
150             <div class="mt-2">
151               <eg-catalog-cn-browse-results [bibSummary]="summary">
152               </eg-catalog-cn-browse-results>
153             </div>
154           </ng-container>
155         </ng-template>
156       </li>
157     </ul>
158
159     <div [ngbNavOutlet]="recordTabs" class="mt-2"></div>
160   </div>
161 </div>