diff options
author | mitsugu oyama | 2011-09-14 19:06:15 +0900 |
---|---|---|
committer | mitsugu oyama | 2011-09-14 19:06:15 +0900 |
commit | 94852de8117dae019cba98fdb01a48078910443d (patch) | |
tree | a99f40f81f8e79d1541b01dbe28650c328037e7a /modules | |
parent | ac8f6dac645bb6187888e86d162e21ab828f6c93 (diff) | |
download | vimperator-plugins-94852de8117dae019cba98fdb01a48078910443d.tar.bz2 |
implement worker
Diffstat (limited to 'modules')
-rw-r--r-- | modules/libDLImage.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/modules/libDLImage.js b/modules/libDLImage.js new file mode 100644 index 0000000..b2dabda --- /dev/null +++ b/modules/libDLImage.js @@ -0,0 +1,39 @@ +var JSONMessage; +var xhrImg; + +function trueImage(){ + var instream=xhrImg.responseText; + self.postMessage( + {'status':'normal','message':instream,'savePath':JSONMessage.savePath} + ); + return; +}; + +function falseImage(){ + self.postMessage({'status':'error','message':'IMAGE FILE ACCEPT ERROR!!'}); + return false; +}; + +function downloadImage(){ + xhrImg=new XMLHttpRequest(); + xhrImg.addEventListener("load",trueImage,false); + xhrImg.addEventListener("error",falseImage,false); + xhrImg.open("GET",JSONMessage.imageUrl,false); + xhrImg.overrideMimeType('text/plain;charset=x-user-defined'); + if(0<JSONMessage.refererUrl.length){ + xhrImg.setRequestHeader('Referer',JSONMessage.refererUrl); + }; + if(0<JSONMessage.cookie){ + xhrImg.setRequestHeader('Cookie',JSONMessage.cookie); + }; + xhrImg.send(null); +}; + +addEventListener("message",function(event){ + JSONMessage=JSON.parse(event.data); + if(JSONMessage.imageUrl===undefined||JSONMessage.savePath===undefined){ + self.postMessage({'status':'error','message':'PARAMETA ERROR!!'}); + return false; + } + downloadImage(); +}, false); |