]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/eg2/src/app/staff/admin/acq/distribution_formula/distribution-formula-edit-dialog.component.html
LP1615805 No inputs after submit in patron search (AngularJS)
[Evergreen.git] / Open-ILS / src / eg2 / src / app / staff / admin / acq / distribution_formula / distribution-formula-edit-dialog.component.html
1 <ng-template #dialogContent>
2   <div class="modal-header">
3     <h3 *ngIf="mode === 'create'" class="modal-title" i18n>New Distribution Formula</h3>
4     <h3 *ngIf="mode === 'update'" class="modal-title" i18n>Modify Distribution Formula</h3>
5     <h3 *ngIf="mode === 'clone'" class="modal-title" i18n>Clone Distribution Formula (from {{clonedLabel}})</h3>
6     <button type="button" class="btn-close btn-close-white"
7       i18n-aria-label aria-label="Close" (click)="close()"></button>
8   </div>
9   <div class="modal-body">
10     <form #myForm="ngForm" class="form-validated">
11       <div class="form-group row mt-2" *ngIf="formula">
12         <label for="formula-name" class="form-label col-sm-1 col-form-label" i18n>Formula Name
13         </label>
14         <div class="col-sm-2">
15           <input class="form-control" type="text" id="formula-name"
16             required="required" pattern="[\s\S]*\S[\s\S]*"
17             [ngModel]="formula.name()" name="name"
18             (ngModelChange)="formula.name($event)">
19         </div>
20         <label for="formula-owner" class="form-label col-sm-1 col-form-owner" i18n>Formula Owner
21         </label>
22         <div class="col-sm-2">
23           <eg-org-select
24             placeholder="Owner..."
25             i18n-placeholder
26             domId="formula-owner"
27             [applyOrgId]="formula.owner()"
28             [limitPerms]="['ADMIN_ACQ_DISTRIB_FORMULA']"
29             (onChange)="formula.owner($event); myForm.form.markAsDirty()">
30           </eg-org-select>
31         </div>
32       </div>
33       <div class="row mt-2">
34         <div class="col-sm-1"></div>
35         <div class="col-sm-1" i18n>Owning Library</div>
36         <div class="col-sm-2" i18n>Shelving Location</div>
37         <div class="col-sm-2" i18n>Fund</div>
38         <div class="col-sm-2" i18n>Circ Modifier</div>
39         <div class="col-sm-1" i18n>Collection Code</div>
40         <div class="col-sm-1" i18n>Item Count</div>
41         <div class="col-sm-1"></div>
42       </div>
43       <div class="form-group row mt-2" *ngFor="let entry of formula?.entries(); index as idx; last as isLast; first as isFirst; count as count">
44         <div class="col-sm-1">
45           <button *ngIf="!isLast" class="btn btn-sm material-icon-button" type="button"
46             (click)="removeRow(idx)" i18n-aria-label aria-label="Remove Entry"
47             i18n-title title="Remove Entry">
48             <span class="material-icons" aria-hidden="true">delete</span>
49           </button>
50         </div>
51         <div class="col-sm-1">
52           <eg-org-select
53             placeholder="Owning Library..."
54             i18n-placeholder
55             ariaLabel="Owning Library..."
56             i18n-ariaLabel
57             domId="entry-owning-lib-{{idx}}"
58             [applyOrgId]="entry.owning_lib()"
59             [limitPerms]="['ADMIN_ACQ_DISTRIB_FORMULA']"
60             (onChange)="entry.owning_lib($event); myForm.form.markAsDirty()">
61           </eg-org-select>
62         </div>
63         <div class="col-sm-2">
64           <eg-item-location-select
65             permFilter="ADMIN_ACQ_DISTRIB_FORMULA" [contextOrgId]="entry.owning_lib()"
66             [ngModel]="entry.location()" name="location-{{idx}}"
67             (ngModelChange)="entry.location($event)"
68             (valueChange)="myForm.form.markAsDirty()">
69           </eg-item-location-select>
70         </div>
71         <div class="col-sm-2">
72           <eg-combobox i18n-placeholder placeholder="Fund..." idlClass="acqf"
73             [idlBaseQuery]="{'active':{'=':'t'}}"
74             id="entry-fund-{{idx}}"
75             [asyncSupportsEmptyTermClick]="true"
76             [selectedId]="entry.fund()"
77             name="fund-{{idx}}"
78             (onChange)="entry.fund($event.id)">
79           </eg-combobox>
80         </div>
81         <div class="col-sm-2">
82           <eg-combobox i18n-placeholder placeholder="Circ Modifier..." idlClass="ccm"
83             id="entry-circ_modifier-{{idx}}"
84             [asyncSupportsEmptyTermClick]="true"
85             [selectedId]="entry.circ_modifier()"
86             name="circ_modifier-{{idx}}"
87             (onChange)="entry.circ_modifier($event.id)">
88           </eg-combobox>
89         </div>
90         <div class="col-sm-1">
91           <input class="form-control" type="text" i18n-placeholder placeholder="Collection Code..."
92             id="entry-collection-code-{{idx}}" pattern="[\s\S]*\S[\s\S]*"
93             [ngModel]="entry.collection_code()" name="collection_code-{{idx}}"
94             (ngModelChange)="entry.collection_code($event)">
95         </div>
96         <div class="col-sm-1">
97           <input class="form-control" type="number" min="0" pattern="^[0-9]+$"
98             [ngModel]="entry.item_count()" name="item_count-{{idx}}"
99             (ngModelChange)="entry.item_count($event)">
100         </div>
101         <div class="col-sm-1">
102           <button *ngIf="!isLast" class="btn btn-sm material-icon-button" type="button"
103             [disabled]="isFirst"
104             (click)="moveUp(idx)"
105             i18n-aria-label aria-label="Move Up"
106             i18n-title title="Move Up">
107             <span class="material-icons" aria-hidden="true">keyboard_arrow_up</span>
108           </button>
109           <button *ngIf="!isLast" class="btn btn-sm material-icon-button" type="button"
110             (click)="moveDown(idx)"
111             [disabled]="count < 3 || idx === count - 2"
112             i18n-aria-label aria-label="Move Down"
113             i18n-title title="Move Down">
114             <span class="material-icons" aria-hidden="true">keyboard_arrow_down</span>
115           </button>
116           <button *ngIf="isLast" type="button" class="btn btn-info" (click)="addRow()" i18n>Add</button>
117         </div>
118       </div>
119     </form>
120   </div>
121   <div class="modal-footer">
122     <button type="button" class="btn btn-info" [disabled]="!myForm?.valid || !(myForm?.dirty)"
123       (click)="save()" i18n>Save</button>
124     <button type="button" class="btn btn-normal"
125       (click)="close()" i18n>Cancel</button>
126   </div>
127 </ng-template>
128
129 <ng-template #defaultCloneLabelTmpl i18n>{{clonedLabel}} (clone)</ng-template>
130 <eg-string #defaultCloneLabel [template]="defaultCloneLabelTmpl"></eg-string>