LP1934164 Grid context/duration date minor refactoring
authorBill Erickson <berickxx@gmail.com>
Wed, 30 Jun 2021 17:46:45 +0000 (13:46 -0400)
committerJane Sandberg <js7389@princeton.edu>
Wed, 5 Oct 2022 13:10:49 +0000 (06:10 -0700)
Move some repeated code into a shared method.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Open-ILS/src/eg2/src/app/share/grid/grid.ts

index 23e23ec..6f7191e 100644 (file)
@@ -781,14 +781,16 @@ export class GridContext {
         ).length > 0;
     }
 
-    getRowColumnValue(row: any, col: GridColumn): string {
-        let val;
-
-        if (col.path) {
-            val = this.nestedItemFieldValue(row, col);
-        } else if (col.name in row) {
-            val = this.getObjectFieldValue(row, col.name);
+    getRowColumnBareValue(row: any, col: GridColumn): any {
+        if (col.name in row) {
+            return this.getObjectFieldValue(row, col.name);
+        } else if (col.path) {
+            return this.nestedItemFieldValue(row, col);
         }
+    }
+
+    getRowColumnValue(row: any, col: GridColumn): any {
+        const val = this.getRowColumnBareValue(row, col);
 
         if (col.datatype === 'bool') {
             // Avoid string-ifying bools so we can use an <eg-bool/>
@@ -796,18 +798,13 @@ export class GridContext {
             return val;
         }
 
-        // Get the value of
         let interval;
         const intField = col.dateOnlyIntervalField;
         if (intField) {
-            if (intField in row) {
-                interval = this.getObjectFieldValue(row, intField);
-            } else  {
-                // find the referenced column
-                const intCol = this.columnSet.columns.filter(c => c.path === intField)[0];
-                if (intCol) {
-                    interval = this.nestedItemFieldValue(row, intCol);
-                }
+            const intCol =
+                this.columnSet.columns.filter(c => c.path === intField)[0];
+            if (intCol) {
+                interval = this.getRowColumnBareValue(row, intCol);
             }
         }