<!-- checkin form -->
<div class="row">
- <div class="col-md-6">
- <form ng-submit="checkin(checkinArgs)" role="form" class="form-inline">
- <div class="input-group">
+ <div class="col-md-4">
+ <form ng-submit="checkin(checkinArgs)" role="form" class="form-inline">
+ <div class="input-group">
- <label class="input-group-addon"
- for="patron-checkin-barcode" >[% l('Barcode') %]</label>
+ <label class="input-group-addon"
+ for="patron-checkin-barcode" >[% l('Barcode') %]</label>
- <input focus-me="focusMe" blur-me="blurMe"
- class="form-control"
- ng-model="checkinArgs.copy_barcode"
- placeholder="[% l('Barcode') %]"
- id="patron-checkin-barcode" type="text"/>
+ <input focus-me="focusMe" blur-me="blurMe"
+ class="form-control"
+ ng-model="checkinArgs.copy_barcode"
+ placeholder="[% l('Barcode') %]"
+ id="patron-checkin-barcode" type="text"/>
- <input type="submit" class="btn btn-default" value="[% l('Submit') %]"/>
- </div>
- </form>
+ <input type="submit" class="btn btn-default" value="[% l('Submit') %]"/>
+ </div>
+ </form>
</div>
- <div class="col-md-6">
+ <div class="col-md-4">
+ <div ng-if="alert" class="col-md-12 alert-danger pad-all-min">
+ <span ng-if="alert.already_checked_in">
+ [% l('[_1] was already checked in.', '{{alert.already_checked_in}}') %]
+ </span>
+ <span ng-if="alert.item_never_circed">
+ [% l('Item [_1] has never circulated.', '{{alert.item_never_circed}}') %]
+ </span>
+ </div>
+ </div>
+
+ <div class="col-md-4">
<div class="flex-row">
<div class="flex-cell"></div>
<div class="pad-horiz">[% l('Effective Date') %]</div>
</div>
</div>
-<div ng-if="alert" class="col-md-6 alert alert-danger">
- <span ng-if="alert.already_checked_in">
- [% l('[_1] was already checked in.', '{{alert.already_checked_in}}') %]
- </span>
- <span ng-if="alert.item_never_circed">
- [% l('Item [_1] has never circulated.', '{{alert.item_never_circed}}') %]
- </span>
+<div class="row pad-vert" ng-if="fine_total">
+ <div class="col-md-12">
+ <span>[% l('Fine Tally:') %]</span>
+ <span class="pad-horiz alert alert-danger">{{fine_total | currency}}</span>
+ <span ng-if="billable_barcode">
+ <span>[% l('Transaction for [_1] billed:', '{{billable_barcode}}') %]</span>
+ <span class="pad-horiz alert alert-danger">{{billable_amount | currency}}</span>
+ </span>
+ </div>
</div>
<hr/>
var suppress_popups = false;
var today = new Date();
- var seen_barcodes = {};
$scope.focusMe = true;
$scope.checkins = checkinSvc.checkins;
$scope.checkinArgs = {backdate : today}
$scope.using_hatch = egCore.hatch.usingHatch();
$scope.modifiers = {};
+ $scope.fine_total = 0;
// run egCore.startup here since it's not handled via resolver
egCore.startup.go().then(
args.copy_barcode = ''; // reset UI for next scan
$scope.focusMe = true;
delete $scope.alert;
+ delete $scope.billable_amount;
+ delete $scope.billable_barcode;
var params = compiled.params;
var options = compiled.options;
if (!params.copy_barcode) return;
-
- if (seen_barcodes[params.copy_barcode]) {
- $scope.alert = {already_checked_in : params.copy_barcode};
- return;
- }
-
- seen_barcodes[params.copy_barcode] = true;
delete $scope.alert;
var row_item = {
// TODO holds shelf, cataloging
}
+ if (row_item.mbts) {
+ var amt = Number(row_item.mbts.balance_owed());
+ if (amt != 0) {
+ $scope.billable_barcode = row_item.copy_barcode;
+ $scope.billable_amount = amt;
+ $scope.fine_total =
+ ($scope.fine_total * 100 + amt * 100) / 100;
+ }
+ }
+
+ if (final_resp.evt.textcode == 'NO_CHANGE') {
+ $scope.alert =
+ {already_checked_in : final_resp.evt.copy_barcode};
+ }
+
if ($scope.trim_list && checkinSvc.checkins.length > 20)
checkinSvc.checkins = checkinSvc.checkins.splice(0, 20);
},