// ==UserScript==
// @name verydou
// @name:zh-CN verydou
// @namespace http://www.liulanqi.org/Firefox/verydou
// @description show VeryCD content in Douban Movie Page
// @description:zh-cn 在豆瓣页面显示VeryCD内容
// @version 1.0
// @include http://*.douban.com/subject/*
// @include http://*.douban.com/subject_search?search_text=*
// @downloadURL none
// ==/UserScript==
//
function handleVeryXml(xo,vc,doc,kw) {
var topics=xo.getElementsByTagName('folder');
var l=topics.length;
if (l>0) {
var t;
var title;
var link;
var vc_ul=doc.createElement("ul");
vc_ul.className='bs';
for (var i=0;i<10;i++) {
if (i>=l) {
break;
}
t=topics.item(i);
title=t.getElementsByTagName('name').item(0).firstChild.nodeValue;
link=t.getElementsByTagName('link').item(0).firstChild.nodeValue;
vc_ul.innerHTML+='
'+title+'';
}
vc.removeChild(doc.getElementById('vcloading'));
vc.appendChild(vc_ul);
var vc_span=doc.createElement('span');
vc_span.className='pl rr';
vc.appendChild(vc_span);
vc_span.innerHTML='>更多'
} else {
doc.getElementById('vcloading').innerHTML='未找到相关资源,亲自寻找互联网'
}
}
function verydou() {
var doc = document;
//寻找位置
try {
var tags=document.getElementById("content").getElementsByTagName("div")
for (var i=0; i 0) {
//判断分类
try {
var nav=doc.getElementById('nav').firstChild;
while (nav=nav.nextSibling) {
if (nav.className=='now') {
var n_href=nav.getAttribute('href');
if (n_href=='/movie/') {
//find_cat='%E7%94%B5%E5%BD%B1';
} else if (n_href=='/music/') {
find_cat='%E9%9F%B3%E4%B9%90';
} else if (n_href='/book/') {
//find_cat='%E6%9D%82%E5%BF%97';
}
}
}
} catch (ex) {
//alert(ex)
}
kw=doc.title.substr(0,doc.title.indexOf(' '));
if (kw.length<=2 || /^[a-zA-Z0-9]+$/.test(kw)) {
kw=doc.title.substr(0,doc.title.length-5)
}
kw=encodeURIComponent(kw);
} else {
kw=doc.location.href.substr(doc.location.href.indexOf('search_text=')+12);//12是search_text=的长度
if (kw.indexOf('&')>0) {
if (kw.indexOf('&cat=1003')>0) {
find_cat='%E9%9F%B3%E4%B9%90';
}
kw=kw.substr(0,kw.indexOf('&'));
}
}
//构建url
url='http://www.verycd.com/search/folders?status=elite&rev=1&kw='+kw+'&format=xml';
if (find_cat) {
url+='&catalog='+find_cat;
}
//创建放置资源的容器
var vc = doc.createElement("div");
vc.className='indent';
vc.innerHTML='VeryCD资源 · · · · · ·
加载中...';
ri.insertBefore(vc,obss);
//获取VeryCD数据
GM_xmlhttpRequest({
method: 'GET',
url: url,
onload: function(r) {
if (r.status==200) {
handleVeryXml(new DOMParser().parseFromString(r.responseText,'text/xml'),vc,doc,kw);
}
}
});
}
verydou();