﻿//**************************thunder.js**************************
var Thunder = {
	getInstance: function(){
		//优先使用web迅雷,web迅雷未安装则使用迅雷5,迅雷5也未安装或初始化出错抛出异常
		var opt = [Thunder.WebThunder, Thunder.Thunder5];
		//var opt = [Thunder.Thunder5, Thunder.WebThunder];
		for (var i=0; i<opt.length; i++){
			try{
				return opt[i].getInstance();
			}catch(e){
				continue;
			}
		}
		throw "迅雷初始化失败";
	},
	
	setParameter: function(cid, url, refer, stat){
		var inputs = ["thunder_cid", "thunder_down_url", "thunder_down_pageurl", "thunder_stat_pageurl"];
		for (var i=0; i<inputs.length; i++){
			var input = $(inputs[i]);		
			if (isUndef(input) || isNull(input)){
				input = document.createElement("input");
				input.type = "hidden";
				input.id = inputs[i];
				document.body.appendChild(input);
			}
			input.value = arguments[i];
		}
	},
	
	download: function(cid, url, refer, name, stat){
		this.getInstance().download(cid, url, refer, name, stat);
	},
	
	batchDownload: function(data, stat){
		this.getInstance().batchDownload(data, stat);
	}
}
var Class={create:function(){return function(){this.initialize.apply(this,arguments);};}}
Thunder.WebThunder = Class.create();
Thunder.WebThunder.getInstance = function(){
//	if (isUndef(this._thunder))
//		this._thunder = new Thunder.WebThunder();
//	return this._thunder;
	return new Thunder.WebThunder();
}
Thunder.WebThunder.prototype = {	
	initialize: function(){
		this.__thunder = new ActiveXObject("ThunderServer.webThunder.1");
	},
	
	getVersion: function(){
		return parseInt(this.__thunder.GetVersion().split(".")[3]);
	},
	
	download: function(cid, url, refer, name, stat){
		var param = "";	
		var version = this.getVersion();

		if (version < 43)
			param = "http://my.xunlei.com/add_task.htm";
		else{
			var serverPath = this.__thunder.GetServerPath();
	   	 	serverPath = serverPath.substr(0, serverPath.length-1);
			param = serverPath + "Page/add_task.htm";
		}

		if (version < 24){
			param += "?PUB_XUNLEI{&*&}" + url.revert() + "{&*&}" + name; 
			this.__thunder.SetBrowserWindowData(param, "新的下载");
		}
		else
		{
			var data = [url.revert(), name, refer.revert(), "", "", cid, "0", stat, ""].join("{\r*\r}");
			this.__thunder.SetVariable("NewTaskData", data);
			this.__thunder.SetBrowserWindowData(param, "新的下载");
		}
		return 0;
	},
	
	batchDownload: function(data, stat){
		var batchTask = this.__thunder.BeginBatchTask();
		if(batchTask == 0){
			alert("批量下载初始化失败");
			return;
		}
		
		var version = this.getVersion();
		for(var i=0; i<data.length; i++){
			if (version < 43)
				this.__thunder.AddTaskToBatch(batchTask, data[i].url, data[i].name, data[i].refer);
			else if (version < 54)
				this.__thunder.AddTaskToBatch(batchTask, data[i].url, data[i].name, data[i].refer, data[i].cid);	
			else
				this.__thunder.AddTaskToBatch(batchTask, data[i].url, data[i].name, data[i].refer, data[i].cid, stat);	
		}
		this.__thunder.EndBatchTask(batchTask);	
	}
}
var Delegate=
{ 
  create:function(_8,_9)
 {
    var f=function()
     {
         var _b=arguments.callee.target;
         var _c=arguments.callee.func;
         return _c.apply(_b,arguments);
     };
     f.target=_8;
     f.func=_9;
     return f;
  }
};
Thunder.Thunder5 = Class.create();
Thunder.Thunder5.getInstance = function(){
	if (isUndef(this._thunder))
		this._thunder = new Thunder.Thunder5();
	return this._thunder;
}
Thunder.Thunder5.prototype = {
	initialize: function(){
		this.__thunder = new ActiveXObject("ThunderAgent.Agent.1");
	},
	
	download: function(cid, url, refer, name, stat){
		try{
			this.addTask(cid, url, refer, name, stat);
			this.commitTasks();
		}catch(e){
			alert(e.message);
		}
	},
	
	batchDownload: function(data, stat){
		try{
			for(i=0; i<data.length; i++)
				this.addTask(data[i].cid, data[i].url, data[i].refer, data[i].name, stat);
			this.commitTasks();
		}catch(e){
			alert(e.message);
		}
//		delete this.__thunder;
	},
	
	addTask: function(cid, url, refer, name, stat){
		var _addTask = [
			Delegate.create(this, function(){this.__thunder.AddTask4(url, name, "", name, refer, -1, 0, -1, "", cid, stat);}),
			Delegate.create(this, function(){this.__thunder.AddTask3(url, name, "", name, refer, -1, 0, -1, "", cid);}),
			Delegate.create(this, function(){this.__thunder.AddTask2(url, name, "", name, refer, -1, 0, -1, "");}),
			Delegate.create(this, function(){this.__thunder.AddTask(url, name, "", name, refer, -1, 0, -1);})
		];
		for (var i=0; i<_addTask.length; i++){
			try{
				_addTask[i]();
				return;
			}catch(e){	
			}
		}
		throw "不支持此方法，请安装最新的迅雷客户端";
	},
	
	commitTasks: function(){
		var _commitTasks = [
			Delegate.create(this, function(){this.__thunder.CommitTasks2(1);}),
			Delegate.create(this, function(){this.__thunder.CommitTasks();})
		];
		for (var i=0; i<_commitTasks.length; i++){
			try{
				_commitTasks[i]();
				return;
			}catch(e){
			}
		}
		throw "不支持此方法，请安装最新的迅雷客户端";
	}
}
//**************************verycd.js**************************
function download(str, i, first) {
    var a = document.getElementsByName(str);
    var n = a.length;
 
	//尝试使用activex方式批量新增下载
	try {
		var ed2k_links = '';
		var ax = new ActiveXObject("IE2EM.IE2EMUrlTaker");
		var emule_version = ax.GetEmuleVersion();
		
		if ('e' != emule_version.substr(0,1)) {
			throw {errorCode:'eMule not Installed.'};
		}
		for (var i = i; i < n; i++) {
			if(a[i].checked) 
			{
				if (ed2k_links=='') 
				{
					ed2k_links = a[i].value;
				} else 
				{
					ed2k_links += "\n"+a[i].value;
				}
			}
		}
		ax.SendUrl(ed2k_links, 'dd', document.location);
		delete ax;
		return;
	} catch (e) {
		if(confirm("请先安装电驴，点击确定进入电驴下载页面。\n或者，点击取消使用http直接下载。"))
		 {
			window.open("http://www.easymule.com/zh-cn/"); 
		 }
		return false;
		}
 	
	if (!window.continueDown) {
		//使用最旧的方法来批量新增下载
		for (var i = i; i < n; i++) {
			if(a[i].checked) {
				window.location=a[i].value;
				if (first)
					timeout = 6000;
				else
					timeout = 500;
				i++;
				window.setTimeout("download('"+str+"', "+i+", 0)", timeout);
				break;
			}
		}
	} else {
		//使用稍微新一点的方法来批量新增下载
		for (var i = i; i < n; i++) {
			if(a[i].checked) {
				if(first){
					var k = i;
					var current_link = a[k].nextSibling;
					var multi_text = '';
					var tmp_counter = 0;
					var comma = '';
					while(true){
						if(a[k].checked && current_link){//如果是有效节点并且被选中
							if(current_link.href){
								if(current_link.href.indexOf('ed2k') !== 0){
									current_link = current_link.nextSibling;
									continue;
								}
								if(tmp_counter > 7){//收集超过若干个有效链接后，退出
									multi_text += '<br />…………';
									break;
								}
								var right_link = current_link;
								tmp_counter++;
								if (navigator.userAgent.toLowerCase().indexOf("msie")==-1) {
									multi_text += comma+current_link.text;
								}else{
									multi_text += comma+current_link.innerText;
								}
								comma = '<br />';
							}
 
							current_link = current_link.nextSibling;
						}else{//未被选中，或往下没有相邻节点了，那么切换到下个父节点
							if(++k >= n){//如果父节点也到底了，那么退出
								break;
							}
							current_link = a[k].nextSibling;
						}
					}
					downPopup(right_link,multi_text);
				}
 
				continueDown(a[i].value);
				//window.location=a[i].value;
				if (first)
					timeout = 6000;
				else
					timeout = 500;
				i++;
				window.setTimeout("download('"+str+"', "+i+", 0)", timeout);
				break;
			}
		}
	}
 
}
//**************************xunlei.js**************************
var gid=1;
String.prototype.Length = function(){var orString = new String(this);  var len = 0; if (orString=="") {return len;}for(var vii=0;vii<orString.length;vii++){len++; } return len;}
var cidArr =["1","2","3"];
var titArr =["MW2_Setup_0.111.105.18","data105","data105"];
var urlArr =["http://dlc2.sdo.com/FTP/mwo2/20111027/1/MW2_Setup_0.111.105.18.exe","http://dlc2.sdo.com/FTP/mwo2/20111027/1/data105.z01","http://dlc2.sdo.com/FTP/mwo2/20111027/1/data105.zip","http://down.sandai.net/Thunder5.9.28.1564.exe","http://xlissue110.sandai.net/QQ2010@1.55.1861.0.exe?fid=hNScAXF+QwhQWIhfNFxJIkA/fVx4xTYCAAAAAB0GSlIU8L/n4I8vhvNsIqyHYDcp&mid=666&threshold=150&tid=6F93B00B6D6C3CA4210936F00192A36F&srcid=0"];

