Skip to content

Commit b20412b

Browse files
committed
add weiyun
1 parent 5382c38 commit b20412b

1 file changed

Lines changed: 104 additions & 66 deletions

File tree

Easy offline/Easy offline.user.js

Lines changed: 104 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
// @namespace http://tampermonkey.net/
99
// @require https://cdn.jsdelivr.net/jquery/1.7.2/jquery.min.js
1010
// @require https://cdn.jsdelivr.net/hi-base64/0.2.0/base64.min.js
11-
// @version 1.1.2
11+
// @version 1.2.1
1212
// @author Hoothin
1313
// @mail rixixi@gmail.com
1414
// @include http*://*/*
@@ -36,12 +36,14 @@
3636
var sites={
3737
0:{
3838
name:"baidu",
39+
regex:/pan\.baidu\.com/,
3940
url:"https://pan.baidu.com/disk/home",
4041
bgColor:"ffffff",
4142
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAABjFBMVEX////7+/v+/v/8/Pwyf/wzc/w0bvza5f4xffz5+//0+P8ybPz8/f4yevw0cPwza/z39/cwe/UxdfzSPyr4+v/2+f/m7/53nv0vf/wvce9pof1tlPwxf/gzfPYwePPp8f7Z5/7S4v7P4P7L3f7I2f2Gtf2Rr/1hkP0yd/1FiPwygfxAdPxspftYkvUtc/Dg6f7C2f7F1f54oP1flf0/hfwsbu7i7f/w9f7b5v7X5f7V4v6nyv6oxv6jwP6Ns/2Lsf1/rv1+ov1zof1xof10nf1jm/1djP0xe/2NufxalvxHj/xPhvxKgPxHffw+efw0ePyXu/mqxPg5hfiTtvdyo/dgmfdOj/dBhfVflfQvefT+9fOIqvMyefNMhvFIgO9MeePyycVjZbzKb3DaZVa/Q0Dx9f+Bp/1olv1gkPw0dvzg6Pu2zPk0gflNjPctc/c9gfX88/JJfO3n3+ni2unHxuSGktNpdtBJY8paashRW71nXqp7YpyDYJKpaIKPU33AVFXARkTVTTvFQjrUPypKwHq1AAACAklEQVQ4y4WTB3OqQBSFF3BpAk+KIBixJ2rs0fTee68vvbzee+9//O1Cio46npmFPfd8d2cY9gIASMJHUESDKFQmAZJAUKCFKELA/WSr3A3d/tZnAF99C8fVHYhiosbxxflsdr7I15SIWiCe3exA2szGmwOJXTkUkvHaTTQD9NyBLO/t7OzJ8kFObwKs2/bRdrSvL7p9ZNvrjQC/n8/nwngXzuXz+3wDED42zS13u2Wax+EGQD+pmhvudsOsnuj1gBAZSp5+/XRIYkMeVu1XyaGIcAfoycVM4Pn3qx9vcW3gRUcmE8gsJvUboNfyeDyBwLd/6sX7wtNnC45DD6vXBbRx1sOmrQ+/VFX9efomhFzFstLoNa45QKzCijMx/vXZpar+/fKSZecWijwfmxHZSgzFFBgWxXQUIJ39UX9/nhPFngHsomlRHEYxRY6mlCkOl+5fXp2vraV6IgCLm1JSoyQGxhRlUnCAi/PUEwXnWMKkooxhAIxAuNSPS+8+Qgi7GOB3zutfgnAExQSIr0JoMJw2GJSghPLSo4eDGscYEK7Gna/gy7QkLRvTK5JEP2bAgy4vvTJtLCNX5h0AMLNemvbihfqBv3zjZpHDACKM7ntI3RMFgFSYcJ3B3P0sf6kzGOxM+AFwXAK7kuNurz2pcWTt7deuna/t4LQdvbbD23b8/wPY0UTO99dD5gAAAABJRU5ErkJggg=="
4243
},
4344
1:{
4445
name:"pcloud",
46+
regex:/my\.pcloud\.com/,
4547
url:"https://my.pcloud.com/",
4648
bgColor:"f1f1f1",
4749
noMag:true,
@@ -51,35 +53,47 @@
5153
},
5254
2:{
5355
name:"yyw",
56+
regex:/115\.com/,
5457
url:"http://115.com/?tab=offline&mode=wangpan",
5558
bgColor:"21458a",
5659
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAASFBMVEUhRYr///+XqcjV3OmJnMFTb6QoS45PbKLu8fbZ4OvBy95xiLRifKxbdqlXcqYxU5P3+Prh5u/O1uXH0eK6xduks89/lLtGZJ4ysMfhAAAAVUlEQVQY04WPSQ6AMAwD6ySkdKHs8P+fckyDhPBtRoojhyG4GP6FEjPvxhGZiKKJPM7uoAHYSif0Lgdw+tppQfOGIF4ILsea3CetvMa+UaRq+Mh7/gPkxAHFh9WDUQAAAABJRU5ErkJggg=="
5760
},
5861
3:{
5962
name:"furk",
63+
regex:/www\.furk\.net/,
6064
url:"https://www.furk.net/users/files/add",
6165
bgColor:"fff",
6266
hide:false,
6367
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuCAMAAABgZ9sFAAAAflBMVEX///+CuuaGv+rjXKniTaiDu+d3tufiXq/nUqxAn9+t1vGiz/FOnt/sj8nol8bhcLJRo97b7vp5uOpCoeGQw+m31/XW6/er0++Iwe330uZUpuHssNjni8Tqf7/o9Pn68PSUx+732eucyuvzzuJjq+H0v97sm8q12vDto8/rcrjt831UAAABmUlEQVRIx+2T6W6DMBCE8dr4aEgw0KS5kzZH2/d/we7aliJlN6KR+rNjgYwYfxrwuPrXXwkeaC7ba1nqU7YrWfV83N6rm95G7ZCWlNnL6Kfa20zBA7tNEl7KSsjl5In/rsBOnqArtfx1GGXVGH112Wwuq2KnMMDp2nnUtaquOsttchik15yeLGZ68tpp7403elXo4pZn5Ld3zpg03VWFjkOme51kcGj/nu1p7wF6QPU0cjKDVIyBRrfbtdptM4XYqYIoSKP+KHQ04X17wKfDF8JJYJUt9cqrVH2sUOg0hJ4Ju5rNRSWMIb9r70uA4a2lRRSrx9stDF6ne7tCrz12XbdfLPbdAicVCdFEr5gdQGq306Qt6wz5gR81+t2tmXI6SbLT5sx4ga1YMdNidM/sAMQXOmOoBVPxeMidaaUwFsSjbVBa+NS0RdyequgYXS0pjhSmlegWcKxfRbrmdFBwjpHbMblEV+cQwiDSnUBfD8PQNMDtVBpOH2IYhjVInZHosYkxBh7GGZEeGpRg161Ib0ITQhTCMPrz+gG1shF4koHETAAAAABJRU5ErkJggg=="
6468
},
6569
4:{
6670
name:"seedr",
71+
regex:/www\.seedr\.cc/,
6772
url:"https://www.seedr.cc/files",
6873
bgColor:"ca2a15",
6974
hide:false,
7075
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAllBMVEXGKBPGKBPGKBPGKBPORDLJMh3uv7nQTDvILRjprKPmoZjbdmnLOyjKNSHtvLbrtK3opp3lm5Hhj4Tac2XZb2HXalvUXEzLOibGKBPGKBPGKBPqsarjlovehHjXaFnTWkrMQC3GKBPGKBPGKBP////44+H77u323Nj01dHxycP88vH66+n23dr019Tyz8rxzMfvw73vwrxYVj9BAAAAJHRSTlP7yb+j+/v9+/v9/f37+/39/f39/f39+/uxmSj9/f37+/uXNR2Gd9E6AAAAmUlEQVQY003NVxKDMAxFUQVsbHqv6YkMIT3731wEZoD7oZl3fgQXY7PKaKACKn93BxirwaArWsQXH8EcYYeUu4BnDRAsUKgBWjZDeqfduXKGmHbPT3YiJ9giPtj+qUJWavghxoUSHFxLAz3JIgcAypsGBzF3bAJvAvHB5PiVnm8HGoBZIffTVvWMoIIhX4KIMg5whsbcrKqvf29uDBcu2+SAAAAAAElFTkSuQmCC"
7176
},
7277
5:{
78+
name:"weiyun",
79+
regex:/www\.weiyun\.com/,
80+
url:"https://www.weiyun.com/disk/index.html",
81+
bgColor:"3c95ee",
82+
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAV1BMVEUed9E4htg2hNI2g84KJkMSKkMJIjwHEBr///8lh+k5k+49lu4hhegyj+wri+s/lu+s0vfg7vzX6vy/3PlWou+w1PicyfaWxvXf7fzB3fmHvfSBuvNfp/GhDGXVAAAACHRSTlPm5uDeSkhCHO7HIjkAAAB4SURBVBjTZYuJDsIwDEM9TnfDodc2rv//TtoKITqeosR+UnAcrj/szhimjj2mDRgbM8nYEj59GRfOX/Fg3a+2IUWSUh0vCfKhRUbFaiAqs1L0PVAw2vrM3sx8sFJgieUGWwNzzXAukTeSqX46B7fhX+DSARzQ9dMbRIkLk61eQagAAAAASUVORK5CYII="
83+
},
84+
6:{
7385
name:"xunlei",
74-
url:"http://lixian.vip.xunlei.com/lixian_login.html?furl=",
86+
regex:/lixian\.vip\.xunlei\.com/,
87+
url:"http://lixian.vip.xunlei.com/?furl=",
7588
bgColor:"2e71f1",
7689
directUrl:function(offUrl){
7790
return this.url+offUrl;
7891
},
7992
bgImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAMAAADzN3VRAAABC1BMVEUAAAArcPUscPQkavJSd79UdrhTdrled6kjae8ucfAqbOwoa+0pa+xTd71WdrNad61dea4pbO4vcvEsb/Aqbe8sbu8ucfArbu8ucfEpbe0oa+4vcPH///4ZYe7j8fne7fknbPAkaO41dfDa6vgcY+/o8/rV6PchZ+4bZO79//3u+fklavIiaO8VXu3x9/3t9fve7veLsfYqcfZNhvE5d/AfZO36/fz0+/ry+vrb6PrG2vnR5fbL4faXufbG3fWqyPWjw/WErPWixPR4pPR0ovOIsfJsnPJYj+9Bfe/1+v3l7f3p8Pzg7fq+0/mlw/fY6/aQtPaHrfZnl/S41fORt/KAqvKZvvFJhO8eZe4RVCzFAAAAEXRSTlMA+P74gnpzWP329OrohXJgXOQVaEcAAAFOSURBVCjPZczneoIwGIbhqNXuEQORYGIBQXDvvbfde5z/kfSTi1Kx9798z/UGIXQQUuJBSiiGwDmEPUklFIVFDcI/4doVqilUCSIFArdjlAxQFE1Ir41EMhlGlFKiEerRhPFy29O3byiyUTccx9HiVBbxYYm3jAL1ilyvPlerhl1wFnec83mRuoUQSgr2lPP7Bn3g2dJNtm6TLSggUXzMZrtdXi6X+dCR/QLEtGV1SpZltXvfGtkt5qSdcnXmpmlit8guc5K79vTHK0OCk1eaq1x6q2LlUunBUsZQEi5sj3MZMJp9bLCuynCCjUvX3yuVzKBRFLqK4TNvA+Qj8TV7Si1E4heSfKZYj/pUlzxQfFjQt2XRL/iPJDXVz43tvRBmO6SmsdaZS0N5zHZnOpMwYNoJiuU1pu5j+fwhQtGIynAQUyMXCFyeqntFPYPFD095Qx8x+n7CAAAAAElFTkSuQmCC"
8093
},
81-
6:{
94+
7:{
8295
name:"xiaomi",
96+
regex:/miwifi\.com/,
8397
url:"http://d.miwifi.com/d2r/?url=",
8498
bgColor:"f97306",
8599
directUrl:function(offUrl){
@@ -105,6 +119,7 @@
105119
pcloud:"Pcloud网盘",
106120
xunlei:"迅雷离线",
107121
xiaomi:"小米路由器",
122+
weiyun:"微云",
108123
enable:"启用",
109124
disable:"禁用"
110125
};
@@ -119,6 +134,7 @@
119134
pcloud:"Pcloud",
120135
xunlei:"Xunlei",
121136
xiaomi:"MiWifi",
137+
weiyun:"Weiyun",
122138
enable:"Enable ",
123139
disable:"Disable "
124140
};
@@ -133,7 +149,10 @@
133149
}
134150
}
135151

