1 <eg-string #deleteFailedString i18n-text text="Disassociation of Course Material failed or was not allowed"></eg-string>
2 <eg-string #deleteSuccessString i18n-text text="Disassociation of Course Material succeeded"></eg-string>
3 <eg-string #successString i18n-text text="Association of Course Material succeeded"></eg-string>
4 <eg-string #failedString i18n-text text="Association of Course Material failed or was not allowed"></eg-string>
5 <eg-string #differentLibraryString i18n-text text="Material exists at a different library"></eg-string>
7 <ng-template #dialogContent>
8 <div class="modal-header bg-info">
9 <h4 class="modal-title" i18n>Course Materials</h4>
10 <button type="button" class="close"
11 i18n-aria-label aria-label="Close" (click)="close()">
12 <span aria-hidden="true">×</span>
15 <div class="modal-body">
16 <div class="row mt-3">
17 <div class="col-md-4">
18 <div class="input-group">
19 <div class="input-group-prepend">
20 <span class="input-group-text" i18n>Barcode</span>
22 <input type="text" [(ngModel)]="barcodeInput"
23 (click)="$event.target.select()"
24 (keyup.enter)="associateItem(barcodeInput, relationshipInput)" />
27 <div class="col-md-5">
28 <div class="input-group">
29 <div class="input-group-prepend">
30 <span class="input-group-text" i18n>Relationship</span>
32 <input type="text" [(ngModel)]="relationshipInput" placeholder-i18n placeholder="e.g. Required" />
35 <div class="col-md-3">
36 <button class="btn btn-outline-dark" (click)="associateItem(barcodeInput, relationshipInput)" i18n [disabled]="!barcodeInput">Add Material</button>
39 <div class="row justify-content-center mt-3">
41 <h5 i18n>The following fields will be applied to the material added, and reverted once the course is no longer associated with the material.</h5>
44 <div class="row mt-3">
45 <div class="col-md-6">
46 <div class="input-group">
47 <div class="input-group-prepend">
48 <div class="input-group-text">
49 <span i18n>Call Number</span>
52 <input type="text" [(ngModel)]="tempCallNumber"
53 (input)="isModifyingCallNumber = true"/>
54 <div class="input-group-append">
55 <div class="input-group-text">
56 <input type="checkbox" [(ngModel)]="isModifyingCallNumber"
57 aria-label="Checkbox for setting a temporary Call Number" />
62 <div class="col-md-6">
63 <div class="input-group">
64 <div class="input-group-prepend">
65 <div class="input-group-text">
66 <span i18n>Circulation Modifier</span>
69 <eg-combobox i18n-placeholder placeholder="Circulation Modifier..."
70 idlClass="ccm" idlField="name" [displayTemplate]="idlClassLabel"
71 [asyncSupportsEmptyTermClick]="true"
72 (onChange)="tempCircMod = $event.id; isModifyingCircMod = true">
74 <div class="input-group-append">
75 <div class="input-group-text">
76 <input type="checkbox" [(ngModel)]="isModifyingCircMod"
77 aria-label="Checkbox for setting a temporary Circulation Modifier" />
83 <div class="row mt-3">
84 <div class="col-md-6">
85 <div class="input-group">
86 <div class="input-group-prepend">
87 <div class="input-group-text">
88 <span i18n>Item Status</span>
91 <eg-combobox i18n-placeholder placeholder="Item Status..."
92 idlClass="ccs" idlField="name" [displayTemplate]="idlClassLabel"
93 [asyncSupportsEmptyTermClick]="true"
94 (onChange)="tempStatus = $event.id; isModifyingStatus = true">
96 <div class="input-group-append">
97 <div class="input-group-text">
98 <input type="checkbox" [(ngModel)]="isModifyingStatus"
99 aria-label="Checkbox for setting a temporary Item Status" />
104 <div class="col-md-6">
105 <div class="input-group">
106 <div class="input-group-prepend">
107 <div class="input-group-text">
108 <span i18n>Shelving Location</span>
111 <eg-item-location-select permFilter="MANAGE_RESERVES"
112 [(ngModel)]="tempLocation" (oninput)="isModifyingLocation = true"
113 (valueChange)="isModifyingLocation = true">
114 </eg-item-location-select>
115 <div class="input-group-append">
116 <div class="input-group-text">
117 <input type="checkbox" [(ngModel)]="isModifyingLocation"
118 aria-label="Checkbox for setting a temporary Shelving Location" />
126 <eg-grid #materialGrid [dataSource]="gridDataSource">
127 <eg-grid-toolbar-action label="Delete Selected" i18n-label (onClick)="deleteSelected($event)">
128 </eg-grid-toolbar-action>
130 <eg-grid-column path="id" [index]=true [hidden]="true" label="ID" i18n-label></eg-grid-column>
131 <eg-grid-column label="Barcode" i18n-label name="barcode" [cellTemplate]="barcodeCellTemplate"></eg-grid-column>
132 <eg-grid-column label="Title" i18n-label name="title" [cellTemplate]="titleCellTemplate"></eg-grid-column>
133 <eg-grid-column path="call_number.label" label="Call Number" i18n-label></eg-grid-column>
134 <eg-grid-column path="call_number.prefix.label" [hidden]="true" label="Call Number Prefix" i18n-label hidden></eg-grid-column>
135 <eg-grid-column path="call_number.suffix.label" [hidden]="true" label="Call Number Suffix" i18n-label hidden></eg-grid-column>
136 <eg-grid-column path="circ_modifier" [hidden]="true" label="Circulation Modifier" i18n-label></eg-grid-column>
137 <eg-grid-column path="circ_lib.shortname" label="Circulation Library" i18n-label></eg-grid-column>
138 <eg-grid-column path="location.name" [hidden]="true" label="Shelving Location" i18n-label></eg-grid-column>
139 <eg-grid-column path="status.name" [hidden]="true" label="Copy Status" i18n-label></eg-grid-column>
140 <eg-grid-column path="_relationship" label="Relationship" i18n-label></eg-grid-column>
144 <ng-template #barcodeCellTemplate let-entry="row">
147 href="/eg/staff/cat/item/{{entry.id()}}">
152 <ng-template #titleCellTemplate let-entry="row">
155 href="/eg/staff/cat/catalog/record/{{entry.call_number().record()}}">
160 <ng-template #idlClassLabel let-r="result" i18n>