pref_ versions of all name fields (e.g. pref_family_name);
* transasctions - a list of transactions, each of which
contains:
+ xact.id - Bill unique id
+ xact.title - Copy title
+ xact.copy_barcode - Copy barcode
+ xact.xact_finish - Billing finish date and time
+ xact.xact_start - Billing start date and time
xact.summary - information about the transaction
- xact.title - Item title
- xact.copy_barcode - Item barcode
+ xact.summary.balance_owed - Balance owed
+ xact.summary.last_billing_note - Last billing note
+ xact.summary.last_billing_type - Last billing type
+ xact.summary.last_payment_note - Last payment note
+ xact.summary.last_payment_ts - Last payment date and time
+ xact.summary.last_payment_type - Last payment type
+ xact.summary.total_owed - Total billed
+ xact.summary.total_paid - Total paid
+ xact.summary.xact_type - Billing type
+ xact.call_number - Information about the copy
+ xact.call_number.label - Copy call number
+ xact.call_number.prefix - Copy call number prefix
+ xact.call_number.suffix - Copy call number suffix
+ xact.call_number.owning_lib.name - The owning library's name
+ xact.call_number.owning_lib.shortname - The owning library's shortname
-->
Welcome to {{current_location.name}}!<br/>
You have the following bills:
patron.has_phone - Whether or not the patron has a phone number
pref_ versions of all name fields (e.g. pref_family_name);
* transasctions - a list of transactions, each of which contains:
- xact.id - Bill unique id
- xact.copy_barcode - Item barcode
- xact.xact_finish - Billing finish date and time
- xact.xact_start - Billing start date and time
- xact.summary - Information about the transaction
- xact.summary.balance_owed - Balance owed
- xact.summary.last_billing_note - Last billing note
- xact.summary.last_billing_type - Last billing type
- xact.summary.last_payment_note - Last payment note
- xact.summary.last_payment_ts - Last payment date and time
- xact.summary.last_payment_type - Last payment type
- xact.summary.total_owed - Total billed
- xact.summary.total_paid - Total paid
- xact.summary.xact_type - Billing type
- xact.title - Item title
+ xact.id - Bill unique id
+ xact.title - Copy title
+ xact.copy_barcode - Copy barcode
+ xact.xact_finish - Billing finish date and time
+ xact.xact_start - Billing start date and time
xact.summary - information about the transaction
- xact.title - Item title
- xact.copy_barcode - Item barcode
+ xact.summary.balance_owed - Balance owed
+ xact.summary.last_billing_note - Last billing note
+ xact.summary.last_billing_type - Last billing type
+ xact.summary.last_payment_note - Last payment note
+ xact.summary.last_payment_ts - Last payment date and time
+ xact.summary.last_payment_type - Last payment type
+ xact.summary.total_owed - Total billed
+ xact.summary.total_paid - Total paid
+ xact.summary.xact_type - Billing type
+ xact.call_number - Information about the copy
+ xact.call_number.label - Copy call number
+ xact.call_number.prefix - Copy call number prefix
+ xact.call_number.suffix - Copy call number suffix
+ xact.call_number.owning_lib.name - The owning library's name
+ xact.call_number.owning_lib.shortname - The owning library's shortname
-->
Welcome to {{current_location.name}}!<br/>
* has_phone - same as has_email
* circulations - list of loans made during this session. Each
- includes:
+ checkout includes:
- * title
- * author
- * copy.barcode
- * circ.due_date
+ * checkout.title
+ * checkout.author
+ * checkout.circ.due_date
+ * checkout.circ.renewal_remaining
+ * checkout.copy.barcode
+ * checkout.copy.circ_modifier
+ * checkout.copy.call_number.label
+ * checkout.copy.call_number.owning_lib.name
+ * checkout.copy.call_number.owning_lib.shortname
-->
<div>
<!--
Template for printing a table of holds to pull. Fields include:
-* holds - list of holds, each of which includes:
+* holds - list of holds, each hold_data item includes:
- * title
- * author
- * hold.hold_type
- * copy.location_name
- * volume.label - call number
- * copy.barcode
+ * hold_data.title
+ * hold_data.author
+ * hold_data.hold.hold_type
+ * hold_data.copy.barcode
+ * hold_data.copy.location_name
+ * hold_data.volume.label - call number
-->
<table id='pull-list-template-table'>
<style>
* holds - list of hold requests, including
+ * call_number.label
+ * call
* patron_alias
* patron_last
* patron_first
<!--
Template for printing hold request slips. Fields include:
-* call_number.label/prefix/suffix
+* call_number.label
+* call number.prefix.label
+* call_number.suffix.label
* hold.behind_desk
* copy.barcode
* title
* dest_courier_code - from lib.courier_code library setting
* hold.behind_desk
* copy.barcode
+* copy.status.name - Copy status
* title
* patron.family_name
* patron.first_given_name
* has_email - boolean value to show/hide elements on the receipt
* has_phone - same as has_email
-* circulations - list of current loans, including
+* circulations - list of current loans, including for each checkout
- * title
- * author
- * call_number.label
- * copy.barcode
- * circ.due_date
+ * checkout.title
+ * checkout.author
+ * checkout.circ.due_date
+ * checkout.circ.renewal_remaining
+ * checkout.copy.barcode
+ * checkout.copy.circ_modifier.name
+ * checkout.copy.call_number.label
+ * checkout.copy.call_number.owning_lib.name
+ * checkout.copy.call_number.owning_lib.shortname
+ * checkout.copy.location.name - Shelving location
-->
<div>
Template for printing a renewal receipt. Fields include:
* circulations - list of renewals made during the session, including
+ for each renewal:
- * title
- * copy.barcode
- * circ.due_date
+ * renewal.title
+ * renewal.author
+ * renewal.circ.due_date
+ * renewal.circ.renewal_remaining
+ * renewal.circ.circ_lib
+ * renewal.circ.duration
+ * renewal.copy.barcode
+ * renewal.copy.circ_modifier
+ * renewal.copy.call_number.label
+ * renewal.copy.call_number.owning_lib.name
+ * renewal.copy.call_number.owning_lib.shortname
-->
<div>
* dest_address.post_code
* dest_courier_code - from lib.courier_code library setting
* copy.barcode
+* copy.status.name - Copy status
* title
* author
-->
</div>
<br/>
- [% l('Barcode: [_1]', '{{copy.barcode}}') %]</div>
- [% l('Title: [_1]', '{{title}}') %]</div>
- [% l('Author: [_1]', '{{author}}') %]</div>
+ [% l('Barcode: [_1]', '{{copy.barcode}}') %]</div>
+ [% l('Title: [_1]', '{{title}}') %]</div>
+ [% l('Author: [_1]', '{{author}}') %]</div>
<br/>
simple_record : {
'title' : 'Test Title'
}
+ },
+ owning_lib : {
+ name : 'Ankers Memorial Library',
+ shortname : 'Ankers'
}
},
+ circ_modifier : {
+ name : 'Book'
+ },
location : {
name : 'General Collection'
},
+ status : {
+ name : 'In Transit'
+ },
// flattened versions for item status template
// TODO - make this go away
'call_number.label' : '636.8 JON',
'call_number.record.simple_record.title' : 'Test Title',
- 'location.name' : 'General Colleciton'
+ 'location.name' : 'General Collection',
+ 'call_number.owning_lib.name' : 'Ankers Memorial Library',
+ 'call_number.owning_lib.shortname' : 'Ankers'
}
var one_hold = {
id : 1,
xact_start : new Date().toISOString(),
xact_finish : new Date().toISOString(),
+ call_number : {
+ label : "spindler",
+ prefix : "biography",
+ suffix : "Closed Stacks",
+ owning_lib : {
+ name : "Mineola Public Library",
+ shortname : "Mineola"
+ }
+ },
summary : {
xact_type : 'circulation',
last_billing_type : 'Overdue materials',
id : 2,
xact_start : new Date().toISOString(),
xact_finish : new Date().toISOString(),
+ call_number : {
+ label : "796.6 WEI",
+ prefix : "",
+ suffix : "REF",
+ owning_lib : {
+ name : "Rogers Reading Room",
+ shortname : "Rogers"
+ }
+ },
summary : {
xact_type : 'circulation',
last_billing_type : 'Overdue materials',
circ : {
due_date : new Date().toISOString(),
circ_lib : 1,
- duration : '7 days'
+ duration : '7 days',
+ renewal_remaining : 2
},
copy : seed_copy,
title : seed_record.title,
author : seed_record.author
- },
+ }
],
patron_money : {
'mbt' : ['summary', 'circulation'],
'circ' : ['target_copy'],
'acp' : ['call_number'],
- 'acn' : ['record'],
+ 'acn' : ['record','owning_lib','prefix','suffix'],
'bre' : ['simple_record']
}
},
}
if (xact.circulation()) {
newXact.copy_barcode = xact.circulation().target_copy().barcode(),
- newXact.title = xact.circulation().target_copy().call_number().record().simple_record().title()
+ newXact.title = xact.circulation().target_copy().call_number().record().simple_record().title();
+ newXact.call_number = {
+ label : xact.circulation().target_copy().call_number().label(),
+ prefix : xact.circulation().target_copy().call_number().prefix().label(),
+ suffix : xact.circulation().target_copy().call_number().suffix().label(),
+ owning_lib : {
+ name : xact.circulation().target_copy().call_number().owning_lib().name(),
+ shortname : xact.circulation().target_copy().call_number().owning_lib().shortname()
+ }
+ }
}
+
xacts.push(newXact);
}
);
'mbt' : ['summary', 'circulation'],
'circ' : ['target_copy'],
'acp' : ['call_number'],
- 'acn' : ['record'],
+ 'acn' : ['record','owning_lib','prefix','suffix'],
'bre' : ['simple_record']
}
},
if (xact.circulation()) {
newXact.copy_barcode = xact.circulation().target_copy().barcode(),
newXact.title = xact.circulation().target_copy().call_number().record().simple_record().title()
+ newXact.call_number = {
+ label : xact.circulation().target_copy().call_number().label(),
+ prefix : xact.circulation().target_copy().call_number().prefix().label(),
+ suffix : xact.circulation().target_copy().call_number().suffix().label(),
+ owning_lib : {
+ name : xact.circulation().target_copy().call_number().owning_lib().name(),
+ shortname : xact.circulation().target_copy().call_number().owning_lib().shortname()
+ }
+ }
}
xacts.push(newXact);
}
print_data.circulations.push({
circ : egCore.idl.toHash(co.circ),
copy : egCore.idl.toHash(co.acp),
- call_number : egCore.idl.toHash(co.acn),
title : co.title,
author : co.author
- })
+ });
+ // Flesh selected fields of this circulation
+ print_data.circulations[0].copy.call_number =
+ egCore.idl.toHash(co.acn);
+ print_data.circulations[0].copy.owning_lib =
+ egCore.ils.toHash(co.aou);
};
});
- // This is repeated in patron.* so everyting is in one place but left here so existing templates don't break.
+ // This is repeated in patron.* so everything is in one place but left here so existing templates don't break.
print_data.patron_money = patronSvc.patron_stats.fines;
print_data.patron = {
prefix : cusr.prefix(),
title : egCore.idl.toHash(renewal.title),
author : egCore.idl.toHash(renewal.author)
});
+ // Flesh selected fields of this circulation
+ print_data.circulations[0].copy.call_number =
+ egCore.idl.toHash(renewal.acn);
+ print_data.circulations[0].copy.owning_lib =
+ egCore.idl.toHash(renewal.aou);
}
});
return egCore.pcrud.retrieveAll('ccs', {}, {atomic : true}).then(
function(list) {
egCore.env.absorbList(list, 'ccs');
- copy.status(egCore.env.ccs.map[copy.status()]);
}
);
}
}
print_context.dest_location =
egCore.idl.toHash(egCore.org.get(data.transit.dest()));
+ print_context.copy.status = egCore.idl.toHash(print_context.copy.status);
}
if (data.patron) {