_p.show_dialog = function() { if(!_p.dialog) { _p.make_dialog(); } _p.dialog.show(); } _p.make_dialog = function() { var d = new Dialog(360, 140, "Print Formats"); d.make_body( [['HTML','Select'] ,['Check','No Letterhead','Will ignore letterhead if it can be set. May not work for all formats'] ,['HTML', 'Buttons'] ]); d.widgets['No Letterhead'].checked = 1; // prints $btn(d.widgets.Buttons, 'Print', function() { _p.build(sel_val(cur_frm.print_sel), _p.go, d.widgets['No Letterhead'].checked); }, {cssFloat:'right', marginBottom:'16px', marginLeft:'7px'}, 'green'); // preview $btn(d.widgets.Buttons, 'Preview', function() { _p.build(sel_val(cur_frm.print_sel), _p.preview, d.widgets['No Letterhead'].checked); }, {cssFloat:'right', marginBottom:'16px'}, ''); _p.dialog = d; d.onshow = function() { var c = d.widgets['Select']; if(c.cur_sel && c.cur_sel.parentNode == c) c.removeChild(c.cur_sel); c.appendChild(cur_frm.print_sel); c.cur_sel = cur_frm.print_sel; } } _p.field_tab = function(layout_cell) { var t = $a(layout_cell, 'table', '', {width:'100%'}); var r = t.insertRow(0); this.r = r; r.insertCell(0); r.insertCell(1); r.cells[0].className='datalabelcell'; r.cells[1].className='datainputcell'; return r } // standard layout // ========================================================================== _p.print_std_add_table = function(t, layout, pf_list, dt, no_letterhead) { if(t.appendChild) { // one table only layout.cur_cell.appendChild(t); } else { // multiple tables for(var ti=0;ti'; break; case 'Column Break': layout.addcell(f.width, f.label); //if(f.label) layout.cur_cell.header.innerHTML = '
'+f.label+'
'; break; case 'Table': var t = print_table(dt, dn,f.fieldname,f.options,null,null,null,null); layout = _p.print_std_add_table(t, layout, pf_list, dt, no_letterhead); break; case 'HTML': var tmp = $a(layout.cur_cell, 'div'); tmp.innerHTML = f.options; break; case 'Code': var tmp = $a(layout.cur_cell, 'div'); var v= _f.get_value(dt,dn,f.fieldname); tmp.innerHTML = '
'+ f.label + ':
' + '
'+(v?v:'')+'
'; break; case 'Text Editor': var tmp = $a(layout.cur_cell, 'div'); var v= _f.get_value(dt,dn,f.fieldname); tmp.innerHTML = v?v:''; break; default: // add cell data _p.print_std_add_field(dt, dn, f, layout); } } } } layout.close_borders(); // build html for each page var html = ''; for(var i=0;i0) { for(var i=0; i' + block.innerHTML; } if(only_body) { return tmp_html + block.innerHTML.replace(/\n' + '' + ''+title+'' + '' + '' + tmp_html + block.innerHTML.replace(/'; } } print_table = function(dt, dn, fieldname, tabletype, cols, head_labels, widths, condition, cssClass) { var fl = fields_list[tabletype]; var ds = getchildren(tabletype, dn, fieldname, dt); var tl = []; var cell_style = {border:'1px solid #000', padding:'2px', verticalAlign:'top'}; var head_cell_style = {border:'1px solid #000', padding:'2px', verticalAlign:'top', backgroundColor:'#ddd'}; var make_table = function(fl) { var w = document.createElement('div'); var t = $a(w, 'table', '', {width:'100%', borderCollapse:'collapse', marginBottom:'10px'}); t.wrapper = w; // head row t.insertRow(0); var c_start = 0; if(fl[0]=='SR') { var cell = t.rows[0].insertCell(0) cell.innerHTML = head_labels?head_labels[0]:'Sr'; $y(cell, {width:'30px'}); $y(cell, head_cell_style) c_start = 1; } for(var c=c_start;c