// ==UserScript==
// @name          Toodou Video Download
// @namespace     http://iescripts.org/
// @description   Adds a download link tudou.com
// @include       http://tudou.com/programs/view/*
// @include       http://www.tudou.com/programs/view/*
// ==/UserScript==
//

(function(){

function getValue(text, start, end)
{
	var p1 = text.indexOf(start);
	if(p1 == -1) return '';

	p1 += start.length;

	var p2 = text.indexOf(end, p1);
	if(p2 == -1) return '';

	return text.substring(p1, p2);
}


function addLink(elm)
{
	var vid = getValue(PRO_documentText(), 'iid=', "\r");
	var dataurl = 'http://www.tudou.com/player/cdn.php';

	xmlhttp = PRO_xmlhttpRequest();
	xmlhttp.open("POST", dataurl, true);
	xmlhttp.setRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; BysooTB; InfoPath.1)");
	xmlhttp.setRequestHeader("Accept", "*/*");
	xmlhttp.setRequestHeader("Referer", "http://www.tudou.com/static/t/leopard0.swf");
	xmlhttp.setRequestHeader("x-flash-version", "9,0,28,0");
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

	xmlhttp.onreadystatechange = function(){
		if(xmlhttp.readyState == 4){
			flvurl = getValue(xmlhttp.responseText, 'http://', '?');
			flvurl = 'http://' + flvurl;
			var dlink = document.createElement("div");
			dlink.style.border = '1px solid red';
			dlink.style.width = '100px';
			dlink.innerHTML = '<a href="' + flvurl + '">Download Video</a>';
			elm.parentNode.insertBefore(dlink, elm.nextSibling);
		}
	}
	xmlhttp.send('r=0&id=' + vid);
}
	
var elms = document.getElementsByTagName("div");
for(var i=0; i<elms.length; i++){
	if(elms[i].className == 'navigation'){
		addLink(elms[i]);
		break;
	}
}


})();
