]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/eg2/src/app/staff/admin/server/course-reserves/course-associate-material.component.html
LP1849212: Fix installation issue with circ mod foreign key
[Evergreen.git] / Open-ILS / src / eg2 / src / app / staff / admin / server / course-reserves / course-associate-material.component.html
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>
6
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">&times;</span>
13     </button>
14   </div>
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>
21           </div>
22           <input type="text" [(ngModel)]="barcodeInput" />
23         </div>
24       </div>
25       <div class="col-md-5">
26         <div class="input-group">
27           <div class="input-group-prepend">
28             <span class="input-group-text" i18n>Relationship</span>
29           </div>
30           <input type="text" [(ngModel)]="relationshipInput" placeholder-i18n placeholder="e.g. Required" />
31         </div>
32       </div>
33       <div class="col-md-3">
34         <button class="btn btn-outline-dark" (click)="associateItem(barcodeInput, relationshipInput)" i18n [disabled]="!barcodeInput">Add Material</button>
35       </div>
36     </div>
37     <div class="row justify-content-center mt-3">
38       <div class="col">
39         <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>
40       </div>
41     </div>
42     <div class="row mt-3">
43       <div class="col-md-6">
44         <div class="input-group">
45           <div class="input-group-prepend">
46             <div class="input-group-text">
47               <span i18n>Call Number</span>
48             </div>
49           </div>
50           <input type="text" [(ngModel)]="tempCallNumber"
51             (input)="isModifyingCallNumber = true"/>
52           <div class="input-group-append">
53             <div class="input-group-text">
54               <input type="checkbox" [(ngModel)]="isModifyingCallNumber"
55                 aria-label="Checkbox for setting a temporary Call Number" />
56             </div>
57           </div>
58         </div>
59       </div>
60       <div class="col-md-6">
61         <div class="input-group">
62           <div class="input-group-prepend">
63             <div class="input-group-text">
64               <span i18n>Circulation Modifier</span>
65             </div>
66           </div>
67           <eg-combobox i18n-placeholder placeholder="Circulation Modifier..."
68             idlClass="ccm" idlField="name" [displayTemplate]="idlClassLabel"
69             [asyncSupportsEmptyTermClick]="true"
70             (onChange)="tempCircMod = $event.id; isModifyingCircMod = true">
71           </eg-combobox>
72           <div class="input-group-append">
73             <div class="input-group-text">
74               <input type="checkbox" [(ngModel)]="isModifyingCircMod"
75                 aria-label="Checkbox for setting a temporary Circulation Modifier" />
76             </div>
77           </div>
78         </div>
79       </div>
80     </div>
81     <div class="row mt-3">
82       <div class="col-md-6">
83         <div class="input-group">
84           <div class="input-group-prepend">
85             <div class="input-group-text">
86               <span i18n>Item Status</span>
87             </div>
88           </div>
89           <eg-combobox i18n-placeholder placeholder="Item Status..."
90             idlClass="ccs" idlField="name" [displayTemplate]="idlClassLabel"
91             [asyncSupportsEmptyTermClick]="true"
92             (onChange)="tempStatus = $event.id; isModifyingStatus = true">
93           </eg-combobox>
94           <div class="input-group-append">
95             <div class="input-group-text">
96               <input type="checkbox" [(ngModel)]="isModifyingStatus"
97                 aria-label="Checkbox for setting a temporary Item Status" />
98             </div>
99           </div>
100         </div>
101       </div>
102       <div class="col-md-6">
103         <div class="input-group">
104           <div class="input-group-prepend">
105             <div class="input-group-text">
106               <span i18n>Shelving Location</span>
107             </div>
108           </div>
109           <eg-item-location-select permFilter="MANAGE_RESERVES"
110             [(ngModel)]="tempLocation" (oninput)="isModifyingLocation = true">
111           </eg-item-location-select>
112           <div class="input-group-append">
113             <div class="input-group-text">
114               <input type="checkbox" [(ngModel)]="isModifyingLocation"
115                 aria-label="Checkbox for setting a temporary Shelving Location" />
116             </div>
117           </div>
118         </div>
119       </div>
120     </div>
121
122     <div class="mt-3">
123       <eg-grid #materialGrid [dataSource]="gridDataSource">
124         <eg-grid-toolbar-action label="Delete Selected" i18n-label (onClick)="deleteSelected($event)">
125         </eg-grid-toolbar-action>
126
127         <eg-grid-column path="id" [index]=true [hidden]="true" label="ID" i18n-label></eg-grid-column>
128         <eg-grid-column label="Barcode" i18n-label name="barcode" [cellTemplate]="barcodeCellTemplate"></eg-grid-column>
129         <eg-grid-column label="Title" i18n-label name="title" [cellTemplate]="titleCellTemplate"></eg-grid-column>
130         <eg-grid-column path="call_number.label" label="Call Number" i18n-label></eg-grid-column>
131         <eg-grid-column path="call_number.prefix.label" [hidden]="true" label="Call Number Prefix" i18n-label hidden></eg-grid-column>
132         <eg-grid-column path="call_number.suffix.label" [hidden]="true" label="Call Number Suffix" i18n-label hidden></eg-grid-column>
133         <eg-grid-column path="circ_modifier" [hidden]="true" label="Circulation Modifier" i18n-label></eg-grid-column>
134         <eg-grid-column path="circ_lib.shortname" label="Circulation Library" i18n-label></eg-grid-column>
135         <eg-grid-column path="location.name" [hidden]="true" label="Shelving Location" i18n-label></eg-grid-column>
136         <eg-grid-column path="status.name" [hidden]="true" label="Copy Status" i18n-label></eg-grid-column>
137         <eg-grid-column path="_relationship" label="Relationship" i18n-label></eg-grid-column>
138       </eg-grid>
139     </div>
140   </div>
141   <ng-template #barcodeCellTemplate let-entry="row">
142     <span>
143       <a class="pl-1"
144         href="/eg/staff/cat/item/{{entry.id()}}">
145         {{entry.barcode()}}
146       </a>
147     </span>
148   </ng-template>
149   <ng-template #titleCellTemplate let-entry="row">
150     <span>
151       <a class="pl-1"
152         href="/eg/staff/cat/catalog/record/{{entry.call_number().record()}}">
153         {{entry._title}}
154       </a>
155     </span>
156   </ng-template>
157   <ng-template #idlClassLabel let-r="result" i18n>
158     {{r.label}}
159   </ng-template>
160 </ng-template>