aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authormitsugu oyama2011-09-14 19:06:15 +0900
committermitsugu oyama2011-09-14 19:06:15 +0900
commit94852de8117dae019cba98fdb01a48078910443d (patch)
treea99f40f81f8e79d1541b01dbe28650c328037e7a /modules
parentac8f6dac645bb6187888e86d162e21ab828f6c93 (diff)
downloadvimperator-plugins-94852de8117dae019cba98fdb01a48078910443d.tar.bz2
implement worker
Diffstat (limited to 'modules')
-rw-r--r--modules/libDLImage.js39
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);