LP1936233 Handle aged circs; sanity checks
authorBill Erickson <berickxx@gmail.com>
Tue, 3 Aug 2021 16:45:25 +0000 (12:45 -0400)
committerBill Erickson <berickxx@gmail.com>
Tue, 3 Aug 2021 18:50:00 +0000 (14:50 -0400)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/eg2/src/app/staff/cat/item/circ-history.component.html
Open-ILS/src/eg2/src/app/staff/cat/item/summary.component.html

index f1f0b18..80106ea 100644 (file)
@@ -8,13 +8,18 @@
   <div class="col-lg-12 well-table">
     <div class="well-row">
       <div class="well-value">
-        <a i18n
-          routerLink="/staff/circ/patron/{{circ.usr().id()}}">
-          {{circ.usr().family_name()}}, 
-          {{circ.usr().first_given_name()}}, 
-          {{circ.usr().second_given_name()}} :
-          {{circ.usr().card().barcode()}}
-        </a>
+        <ng-container *ngIf="circ.usr()">
+          <a i18n
+            routerLink="/staff/circ/patron/{{circ.usr().id()}}">
+            {{circ.usr().family_name()}}, 
+            {{circ.usr().first_given_name()}}, 
+            {{circ.usr().second_given_name()}} :
+            {{circ.usr().card().barcode()}}
+          </a>
+        </ng-container>
+        <ng-container *ngIf="!circ.usr()">
+          <span i18n>&lt;Aged Circulation&gt;</span>
+        </ng-container>
         <span class="pl-3" i18n>Circulation ID: {{circ.id()}}</span>
       </div>
       <div class="mt-2">
index c9a5548..b950eb8 100644 (file)
@@ -43,7 +43,7 @@
 
     <div class="well-label" i18n>Due Date</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc | egDueDate}}
       </ng-container>
     </div>
@@ -67,7 +67,7 @@
 
     <div class="well-label" i18n>Checkout Date</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.circSummary.start_time() | egDateTime}}
       </ng-container>
     </div>
@@ -88,7 +88,7 @@
 
     <div class="well-label" i18n>Renewal Type</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         <div *ngIf="circInfo.currentCirc.opac_renewal() == 't'" i18n>OPAC</div>
         <div *ngIf="circInfo.currentCirc.desk_renewal() == 't'" i18n>Desk</div>
         <div *ngIf="circInfo.currentCirc.phone_renewal() == 't'" i18n>Phone</div>
@@ -98,7 +98,7 @@
 
     <div class="well-label" i18n>Checkout Workstation</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.circSummary.checkout_workstation()}}
       </ng-container>
     </div>
     </div>
 
     <div class="well-label" i18n>Total Circs</div>
-    <div class="well-value">{{circInfo.totalCircs}}</div>
+    <div class="well-value">
+      <ng-container *ngIf="circInfo">{{circInfo.totalCircs}}</ng-container>
+    </div>
 
     <div class="well-label" i18n>Duration Rule</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.duration_rule().name()}}
       </ng-container>
     </div>
     <div class="well-value"><eg-bool [value]="item.ref()"></eg-bool></div>
 
     <div class="well-label" i18n>Total Circs - Current Year</div>
-    <div class="well-value">{{circInfo.circsThisYear}}</div>
+    <div class="well-value">
+      <ng-container *ngIf="circInfo">{{circInfo.circsThisYear}}</ng-container>
+    </div>
 
     <div class="well-label" i18n>Recurring Fine Rule</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.recurring_fine_rule().name()}}
       </ng-container>
     </div>
     <div class="well-value"><eg-bool [value]="item.opac_visible()"></eg-bool></div>
 
     <div class="well-label" i18n>Total Circs - Prev Year</div>
-    <div class="well-value">{{circInfo.circsPrevYear}}</div>
+    <div class="well-value">
+      <ng-container *ngIf="circInfo">{{circInfo.circsPrevYear}}</ng-container>
+    </div>
 
     <div class="well-label" i18n>Max Fine Rule</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.max_fine_rule().name()}}
       </ng-container>
     </div>
 
     <div class="well-label" i18n>Checkin Time</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.checkin_time() || 
           circInfo.circSummary.last_checkin_time() | egDateTime}}
       </ng-container>
 
     <div class="well-label" i18n>Renewal Workstation</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.circSummary.last_renewal_workstation()}}
       </ng-container>
     </div>
 
     <div class="well-label" i18n>Remaining Renewals</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.renewal_remaining()}}
       </ng-container>
     </div>
 
     <div class="well-label" i18n>Checkin Scan Time</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         {{circInfo.currentCirc.checkin_scan_time() || 
           circInfo.circSummary.last_checkin_scan_time() | egDateTime}}
       </ng-container>
 
     <div class="well-label" i18n>Checkin Workstation</div>
     <div class="well-value">
-      <ng-container *ngIf="circInfo.currentCirc">
+      <ng-container *ngIf="circInfo && circInfo.currentCirc">
         <ng-container *ngIf="circInfo.currentCirc.checkin_workstation()">
           {{circInfo.currentCirc.checkin_workstation().name()}}
         </ng-container>