//var download_List = [
//	{"cid":"1","tit":"test1","url":"thunder://QUFodHRwOi8vZGxjMi5zZG8uY29tL0ZUUC9td28yLzIwMTAxMTEyLzEvTVcyXzAuNzIuMzUuMThfT0JfMjAxMC4xMS4yNi5yYXJaWg=="},
//	{"cid":"2","tit":"test2","url":"http://xiazai.kugou.com/Corp/kugou_1101.exe","http://xlissue110.sandai.net/傲游浏览器2_2.5.15.1000.exe?fid=gOESU+2bWOE2hdYE8i4sGSLFUXzAjVsAAAAAABrs9SvLhR9iDfpq82yTRQ9U91CH&mid=666&threshold=150&tid=50F2233A73D6603597B9694C992587AF&srcid=0"},
//	{"cid":"3","tit":"test3","url":"http://xlissue110.sandai.net/QQ2010@1.55.1861.0.exe?fid=hNScAXF+QwhQWIhfNFxJIkA/fVx4xTYCAAAAAB0GSlIU8L/n4I8vhvNsIqyHYDcp&mid=666&threshold=150&tid=6F93B00B6D6C3CA4210936F00192A36F&srcid=0"}
//]

var thunder_instance = null;
function initThunder()
{

  try
  {
     thunder_instance = new Thunder.Thunder5();
	 
  }
  catch(e)
  {
     thunder_instance = null;
	 try
	 {
	    thunder_instance = new Thunder.WebThunder();
	 }
	 catch(e)
	 {
	   thunder_instance = null;
	 }
  }
  
}

