Pman.Download.js
[Pman.Core] / Pman.Download.js
index 5111f27..9dba6b4 100644 (file)
@@ -135,16 +135,22 @@ Pman.Download = function(cfg)
     {
         if (req.status == 200) {
             Roo.log(ev);
-            var headers = req.getAllResponseHeaders();
-            Roo.log(req.getAllResponseHeaders())
-            var blob = new Blob([this.response], {type: req.responseType });
+            var cd = req.getResponseHeader('Content-Disposition');
+            
+            var filename = '';
+            var matches = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/.exec(cd);
+            if (matches != null && matches[1]) { 
+                filename = matches[1].replace(/['"]/g, '');
+            }
+            
+            var blob = new Blob([req.response], {type: req.responseType });
             
             var a = document.createElement("a");
             a.style = "display: none";
             document.body.appendChild(a);
             var url = window.URL.createObjectURL(blob);
             a.href = url;
-            a.download = 'myFile.pdf';
+            a.download = filename;
              a.click();
             //release the reference to the file by revoking the Object URL
             window.URL.revokeObjectURL(url);