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_dates', 'label' : getString('bills_xact_dates_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts',
+ 'fm_field_render' : 'xact_dates_box($$)'
},
{
- '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' : 'money', 'label' : getString('bills_money_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mbts',
+ 'fm_field_render' : 'money_box($$)'
},
+ /*
{
'id' : 'total_owed', 'label' : getString('mbts_total_owed_label'), 'flex' : 1,
'primary' : false, 'hidden' : false, 'fm_class' : 'mbts', 'fm_field_render' : '.total_owed()'
'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'
}
var listbox = p.w.document.createElement('listbox');
p.node.appendChild( listbox );
listbox.setAttribute('flex','1');
+ listbox.setAttribute('seltype','multiple');
var listhead = p.w.document.createElement('listhead');
listbox.appendChild( listhead );
var listcols = p.w.document.createElement('listcols');
listbox.appendChild( listcols );
+ if (window.navigator.userAgent.match( /Firefox/ )) {
+ var listheader = p.w.document.createElement('listheader');
+ listhead.appendChild( listheader );
+ listheader.setAttribute('label', '');
+ var listcol = p.w.document.createElement('listcol');
+ listcols.appendChild( listcol );
+ }
+
for (var i = 0; i < p.cols.length; i++ ) {
var listheader = p.w.document.createElement('listheader');
var listitem = p.w.document.createElement('listitem');
listbox.appendChild( listitem );
listitem.setAttribute('allowevents','true');
- var idx = 0;
- if (typeof(cols[0]) == 'string') {
- listitem.setAttribute('label',cols[0]);
- idx = 1;
+ if (window.navigator.userAgent.match( /Firefox/ )) {
+ listitem.setAttribute('label','');
}
- for (var i = idx; i < cols.length; i++) {
+
+ for (var i = 0; i < cols.length; i++) {
try {
listitem.appendChild( cols[i] );
function patron_bills_add_patron_bills(p, bills) {
sdump('D_PATRON_BILLS',arg_dump(arguments,{1:true}));
+ function xact_dates_box( mbts ) {
+ var grid = p.w.document.createElement('grid');
+ var cols = p.w.document.createElement('columns');
+ grid.appendChild( cols );
+ cols.appendChild( p.w.document.createElement('column') );
+ cols.appendChild( p.w.document.createElement('column') );
+ var rows = p.w.document.createElement('rows');
+ grid.appendChild( rows );
+ var row0 = p.w.document.createElement('row');
+ rows.appendChild( row0 );
+ var label_r0_1 = p.w.document.createElement('label');
+ row0.appendChild( label_r0_1 );
+ label_r0_1.setAttribute('value',getString('mbts_id_label'));
+ var label_r0_2 = p.w.document.createElement('label');
+ row0.appendChild( label_r0_2 );
+ label_r0_2.setAttribute('value',mbts.id());
+ var row1 = p.w.document.createElement('row');
+ rows.appendChild( row1 );
+ var label_r1_1 = p.w.document.createElement('label');
+ row1.appendChild( label_r1_1 );
+ label_r1_1.setAttribute('value',getString('mbts_xact_start_label'));
+ var label_r1_2 = p.w.document.createElement('label');
+ row1.appendChild( label_r1_2 );
+ label_r1_2.setAttribute('value',mbts.xact_start().toString().substr(0,10));
+ var row2 = p.w.document.createElement('row');
+ rows.appendChild( row2 );
+ var label_r2_1 = p.w.document.createElement('label');
+ row2.appendChild( label_r2_1 );
+ label_r2_1.setAttribute('value',getString('mbts_xact_finish_label'));
+ var label_r2_2 = p.w.document.createElement('label');
+ row2.appendChild( label_r2_2 );
+ try { label_r2_2.setAttribute('value',mbts.xact_finish().toString().substr(0,10));
+ } catch(E) {}
+
+ return grid;
+ }
+
+ function money_box( mbts ) {
+ var grid = p.w.document.createElement('grid');
+ var cols = p.w.document.createElement('columns');
+ grid.appendChild( cols );
+ cols.appendChild( p.w.document.createElement('column') );
+ cols.appendChild( p.w.document.createElement('column') );
+ var rows = p.w.document.createElement('rows');
+ grid.appendChild( rows );
+ var row1 = p.w.document.createElement('row');
+ rows.appendChild( row1 );
+ var label_r1_1 = p.w.document.createElement('label');
+ row1.appendChild( label_r1_1 );
+ label_r1_1.setAttribute('value',getString('mbts_total_owed_label'));
+ var label_r1_2 = p.w.document.createElement('label');
+ row1.appendChild( label_r1_2 );
+ label_r1_2.setAttribute('value',mbts.total_owed());
+ var row2 = p.w.document.createElement('row');
+ rows.appendChild( row2 );
+ var label_r2_1 = p.w.document.createElement('label');
+ row2.appendChild( label_r2_1 );
+ label_r2_1.setAttribute('value',getString('mbts_total_paid_label'));
+ var label_r2_2 = p.w.document.createElement('label');
+ row2.appendChild( label_r2_2 );
+ label_r2_2.setAttribute('value',mbts.total_paid());
+ var row3 = p.w.document.createElement('row');
+ rows.appendChild( row3 );
+ var label_r3_1 = p.w.document.createElement('label');
+ row3.appendChild( label_r3_1 );
+ label_r3_1.setAttribute('value',getString('mbts_balance_owed_label'));
+ label_r3_1.setAttribute('style','font-weight: bold');
+ var label_r3_2 = p.w.document.createElement('label');
+ row3.appendChild( label_r3_2 );
+ label_r3_2.setAttribute('value',mbts.balance_owed());
+ label_r3_2.setAttribute('style','font-weight: bold');
+
+ return grid;
+ }
+
var obj_string ='mbts';
for (var i = 0; i < bills.length; i++) {
var hash = p.patron_bills_cols[j];
sdump('D_PATRON_BILLS','Considering ' + js2JSON(hash) + '\n');
var listcell = p.w.document.createElement('listcell');
+ listcell.setAttribute('pack','start');
+ listcell.setAttribute('align','start');
+ listcell.setAttribute('style','border-bottom: black solid thin');
var col = '';
if (hash.fm_field_render) {
col = eval( cmd );
sdump('D_PATRON_BILLS','eval = ' + col + '\n');
} catch(E) {
- sdump('D_ERROR',js2JSON(E) + '\n');
+ sdump('D_ERROR',E + '\n');
+ }
+ if (typeof(col) == 'string') {
+ listcell.setAttribute('label',col);
+ } else {
+ listcell.appendChild( col );
}
- listcell.setAttribute('label',col);
}
if (hash.render_xul) {
var xul = p.w.document.createElement( hash.render_xul );
listcell.appendChild( xul );
}
- if ( (j == 0) && (window.navigator.userAgent.match( /Firefox/ )) ) {
- cols.push( col );
- } else {
- cols.push( listcell );
- }
+ cols.push( listcell );
}
p.list_box.add_row( cols );
}