function batch_down()
{
   if(isFF == true)
   {
       alert("抱歉，您的浏览器不支持批量下载功能，请更换别的浏览器(如IE)再试");
	   return;
   }
   
   if(thunder_instance == null)
   {
	 if(confirm("请先安装迅雷，点击确定进入迅雷下载页面。\n或者，点击取消使用http直接下载。"))
     {
		window.open("http://dl.xunlei.com/xl7.html"); 
	 }
	 return;
   }
      
   var num=0,j=0;
   var selected = [];
   while(num<cidArr.length)
   {
      var k = num+1;
      var id ="fx_" + k;
   
      var idArr = document.getElementById(id);
	  
	  if( idArr.checked == true)
	   {
	         var index =0;
			 var url = urlArr[num];
			 index = urlArr[num].lastIndexOf("?");
			 if(index>-1)
			 {
			     url = url.substr(0,index);
			 }
			 
			 index = url.lastIndexOf(".");
			 var name1;
			 if(index>-1)
			 {
			     var sFmt =url.substr(index+1);
			     name1 = titArr[num]+"."+sFmt;
			 }
			 else
			 {
			      name1 = titArr[num];
			 }
			 
			 selected.push({cid:cidArr[num], url:urlArr[num], refer:"http://soft.gougou.com/", name:name1});
			 ++j;
	   }
      ++num;
   }
   if(j>0)
   {
      if(j==1)
	  { 
	     thunder_instance.download(selected[0].cid,selected[0].url,selected[0].refer,selected[0].name,"http://pingjiap4p.xunlei.com/gougou/onebox");
	  }
	  else
	  {
	     thunder_instance.batchDownload(selected,"http://pingjiap4p.xunlei.com/gougou/onebox");
	  }
   }
   else
   {
     alert("请选择下载的软件");
   }
}

