<label i18n>Record Type</label>
</div>
<div class="col-lg-3">
- <eg-combobox (onChange)="recordType=$event ? $event.id : null"
+ <eg-combobox (onChange)="selectEntry($event, 'recordType')"
[required]="true"
[startId]="recordType" placeholder="Record Type..." i18n-placeholder>
<eg-combobox-entry entryId="bib" entryLabel="Bibliographic Records"
</div>
<div class="col-lg-3">
<eg-combobox [entries]="formatEntries('bibSources')"
- (onChange)="selectedBibSource=$event ? event.id : null"
+ (onChange)="selectEntry($event, 'bibSources')"
[startId]="selectedBibSource"
placeholder="Record Source..." i18n-placeholder>
</eg-combobox>
<div class="col-lg-3">
<eg-combobox [entries]="formatEntries('bibBuckets')"
[disabled]="selectedQueue && !selectedQueue.freetext"
- (onChange)="selectedBucket=$event.id"
+ (onChange)="selectEntry($event, 'bibBuckets')"
placeholder="Buckets..." i18n-placeholder></eg-combobox>
</div>
</div>
<eg-combobox [entries]="formatEntries('matchSets')"
[disabled]="selectedQueue && !selectedQueue.freetext"
[startId]="defaultMatchSet"
- (onChange)="selectedMatchSet=$event.id"
+ (onChange)="selectEntry($event, 'matchSets')"
placeholder="Match Set..." i18n-placeholder></eg-combobox>
</div>
<div class="col-lg-3"><label i18n>Import Non-Matching Records</label></div>
<div class="col-lg-3"> <!-- TODO disable for authority -->
<eg-combobox [entries]="formatEntries('importItemDefs')"
[disabled]="selectedQueue && !selectedQueue.freetext"
- (onChange)="selectedHoldingsProfile=$event.id"
+ (onChange)="selectEntry($event, 'importItemDefs')"
placeholder="Holdings Import Profile..." i18n-placeholder>
</eg-combobox>
</div>
</div>
<div class="col-lg-3">
<eg-combobox [entries]="formatEntries('mergeProfiles')"
- (onChange)="selectedMergeProfile=$event.id"
+ (onChange)="selectEntry($event, 'mergeProfiles')"
placeholder="Merge Profile..." i18n-placeholder>
</eg-combobox>
</div>
<label i18n>Insufficient Quality Fall-Through Profile</label></div>
<div class="col-lg-3">
<eg-combobox [entries]="formatEntries('mergeProfiles')"
- (onChange)="selectedFallThruMergeProfile=$event.id"
+ (onChange)="selectEntry($event, 'FallThruMergeProfile')"
placeholder="Fall-Through Merge Profile..." i18n-placeholder>
</eg-combobox>
</div>
});
}
+ selectEntry($event: ComboboxEntry, etype: string) {
+ const id = $event ? $event.id : null;
+
+ switch (etype) {
+ case 'recordType':
+ this.recordType = id;
+
+ case 'bibSources':
+ this.selectedBibSource = id;
+ break;
+
+ case 'bibBuckets':
+ this.selectedBucket = id;
+ break;
+
+ case 'matchSets':
+ this.selectedMatchSet = id;
+ break;
+
+ case 'importItemDefs':
+ this.selectedHoldingsProfile = id;
+ break;
+
+ case 'mergeProfiles':
+ this.selectedMergeProfile = id;
+ break;
+
+ case 'FallThruMergeProfile':
+ this.selectedFallThruMergeProfile = id;
+ break;
+ }
+ }
+
fileSelected($event) {
this.selectedFile = $event.target.files[0];
}