1 sdump('D_TRACE','Loading patron_bills.js\n');
3 function patron_bills_init(p) {
4 sdump('D_PATRON_BILLS',"TESTING: patron_bills.js: " + mw.G['main_test_variable'] + '\n');
5 sdump('D_CONSTRUCTOR',arg_dump(arguments));
7 p.patron_bills_cols = [
9 'id' : 'checkbox', 'label' : ' ', 'flex' : 0, 'render_xul' : 'checkbox'
12 'id' : 'id', 'label' : getString('mbts_id_label'), 'flex' : 1,
13 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.id()'
16 'id' : 'xact_start', 'label' : getString('mbts_xact_start_label'), 'flex' : 1,
17 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.xact_start().toString().substr(0,10);'
20 'id' : 'xact_finish', 'label' : getString('mbts_xact_finish_label'), 'flex' : 1,
21 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.xact_finish().toString().substr(0,10);'
24 'id' : 'total_owed', 'label' : getString('mbts_total_owed_label'), 'flex' : 1,
25 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.total_owed()'
28 'id' : 'total_paid', 'label' : getString('mbts_total_paid_label'), 'flex' : 1,
29 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.total_paid()'
32 'id' : 'balance_owed', 'label' : getString('mbts_balance_owed_label'), 'flex' : 1,
33 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.balance_owed()'
36 'id' : 'current_pay', 'label' : getString('bills_current_payment_label'), 'flex' : 1, 'render_xul' : 'textbox'
40 p.grid_list = grid_list_init( { 'w' : p.w, 'node' : p.node, 'cols' : p.patron_bills_cols, 'debug' : p.app } );
41 p.add_patron_bills = function (bills) {
42 sdump('D_PATRON_BILLS','p.add_patron_bills(' + bills + ')\n');
43 return patron_bills_add_patron_bills(p,bills);
45 p.clear_patron_bills = p.grid_list.clear_grid;
47 p.register_bill_context_builder = function (f) {
48 sdump('D_PATRON_BILLS','p.register_context_builder(' + f + ')\n');
49 p.grid_list.register_context_builder( f );
52 sdump('D_TRACE_EXIT',arg_dump(arguments));
57 sdump('D_PATRON_BILLS',arg_dump(arguments,{1:true}));
58 for (var i = 0; i < p.mbts_cols.length; i++) {
59 var hash = p.mbts_cols[i];
60 var obj_string = 'mbts';
61 var cmd = parse_render_string( obj_string, hash.fm_field_render );
66 sdump('D_ERROR',js2JSON(E) + '\n');
68 var label = p.w.document.createElement('label');
69 row.appendChild( label );
70 label.setAttribute('value',col);
74 function patron_bills_add_patron_bills(p, bills) {
75 sdump('D_PATRON_BILLS',arg_dump(arguments,{1:true}));
76 // grid_columns: checkbox, line item, bill amount, payment
78 var obj_string ='mbts';
80 for (var i = 0; i < bills.length; i++) {
84 var row = p.w.document.createElement('row');
85 p.grid_list.add_rows( [ row ] );
87 for (var j = 0; j < p.patron_bills_cols.length; i++) {
88 var hash = p.patron_bills_cols[j];
89 if (hash.fm_field_render) {