initThunder();
var isFF=(navigator.userAgent.toLowerCase().indexOf("firefox")!=-1);
function selectAll(id)
{
   var idArr = document.getElementsByName(id);
   var chkAll=document.getElementById("chkAll");
   
   for(var i=0;i<idArr.length;i++)
   {


           if(chkAll.checked==false)
         {
           idArr[i].checked = false;

         }
         else if(chkAll.checked==true)
         {
           idArr[i].checked = true;
         }
   
   }
}
//**************************qq.js**************************
function qq_down(){
var titArr =["MW2_Setup_0.111.105.18","data105","data105"];
var urlArr =["http://dlc2.sdo.com/FTP/mwo2/20111027/1/MW2_Setup_0.111.105.18.exe","http://dlc2.sdo.com/FTP/mwo2/20111027/1/data105.z01","http://dlc2.sdo.com/FTP/mwo2/20111027/1/data105.zip"];	
	var num=0,j=0;
   	var selected = new Array();
   	while(num<titArr.length)
   	{
      var k = num+1;
      var id ="fx_" + k;
      var idArr = document.getElementById(id);
	  if( idArr.checked == true)
	   {
	       selected[j]= urlArr[num];
		   selected[j+1] = titArr[num];
		   selected[j+2] = window.location.href;
	   }
	   ++num;
	   j = j + 3;
	}
	if(selected.length==0){
		alert("请选择您要下载的文件");
		return false;	
	}
	BatchTask(j+1,selected);
}
//**************************xflib_xw01ac09.js**************************
var Msg1="对不起，此链接需要安装超级旋风1.7Beta2以上版本才能正常下载，请您安装后重试。";
var Msg2="对不起，本页面暂时只支持IE或使用IE内核和FireFox等相关浏览器。";
var Msg3="被Firefox浏览器拒绝\n请按照下面步骤解决该问题\n1 在FireFox浏览器地址栏输入about:config并回车\n然后将signed.applets.codebase_principal_support设置为true后再刷新页面\n2 如果按照1所列举步骤不能解决问题\n则还需要使用文本编辑器打开文件夹<系统盘符:\Documents and Settings\用户名\Application Data\Mozilla\Firefox\Profiles\***.default>下面的文件prefs.js\n查找字符串UniversalXPConnect，将相应文本行中的denied修改为granted";
var Msg4="请确认是否安装超级旋风1.7Beta2以上版本，如果安装请确认是否在安装的过程中选择对firefox的支持,或者在工具菜单中选择浏览器支持";
var Msg5="对不起，该链接需要1.8.188.201以上版本才能下载，请升级版本后使用";
var Msg6="请先安装QQ旋风，点击确定进入旋风下载页面。\n或者，点击取消使用http直接下载。";
var MainURI="http://dl_dir.qq.com/invc/xfupdate/qqdlsetup.exe";
var TTURI="http://im.qq.com/tt/";

