distribution formuals: disable action on multi-select
authorGalen Charlton <gmc@equinoxOLI.org>
Thu, 3 Jun 2021 20:14:30 +0000 (16:14 -0400)
committerGalen Charlton <gmc@equinoxOLI.org>
Thu, 3 Jun 2021 20:14:30 +0000 (16:14 -0400)
LH#22

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Open-ILS/src/eg2/src/app/staff/admin/acq/distribution_formula/distribution-formulas.component.html
Open-ILS/src/eg2/src/app/staff/admin/acq/distribution_formula/distribution-formulas.component.ts

index 0db1361..d9e102a 100644 (file)
   <eg-grid-toolbar-button [disabled]="!canCreate" 
     label="New {{idlClassDef.label}}" i18n-label (onClick)="createNew()">
   </eg-grid-toolbar-button>
-  <eg-grid-toolbar-action label="Edit Selected" i18n-label (onClick)="editSelected($event)">
+  <eg-grid-toolbar-action label="Edit Selected" i18n-label (onClick)="editSelected($event)"
+    [disableOnRows]="notOneSelectedRow">
   </eg-grid-toolbar-action>
-  <eg-grid-toolbar-action label="Clone Selected" i18n-label (onClick)="cloneSelected($event)">
+  <eg-grid-toolbar-action label="Clone Selected" i18n-label (onClick)="cloneSelected($event)"
+    [disableOnRows]="notOneSelectedRow">
   </eg-grid-toolbar-action>
-  <eg-grid-toolbar-action label="Delete Selected" i18n-label (onClick)="deleteSelected($event)">
+  <eg-grid-toolbar-action label="Delete Selected" i18n-label (onClick)="deleteSelected($event)"
+    [disableOnRows]="notOneSelectedRow">
   </eg-grid-toolbar-action>
 
   <eg-grid-column path="name"></eg-grid-column>
index 182c0fd..4b25921 100644 (file)
@@ -33,6 +33,7 @@ export class DistributionFormulasComponent extends AdminPageComponent implements
     @ViewChild('alertDialog', {static: false}) private alertDialog: AlertDialogComponent;
     @ViewChild('confirmDel', { static: true }) confirmDel: ConfirmDialogComponent;
 
+    notOneSelectedRow: (rows: IdlObject[]) => boolean;
     cellTextGenerator: GridCellTextGenerator;
 
     constructor(
@@ -52,6 +53,7 @@ export class DistributionFormulasComponent extends AdminPageComponent implements
     }
 
     ngOnInit() {
+        this.notOneSelectedRow = (rows: IdlObject[]) => (rows.length !== 1);
         this.cellTextGenerator = {
             name: row => row.name()
         };