1 <ng-template #cnTemplate let-copy="row">
2 <div id="copy-callnumber-{{copy.call_number}}">
3 {{copy.call_number_prefix_label}}
4 <span id="copy-callnumber-label-{{copy.call_number_label}}">{{copy.call_number_label}}</span>
5 {{copy.call_number_suffix_label}}
8 <a routerLink="/staff/cat/volcopy/holdings/callnumber/{{copy.call_number}}"
9 target="_blank" i18n attr.aria-describedby="copy-callnumber-label-{{copy.call_number_label}}">Edit</a>
13 <ng-template #barcodeTemplate let-copy="row" let-context="userContext">
14 <div id="copy-barcode-{{copy.id}}">{{copy.barcode}}</div>
16 <a class="ps-1" target="_blank" attr.aria-describedby="copy-barcode-{{copy.id}}"
17 href="/eg/staff/cat/item/{{copy.id}}" i18n>View</a>
18 <ng-container *ngIf="context.editable(copy)">
19 | <a class="ps-1" target="_blank" attr.aria-describedby="copy-barcode-{{copy.id}}"
20 routerLink="/staff/cat/volcopy/attrs/item/{{copy.id}}" i18n>Edit</a>
25 <ng-template #holdableTemplate let-copy="row" let-context="userContext">
26 <div *ngIf="context.holdable(copy)">
27 <div class="border-bottom">
28 <a routerLink="/staff/catalog/hold/C"
29 attr.aria-describedby="copy-barcode-{{copy.id}}"
30 [queryParams]="{target: copy.id}"
31 queryParamsHandling="merge" i18n>
36 <a routerLink="/staff/catalog/hold/V"
37 attr.aria-describedby="copy-barcode-{{copy.id}}"
38 [queryParams]="{target: copy.call_number}"
39 queryParamsHandling="merge" i18n>
44 <div *ngIf="!context.holdable(copy)" i18n>No</div>
47 <ng-template #courseTemplate let-copy="row">
48 <div *ngFor="let course of copy._courses">
49 <span class="sr-only" id="course-name-{{course.id()}}">{{course.name()}}</span>
50 <a attr.aria-describedby="course-name-{{course.id()}}"
51 routerLink="/staff/admin/local/asset/course_list/{{course.id()}}">
52 {{course.course_number()}}
57 <ng-template #ageTemplate let-copy="row">
58 {{copy.age_protect_label}}
61 <div class='eg-copies w-100 mt-3'>
62 <eg-grid #copyGrid [dataSource]="gridDataSource"
63 [disableSelect]="true" [cellTextGenerator]="cellTextGenerator"
64 [sortable]="false" persistKey="catalog.record.copies">
65 <eg-grid-column i18n-label label="Item ID" path="id"
66 [hidden]="true" [index]="true">
68 <eg-grid-column i18n-label label="Location" path="circ_lib" datatype="org_unit">
70 <eg-grid-column i18n-label label="Call Number / Item Notes" name="callnumber"
71 [cellTemplate]="cnTemplate">
73 <eg-grid-column i18n-label label="Part" path="part_label" name="monograph_part">
75 <eg-grid-column i18n-label label="Barcode" name="barcode"
76 [cellTemplate]="barcodeTemplate" [cellContext]="copyContext">
78 <eg-grid-column i18n-label label="Shelving Location" path="copy_location">
80 <eg-grid-column i18n-label label="Circulation Modifier" path="circ_modifier">
82 <eg-grid-column i18n-label label="Age Hold Protection" path="age_protect"
83 [cellTemplate]="ageTemplate">
85 <eg-grid-column i18n-label label="Active/Create Date"
86 path="active_date" datatype="timestamp">
88 <eg-grid-column i18n-label label="Holdable?" name="holdable"
89 [cellTemplate]="holdableTemplate" [cellContext]="copyContext">
91 <eg-grid-column i18n-label label="Course" name="course"
92 [cellTemplate]="courseTemplate" *ngIf="usingCourseModule">
94 <eg-grid-column i18n-label label="Status" path="copy_status">
96 <eg-grid-column i18n-label label="Due Date" path="due_date" datatype="timestamp">
98 <eg-grid-column i18n-label label="Last Circ Date" path="last_circ" datatype="timestamp">
100 <eg-grid-column i18n-label label="Total Circ Count" path="circ_count">