var ERR_OK=0;
var ERR_VERSION_TOO_LOWLY=1;
var ERR_NOT_SUPPORT_EXPLORER=2;
var ERR_NOT_ENOUGH_PRIVILEGE=3;
var ERR_NOT_INSTALL_QQDOWNLOAD=4;
var ERR_FORBID_QQDOWNLOAD=5;
var ERR_NOT_SUPPORT_PROTOCOL=6;
var ERR_ED2K_NO_QQDOWNLOAD=7;

var g_comFFDownload=null;
var g_QQDownloadREG=null;
var g_comIEQQDownload=null;

var NT_IE=0;
var NT_FIREFOX=1;
var NT_OPERA=2;
var NT_NETSCAPE=3;
var NT_SAFARI=4;
var NT_UNKNOWN=0XFFFF;

var g_lastMiniSecond=0;
var g_lastUrl="";

function IEValidateCheck(uri){
return true;
}
function IE_GetFileName(linkObj)
{
if("undefined"!=typeof(linkObj.filename))
{
return linkObj.filename;
}
else if("undefined"!=typeof(linkObj.FILENAME))
{
return linkObj.FILENAME;
}
else if("undefined"!=typeof(linkObj.FileName))
{
return linkObj.FileName;
}
else if("undefined"!=typeof(linkObj.fileName))
{
return linkObj.fileName;
}
else if("undefined"!=typeof(linkObj.Filename))
{
return linkObj.Filename;
}
else
{
return"";
}
}

function FF_GetFileName(linkObj)
{
if(""!=linkObj.getAttribute("filename"))
{
return linkObj.getAttribute("filename");
}
else if(""!=linkObj.getAttribute("FILENAME"))
{
return linkObj.getAttribute("FILENAME");
}
else if(""!=linkObj.getAttribute("FileName"))
{
return linkObj.getAttribute("FileName");
}
else if(""!=linkObj.getAttribute("fileName"))
{
return linkObj.getAttribute("fileName");
}
else if(""!=linkObj.getAttribute("Filename"))
{
return linkObj.getAttribute("Filename");
}
else
{
return"";
}
}

function GetNavigatorType(){
if((navigator.appName.indexOf("Internet Explorer")!=-1)&&(navigator.userAgent.indexOf("Opera")==-1)){
return NT_IE;
}
else
if(navigator.appName.indexOf("Netscape")!=-1){
if(navigator.userAgent.indexOf("Navigator")!=-1){
return NT_NETSCAPE;
}
else
if(navigator.userAgent.indexOf("Firefox")!=-1){
return NT_FIREFOX;
}
else
if(navigator.userAgent.indexOf("Safari")!=-1){
return NT_SAFARI;
}
}
else
if((navigator.appName.indexOf("Opera")!=-1)||(navigator.userAgent.indexOf("Opera")!=-1)){
return NT_OPERA;
}
return NT_UNKNOWN;
}

function BuildUri(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename,isU2A){
var loc="";
if(uri.indexOf("qqdl://")!=-1){
loc=uri+"\x01\x01";
}
else{
loc=SchemeEncode(uri,isU2A);
}
loc+="\x01\x01"+ref+
"\x01\x01"+
remark+
"\x01\x01"+
cookie+
"\x01\x01"+
rate.toString(10)+
"\x01\x01"+
sid.toString(10)+
"\x01\x01"+
filesize+
"\x01\x01"+
filehash+
"\x01\x01"+
filename;
return loc;
}

