sdump('D_CONSTRUCTOR',arg_dump(arguments));
p.grid = p.node.getElementsByAttribute('name','grid')[0];
- p.popup = p.node.getElementsByTagName('popup')[0];
+ //p.popup = p.node.getElementsByTagName('popup')[0];
p.grid_columns = p.grid.firstChild;
p.grid_rows = p.grid.lastChild;
p._context_function = function (ev) { alert('default _context_function'); };
- p.popup.addEventListener('popupshowing',function (ev) { return p._context_function(ev); },false);
+ //p.popup.addEventListener('popupshowing',function (ev) { return p._context_function(ev); },false);
grid_list_make_columns( p, p.cols )
function grid_list_add_rows( p, new_rows ) {
sdump('D_GRID_LIST',arg_dump(arguments,{2:'.length'}));
sdump('D_TRACE_ENTER',arg_dump(arguments));
- var d = p.w.document;
- var offset = 0;
- if (p.grid_rows.childNodes.length > 0) { offset = p.grid_rows.lastChild.id; }
for (var i = 0; i < new_rows.length; i++) {
var new_row = new_rows[i];
--- /dev/null
+sdump('D_TRACE','Loading patron_bills.js\n');
+
+function patron_bills_init(p) {
+ sdump('D_PATRON_BILLS',"TESTING: patron_bills.js: " + mw.G['main_test_variable'] + '\n');
+ sdump('D_CONSTRUCTOR',arg_dump(arguments));
+
+ p.patron_bills_cols = [
+ {
+ 'id' : 'checkbox', 'label' : ' ', 'flex' : 0, 'render_xul' : 'checkbox'
+ },
+ {
+ 'id' : 'id', 'label' : getString('mbts_id_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.id()'
+ },
+ {
+ 'id' : 'xact_start', 'label' : getString('mbts_xact_start_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.xact_start().toString().substr(0,10);'
+ },
+ {
+ 'id' : 'xact_finish', 'label' : getString('mbts_xact_finish_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.xact_finish().toString().substr(0,10);'
+ },
+ {
+ 'id' : 'total_owed', 'label' : getString('mbts_total_owed_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.total_owed()'
+ },
+ {
+ 'id' : 'total_paid', 'label' : getString('mbts_total_paid_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.total_paid()'
+ },
+ {
+ 'id' : 'balance_owed', 'label' : getString('mbts_balance_owed_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.balance_owed()'
+ },
+ {
+ 'id' : 'current_pay', 'label' : getString('bills_current_payment_label'), 'flex' : 1, 'render_xul' : 'textbox'
+ }
+ ];
+
+ p.grid_list = grid_list_init( { 'w' : p.w, 'node' : p.node, 'cols' : p.patron_bills_cols, 'debug' : p.app } );
+ p.add_patron_bills = function (bills) {
+ sdump('D_PATRON_BILLS','p.add_patron_bills(' + bills + ')\n');
+ return patron_bills_add_patron_bills(p,bills);
+ }
+ p.clear_patron_bills = p.grid_list.clear_grid;
+
+ p.register_bill_context_builder = function (f) {
+ sdump('D_PATRON_BILLS','p.register_context_builder(' + f + ')\n');
+ p.grid_list.register_context_builder( f );
+ }
+
+ sdump('D_TRACE_EXIT',arg_dump(arguments));
+ return p;
+}
+
+function cols() {
+ sdump('D_PATRON_BILLS',arg_dump(arguments,{1:true}));
+ for (var i = 0; i < p.mbts_cols.length; i++) {
+ var hash = p.mbts_cols[i];
+ var obj_string = 'mbts';
+ var cmd = parse_render_string( obj_string, hash.fm_field_render );
+ var col = '';
+ try {
+ col = eval( cmd );
+ } catch(E) {
+ sdump('D_ERROR',js2JSON(E) + '\n');
+ }
+ var label = p.w.document.createElement('label');
+ row.appendChild( label );
+ label.setAttribute('value',col);
+ }
+}
+
+function patron_bills_add_patron_bills(p, bills) {
+ sdump('D_PATRON_BILLS',arg_dump(arguments,{1:true}));
+ // grid_columns: checkbox, line item, bill amount, payment
+
+ var obj_string ='mbts';
+
+ for (var i = 0; i < bills.length; i++) {
+
+ var mbts = bills[i];
+
+ var row = p.w.document.createElement('row');
+ p.grid_list.add_rows( [ row ] );
+
+ for (var j = 0; j < p.patron_bills_cols.length; i++) {
+ var hash = p.patron_bills_cols[j];
+ if (hash.fm_field_render) {
+ }
+ }
+ }
+}
patron_display_patron_holds_init(p);
// gives: p.patron_bills, p.redraw_patron_bills
- patron_display_patron_bills_init(p);
+ //patron_display_patron_bills_init(p);
p.set_patron = function (au) {
return p._patron = au;
p.redraw_patron_checkout_items();
p.redraw_patron_items();
p.redraw_patron_holds();
+ //p.redraw_patron_bills();
return render_fm(p.w.document, { 'au' : p._patron });
}
p.redraw_patron_bills = function() {
p.patron_bills.clear_patron_bills();
- if (!p._patron.bills()) patron_get_bills( p._patron );
- for (var i = 0; i < p._patron.bills().length; i++) {
- p.patron_bills.add_patron_bills( [ i ] );
- }
+ if (!p._patron.bills) patron_get_bills( p._patron );
+ p.patron_bills.add_patron_bills( p._patron.bills );
}
- var test = p.patron_bills.w.document.createElement('row');
- test.setAttribute('style','border: dotted;');
- var test1 = p.patron_bills.w.document.createElement('checkbox');
- test.appendChild( test1 );
- var test2 = p.patron_bills.w.document.createElement('vbox');
- test.appendChild( test2 );
- var test2a = p.patron_bills.w.document.createElement('label');
- test2.appendChild( test2a );
- test2a.setAttribute('value','Late Fee: Harry Potter');
- var test2b = p.patron_bills.w.document.createElement('label');
- test2.appendChild( test2b );
- test2b.setAttribute('value','Due: 05-19-05 Received: 05-21-05 Original Fee: $0.40');
- var test3 = p.patron_bills.w.document.createElement('label');
- test.appendChild( test3 );
- test3.setAttribute('value','$0.20');
- var test4 = p.patron_bills.w.document.createElement('textbox');
- test.appendChild( test4 );
-
- p.patron_bills.add_patron_bills( [ test ] );
}