152+
var isCssSeted=false;
136153
function setCss(){
154+
if(isCssSeted)return;
155+
isCssSeted=true;
137156
$('head').append(`
138157
<style>
139158
a.whx-a{
@@ -156,18 +175,51 @@
156175
</style>`);
157176
}
158177

159-
function getAllEnableUrl() {
178+
var parentDiv=$("<div style='display:none;position:relative;z-index:99999;overflow:visible;text-align:left;'></div>");
179+
var regs=GM_getValue("eoReg");
180+
function hideIcons(){
181+
parentDiv.css("display","none");
182+
for(var node of offNodes){
183+
node.css("margin-top","0px");
184+
}
185+
}
186+
var offNodes=[];
187+
var offUrl;
188+
for(var x = 0; x < Object.keys(sites).length; x++){
189+
let offNode=$("<a></a>");
190+
offNode.addClass('whx-a').css("position","absolute").css("margin-top","0px").css("margin-left","0px").attr("target","_blank");
191+
let siteConfig=sites[x];
192+
offNode.css("background-color","#"+siteConfig.bgColor).attr("title",i18n[siteConfig.name] ).attr("href", siteConfig.url);
193+
offNode.click(function(e){
194+
if(!siteConfig.directUrl)GM_setValue("eoUrl",getRightUrl(offUrl));
195+
e.stopPropagation();
196+
});
197+
if(siteConfig.bgImg)offNode.css("background-image","url(\""+siteConfig.bgImg+"\")");
198+
if(siteConfig.hide || GM_getValue("eoHide"+siteConfig.name))continue;
199+
offNodes.push(offNode);
200+
parentDiv.prepend(offNode);
201+
}
202+
parentDiv.mouseover(function(e){
203+
e.stopPropagation();
204+
});
205+
document.addEventListener("mouseover", function(e){
206+
hideIcons();
207+
});
208+
var preNode;
209+
if(showType){
210+
document.addEventListener("click", function(){
211+
if(preNode)preNode.hide(300);
212+
});
213+
}
214+
215+
function getAllEnableUrl(target) {
160216
if(GM_getValue('eoDisable_'+document.domain))return;
161-
var parentDiv=$("<div style='display:none;position:relative;z-index:99999;overflow:visible;text-align:left;'></div>");
162-
var rawnodes = $(enableUrl).get(),customnodes=[];
217+
var rawnodes=(target?$(target).find(enableUrl):$(enableUrl)).get(),customnodes=[];
163218
var nodes = [];
164-
var i,x;
219+
var i;
165220
var curNode;
166-
var offUrl;
167-
var offNodes=[];
168-
var regs=GM_getValue("eoReg");
169221
if(regs){
170-
var aTags = $("a").get();
222+
var aTags = (target?$(target).find("a"):$("a")).get();
171223
for(var aTag of aTags){
172224
for(var reg of regs){
173225
if(reg==="")continue;
@@ -179,46 +231,6 @@
179231
}
180232
}
181233
}
182-
function hideIcons(){
183-
parentDiv.css("display","none");
184-
for(var node of offNodes){
185-
node.css("margin-top","0px");
186-
}
187-
}
188-
for(x = 0; x < Object.keys(sites).length; x++){
189-
let offNode=$("<a></a>");
190-
offNode.addClass('whx-a').css("position","absolute").css("margin-top","0px").css("margin-left","0px").attr("target","_blank");
191-
let siteConfig=sites[x];
192-
offNode.css("background-color","#"+siteConfig.bgColor).attr("title",i18n[siteConfig.name] ).attr("href", siteConfig.url);
193-
offNode.click(function(e){
194-
if(!siteConfig.directUrl)GM_setValue("eoUrl",getRightUrl(offUrl));
195-
e.stopPropagation();
196-
});
197-
if(siteConfig.bgImg)offNode.css("background-image","url(\""+siteConfig.bgImg+"\")");
198-
/*switch(x){
199-
case 0:
200-
offNode.css("background-color","#e1e1e1").attr("title",i18n.baidu ).attr("href", "http://pan.baidu.com/disk/home");
201-
break;
202-
case 1:
203-
offNode.css("background-color","#F44336").attr("title",i18n.seedr ).attr("href", "https://www.seedr.cc/files");
204-
break;
205-
case 2:
206-
offNode.css("background-color","#3BEBFF").attr("title",i18n.furk ).attr("href", "https://www.furk.net/users/files/add");
207-
break;
208-
case 3:
209-
offNode.css("background-color","#5e5eff").attr("title",i18n.yyw ).attr("href", "http://115.com/?tab=offline&mode=wangpan");
210-
break;
211-
}*/
212-
if(siteConfig.hide || GM_getValue("eoHide"+siteConfig.name))continue;
213-
offNodes.push(offNode);
214-
parentDiv.prepend(offNode);
215-
}
216-
parentDiv.mouseover(function(e){
217-
e.stopPropagation();
218-
});
219-
document.addEventListener("mouseover", function(e){
220-
hideIcons();
221-
});
222234

223235
if(rawnodes.length > 0){
224236
for (i = 0; i < rawnodes.length; i++) {
@@ -256,14 +268,9 @@
256268
listLen = nodes.length;
257269
setCss();
258270
if (listLen !== 0) {
259-
var preNode;
260-
if(showType){
261-
document.addEventListener("click", function(){
262-
if(preNode)preNode.hide(300);
263-
});
264-
}
265271
for (i = 0; i < listLen; i++) {
266272
curNode = nodes[i];
273+
if(curNode.classList.contains("whx-a"))continue;
267274
let clone=$("<a></a>").attr("style",curNode.getAttribute("style")).attr("href",curNode.getAttribute("href")).addClass('whx-a').css("background-color","#e1e1e1").css("background-image",'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAMAAADzN3VRAAAARVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADc6ur3AAAAFnRSTlMAYM5vMOA/ENGegK2olI6G1b97Z0sXENA+jAAAAKFJREFUKM+FklkSxCAIRHFfss3K/Y86iQSDVqzpH7FfgQpCVfAmGx+gl9JI0qrxrcNLzooEbKUG4EKWdkCiDRV0N0RTrZ5wvdgTTgp4SzCAHxAPZkAM5GOJWuuT7FE5OVPOBFLTYb3Oc2YB5uJ8+G6pgkTGt74ntcCJHiwFLHw10Tdc93jlGXGvSRtsHNpuPs+/o1ODfxAtSL0f7HPC+L/9AF60G3QxO1UaAAAAAElFTkSuQmCC")');
268275
clone.mouseover(function(e){
269276
offUrl=clone.attr("href");
@@ -338,7 +345,14 @@
338345

339346
var i=0;
340347
var curlink=GM_getValue('eoUrl');
341-
var isDisk=/furk\.net|seedr\.cc|pan\.baidu\.com\/disk|115\.com|pcloud\.com/.test(location.href);
348+
var isDisk=false;
349+
for(x = 0; x < Object.keys(sites).length; x++){
350+
let siteConfig=sites[x];
351+
if(siteConfig.regex.test(location.href)){
352+
isDisk=true;
353+
break;
354+
}
355+
}
342356
if(isDisk){
343357
if(curlink){
344358
diskFun();
@@ -349,12 +363,18 @@
349363
}else if(location.href.indexOf("github.com/hoothin/UserScripts/tree/master/Easy%20offline") != -1){
350364
setting();
351365
}else{
352-
var t=window.setInterval(function() {
353-
if(i > 2 || ((i++) === 0 && $(enableUrl).length > 0)){
354-
window.clearInterval(t);
355-
getAllEnableUrl();
356-
}
357-
}, 500);
366+
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;
367+
var observer = new MutationObserver(function(records){
368+
records.map(function(record) {
369+
if(record.addedNodes)setTimeout(function(){getAllEnableUrl(record.addedNodes);},501);
370+
});
371+
});
372+
var option = {
373+
'childList': true,
374+
'subtree': true
375+
};
376+
observer.observe(document.body, option);
377+
getAllEnableUrl();
358378
}
359379

360380
function setting(){
@@ -375,7 +395,7 @@
375395
<div style="width:300px;height:300px;position:fixed;left:50%;top:50%;margin-top:-150px;margin-left:-150px;z-index:100000;background-color:#ffffff;border:1px solid #afb3b6;border-radius:10px;opacity:0.95;filter:alpha(opacity=95);box-shadow:5px 5px 20px 0px #000;">
376396
<div style="text-align:center;font-size: 12px;margin-top: 28px;">自定义需要启用一键下载的链接正则,一行一条</div>
377397
<textarea id="configInput" placeholder="例:http:.*\\.php\\?getRes=\\d+" style="position:absolute;left:20px;top:50px;width:260px;height:150px"></textarea>
378-
<div id="icons" style="position:absolute;left:1px;top:202px"></div>
398+
<div id="icons" style="position:absolute;left:3px;top:202px"></div>
379399
<label style="position:absolute;left:60px;top:230px;"><input id="showType" type="checkbox"/>仅当鼠标经过时显示图标</label>
380400
<button id="configSave" class="whx-btn" type="button" style="position:absolute;left:110px;top:260px;width:80px;height:30px;color:white;border-radius:5px;border:0px;outline:none;">设置</button>
381401
<div id="configQuit" class="whx-btn" style="width:28px;height:28px;border-radius:14px;position:absolute;right:2px;top:2px;cursor:pointer;">
@@ -390,7 +410,7 @@
390410
var icons=$("#icons");
391411
for(var x = 0; x < Object.keys(sites).length; x++){
392412
let siteConfig=sites[x];
393-
let icon=$("<div style='height:25px;width:25px;float:left;border-radius:50%;background-position:center;background-repeat:no-repeat;background-size:20px;margin-left:15px;cursor:pointer'></div>");
413+
let icon=$("<div style='height:25px;width:25px;float:left;border-radius:50%;background-position:center;background-repeat:no-repeat;background-size:20px;margin-left:10px;cursor:pointer'></div>");
394414
icon.css("background-color","#"+siteConfig.bgColor).attr("title",i18n.disable+i18n[siteConfig.name] );
395415
if(GM_getValue("eoHide"+siteConfig.name)){
396416
icon.css("opacity","0.2");
@@ -494,6 +514,24 @@
494514
remotearea.nextSibling.click();
495515
}
496516
}, 500);
517+
}else if(location.href.indexOf("www.weiyun.com/disk/index.html") != -1){
518+
var offBtn=document.querySelector('li[data-action=offline_download]');
519+
setTimeout(function(){
520+
offBtn.click();
521+
var wsc = setInterval(function() {
522+
var tab=document.querySelector('li.link[data-id=offline_tab]');
523+
if(tab){
524+
clearInterval(wsc);
525+
tab.click();
526+
var textarea=document.querySelector('textarea.copyurl');
527+
textarea.innerHTML=curlink;
528+
var event = document.createEvent('HTMLEvents');
529+
event.initEvent("change", false, true);
530+
textarea.dispatchEvent(event);
531+
document.querySelector('div[data-btn-id=OK]').click();
532+
}
533+
},200);
534+
},1000);
497535
}
498536
}
499537

0 commit comments

Comments
 (0)