function CreateIEObject(){
if(g_comIEQQDownload===null){
try{
g_comIEQQDownload=new ActiveXObject("QQIEHelper.QQRightClick.2");
return(g_comIEQQDownload===null)?false:true;
}
catch(e){
return false;
}
}
return true;
}

function CreateQQDownloadREG(){
if(g_QQDownloadREG){
return true;
}
if("@mozilla.org/windows-registry-key;1"in Components.classes){
g_QQDownloadREG=Components.classes["@mozilla.org/windows-registry-key;1"].createInstance(Components.interfaces.nsIWindowsRegKey);
}
return(g_QQDownloadREG===null)?false:true;
}

function GetQQDownloadREG(strPath,strName){
if(!CreateQQDownloadREG()){
return false;
}
g_QQDownloadREG.open(Components.interfaces.nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE,strPath,Components.interfaces.nsIWindowsRegKey.ACCESS_READ);
return g_QQDownloadREG.readStringValue(strName);
}

function FindQQDownload(){
var path="";
path=GetQQDownloadREG("SOFTWARE\\Tencent\\QQDownload","Exe");
var file=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(path);
try{
file.isFile();
return true;
}
catch(exception){
return false;
}
return true;
}

function CreateFFObject(){
if(g_comFFDownload===null){
try{
if(!FindQQDownload()){
return false;
}
g_comFFDownload=Components.classes["@qq.com/QQDownloadFFH;1"].createInstance();
g_comFFDownload=g_comFFDownload.QueryInterface(Components.interfaces.IQQDownloadFFH);
return(g_comFFDownload===null)?false:true;
}
catch(e){
return false;
}
}
return true;
}

function OnIEDownloadClick(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename){
if(CreateIEObject()){
var ver=g_comIEQQDownload.GetVersion();
ver=ver.split(".");
if(uri.indexOf("ed2k://")!=-1&&parseInt(ver[3],10)<188){
return ERR_NOT_SUPPORT_PROTOCOL;
}

if(parseInt(ver[3],10)>=248){
g_comIEQQDownload.SendUrl4(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename);
return ERR_OK;
}
else
if(parseInt(ver[3],10)>=157){
g_comIEQQDownload.SendUrl3(uri,ref,remark,cookie,rate,sid,filesize,filehash);
return ERR_OK;
}
else
if(parseInt(ver[3],10)>=127){
g_comIEQQDownload.SendUrl2(uri,ref,remark,cookie,rate,sid);
return ERR_OK;
}
else
if(parseInt(ver[3],10)>65){
g_comIEQQDownload.SendUrl(uri,ref,remark,cookie);
return ERR_OK;
}
else{
return ERR_VERSION_TOO_LOWLY;
}
}
else{
if(uri.indexOf("ed2k://")!=-1){
return ERR_ED2K_NO_QQDOWNLOAD;
}
else
if(navigator.appVersion.indexOf("QQDownload")!=-1){
return ERR_FORBID_QQDOWNLOAD;
}
else{
return ERR_NOT_INSTALL_QQDOWNLOAD;
}
}
}

function OnFFDownloadClick(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename){
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}
catch(e){
if(navigator.appVersion.indexOf("QQDownload")!=-1){
return ERR_FORBID_QQDOWNLOAD;
}
else{
return ERR_NOT_ENOUGH_PRIVILEGE;
}
}
if(CreateFFObject()){
try{
g_comFFDownload.SendSingleTask4(uri,ref,remark,cookie,1,rate,sid,filesize,filehash,filename);
}
catch(e){
try{
g_comFFDownload.SendSingleTask3(uri,ref,remark,cookie,1,rate,sid,filesize,filehash);
}
catch(e){
try{
g_comFFDownload.SendSingleTask2(uri,ref,remark,cookie,1,rate,sid);
}
catch(e){
if(g_comFFDownload.SendSingleTask(uri,ref,remark,cookie,1)!==0){
}
}
}
}
return ERR_OK;
}
else{
if(navigator.appVersion.indexOf("QQDownload")!=-1){
return ERR_FORBID_QQDOWNLOAD;
}
else{
return ERR_NOT_INSTALL_QQDOWNLOAD;
}
}
}

