X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=Pman.Download.js;h=7037f745721c58e550577f7a35954c30a9d0fe0e;hp=dffdc0054a71fdb8d9997c2691a5eeac233d1b32;hb=refs%2Fheads%2Fwip_edward_T5851_download_old_offer_sheet;hpb=0e04bde9bd7abada14852c46b0d29a1f572889b3 diff --git a/Pman.Download.js b/Pman.Download.js index dffdc005..7037f745 100644 --- a/Pman.Download.js +++ b/Pman.Download.js @@ -8,6 +8,7 @@ var t = new Pman.Download({ url: baseURL + '/Images/Download/0/myfile.jpg', newWindow : false, params: { .... }, + doctype: 'pdf' success : function() { Roo.MessageBox.alert("File has downloaded"); } @@ -20,7 +21,13 @@ var t = new Pman.Download({ * @cfg {String} url Location to download from. * @cfg {String} method GET or POST (default GET), POST will create a form, and post that into the hidden frame. * @cfg {Boolean} newWindow (optional) download to new window -* @cfg {Boolean limit (optional) limit for grid downloads. +* @cfg {String} doctype (optional) download PDF to new window +* @cfg {Boolean} limit (optional) limit for grid downloads. + + * @cfg {String} csvCols - use '*' to override grid coluns + * @cfg {String} csvTitles - use '*' to override grid coluns + + * @cfg {Function} success (optional) MAY fire on download completed (fails on attachments).. * @cfg {Number} timeout (optional) in milliseconds before it gives up (default 30000 = 30s) @@ -42,9 +49,9 @@ Pman.Download = function(cfg) } - if (cfg.newWindow) { - // as ie seems buggy... - window.open( cfg.url + '?' + Roo.urlEncode(cfg.params || {}), '_blank'); + if (this.newWindow && this.method == 'GET') { + // as ie seems buggy... + window.open( this.url + '?' + Roo.urlEncode(this.params || {}), '_blank'); return ; } @@ -81,13 +88,20 @@ Pman.Download = function(cfg) tag: 'form', method : this.method, action : this.url, - target : this.csvFrame.id, + target : this.newWindow ? '_new' : this.csvFrame.id, enctype : 'multipart/form-data' - - - }); +// +// if(this.doctype == 'pdf'){ +// this.pdfEmbed = b.createChild({ +// tag: 'embed', +// src : this.url, +// pluginspage : 'http://www.adobe.com/products/acrobat/readstep2.html', +// alt: this.doctype +// }); +// } + Roo.log(this.params); for(var i in this.params) { var el = this.form.createChild( { @@ -125,11 +139,13 @@ Roo.apply(Pman.Download.prototype, { limit : 9999, + newWindow : false, + + method : 'GET', + // private.. createCsvFrame: function() { - Roo.log('///'); - Roo.log(this); if (this.csvFrame) { document.body.removeChild(this.csvFrame); } @@ -242,27 +258,32 @@ Roo.apply(Pman.Download.prototype, { this.url = this.grid.ds.proxy.conn.url; - this.method = this.grid.ds.proxy.conn.method ; + this.method = this.method || this.grid.ds.proxy.conn.method ; var t = this; // work out the cols - Roo.each(this.grid.cm.config, function(c,i) { - t.params['csvCols['+i+']'] = c.dataIndex; - t.params['csvTitles['+i+']'] = c.header; - - }); + if (this.csvCols) { + t.params.csvCols = this.csvCols; + t.params.csvTitles = this.csvTitles; + } else { + + Roo.each(this.grid.cm.config, function(c,i) { + t.params['csvCols['+i+']'] = c.dataIndex; + t.params['csvTitles['+i+']'] = c.header; + + }); + } if (this.grid.loadMask) { this.grid.loadMask.onLoad(); } this.params.limit = this.limit; + // do it as a post, as args can get long.. + this.method = this.method || 'POST'; + if (this.method == 'POST') { + this.params._get = 1; + } } - - - - - - });