function OnIEContextClick(linkObj){
linkObj.href=linkObj.QHref;
}

function OnFFContextClick(event){
var element=event.target;
element.setAttribute("href",element.getAttribute("QHref"));
}

function isUrl(url){
if(url&&typeof(url)=="string"&&url.constructor==String){
return true;
}
return false;
}




















function OnDownloadClick(linkObj,event,uri,ref,remark,cookie,rate,sid,
filesize,filehash,filename,defopen,isU2A,redirectUrl){
var ret=ERR_OK;
switch(GetNavigatorType()){
case NT_IE:
if(false==IEValidateCheck(uri)){
return true;
}
if(linkObj){
linkObj.href="###";
}
ret=OnIEDownloadClick(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename);
break;
case NT_FIREFOX:
if(event){
var element=event.target;
element.setAttribute("href","###");
}
ret=OnFFDownloadClick(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename);

break;

default:

ret=ERR_NOT_SUPPORT_EXPLORER;

break;
}
if(ret==ERR_FORBID_QQDOWNLOAD){
window.location.href=BuildUri(uri,ref,remark,cookie,rate,sid,filesize,filehash,filename,isU2A);
}
else
if(ret!=ERR_OK&&defopen){
window.location.href=uri;
}
else
if(ret==ERR_ED2K_NO_QQDOWNLOAD){
window.location.href=uri;
}
else
if(ret!=ERR_OK){
var msg=Msg1;
if(ret==ERR_NOT_SUPPORT_EXPLORER){
msg=Msg2;
}
else
if(ret==ERR_NOT_ENOUGH_PRIVILEGE){
msg=Msg3;
}
else
if(ret==ERR_NOT_SUPPORT_PROTOCOL){
msg=Msg5;
}
else{
switch(GetNavigatorType()){
case NT_IE:
msg=Msg1;
break;
case NT_FIREFOX:
msg=Msg4;
break;
default:
break;
}
}
if(isUrl(redirectUrl)){
window.open(redirectUrl);
}else{
if(confirm(unescape(msg),2)){

window.location=MainURI;
}
}
}

return(ret==ERR_OK)?true:false;
}

function OnContextClick(linkObj,event){
switch(GetNavigatorType()){
case NT_IE:

OnIEContextClick(linkObj);

break;
case NT_FIREFOX:
case NT_OPERA:
case NT_NETSCAPE:

OnFFContextClick(event);

break;
default:
break;
}
}


function OnDownloadClick_xw(linkObj,event,ref,remark,filesize,filehash){

$.ajax({
type:'Get',
url:'/cgi-bin/send_log',
data:'id=4&type=0&ms=0&ss=0&mvid=0&sort=0&cp=1&hash='+filehash,
cache:false,
beforeSend:function(XMLHttpRequest)
{
},
success:function(xmlback)
{
var id=$("id",xmlback).text();
if(id!=""&&id!=null&&($.xw_cookie('ClientId')==""||$.xw_cookie('ClientId')==null)){
$.xw_cookie('ClientId',id);
}
}
});

var uri="";
var filename="";
var nType=GetNavigatorType();
switch(nType){
case NT_IE:

uri=linkObj.QHref;
filename=IE_GetFileName(linkObj);

break;
case NT_FIREFOX:
case NT_OPERA:
case NT_NETSCAPE:
case NT_SAFARI:

var element=event.target;
do{
uri=element.getAttribute("QHref");
filename=FF_GetFileName(element);
element=element.parentNode;
}
while(uri===null&&element!=this.ownerDocument)
;

break;
default:
break;
}
if(nType==NT_IE||nType==NT_FIREFOX){
return OnDownloadClick(linkObj,event,uri,ref,remark,"",0,10001,filesize,filehash,filename,false,true);
}
else{
window.location.href=uri;
return true;
}
}

function OnDownloadClick_minixw(linkObj,event,ref,remark,filesize,filehash){
try{
var uri="";
var filename="";
var nType=GetNavigatorType();
var sumId=0;
switch(nType){
case NT_IE:
uri=linkObj.QHref;
filename=IE_GetFileName(linkObj);
sumId=linkObj.value;
break;
case NT_FIREFOX:
case NT_OPERA:
case NT_NETSCAPE:
case NT_SAFARI:
var element=event.target;
do{
uri=element.getAttribute("QHref");
sumId=element.getAttribute("value");
filename=FF_GetFileName(element);
element=element.parentNode;
}
while(uri===null&&element!=this.ownerDocument)
;
break;
default:
break;
}
if(!sumId)
{
sumId=10200;
}
if(nType==NT_IE||nType==NT_FIREFOX){
return OnDownloadClick(linkObj,event,uri,ref,remark,"",0,sumId,filesize,filehash,filename,false,true);
}
else{
window.location.href=uri;
return true;
}
}catch(err){
return false;
}
}

function BatchTask(count,Array)
{
var nType=GetNavigatorType();
switch(nType)
{
case NT_IE:
{
if(CreateIEObject())
{
g_comIEQQDownload.AddCmnInfo(document.cookie);
for(var i=0;i<count;)
{
g_comIEQQDownload.AddTask(Array[i],Array[i+1],Array[i+2]);
i=i+3;
}

g_comIEQQDownload.SendMultiTask();
}
else
{
	if(confirm(Msg6))
    {
		window.open("http://xf.qq.com/"); 
	}
	return;
}
}
break;
case NT_FIREFOX:
{
try
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if(CreateFFObject())
{
for(var i=0;i<count;)
{
g_comFFDownload.AddTask(Array[i],Array[i+1],Array[i+2],"");
i=i+3;
}
g_comFFDownload.SendMultiTask();

}
else
{
	if(confirm(Msg6))
    {
		window.open("http://xf.qq.com/"); 
	}
	return;
}
}
catch(e)
{
alert(Msg3);
}
}
break;
default:
{
if(confirm(Msg2,2))
{
window.open(TTURI);
}
}
break;
}
}


function BatchTask_FileName(count,Array){
var nType=GetNavigatorType();
switch(nType){
case NT_IE:{
if(CreateIEObject()){
var ver=g_comIEQQDownload.GetVersion();
ver=ver.split(".");
var nVer=parseInt(ver[3],10);

g_comIEQQDownload.AddCmnInfo(document.cookie);

for(var i=0;i<count;){
if(nVer>=248){
g_comIEQQDownload.AddTask3(Array[i],Array[i+1],Array[i+2],0,Array[i+3]);
}
else{
g_comIEQQDownload.AddTask(Array[i],Array[i+1],Array[i+2]);
}
i=i+4;
}

g_comIEQQDownload.SendMultiTask();
}
else{
	if(confirm(Msg6))
    {
		window.open("http://xf.qq.com/"); 
	}
	return;
}
}
break;
case NT_FIREFOX:{
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if(CreateFFObject()){
for(var i=0;i<count;){
try{
g_comFFDownload.AddTask3(Array[i],Array[i+1],Array[i+2],"",0,Array[i+3]);
}
catch(e){
g_comFFDownload.AddTask(Array[i],Array[i+1],Array[i+2],"");
}
i=i+4;
}
g_comFFDownload.SendMultiTask();

}
else{
	if(confirm(Msg6))
    {
		window.open("http://xf.qq.com/"); 
	}
	return;
}
}
catch(e){
alert(unescape(Msg3));
}
}
break;
default:
{
if(confirm(unescape(Msg2),2)){
window.open(TTURI);
}
}
break;
}
}
