/**
*
*	judgesoft.js
*	@desc 判断下载软件是否安装
*
*	@author tm.final<tm.final@gmail.com>
*	@version 1.0
*	@Last modified:2009-12-11 09:55
*/


/**
 * @desc 判断下载软件是否存在
 * @param void
 * @return bool
 */
function fJudgeDownSoft() {
	//下载软件列表
	var DOWNSOFT = {};
	DOWNSOFT.FlashGet = {'ie':'JetCar.Netscape','ff':''};
	DOWNSOFT.XunLei = {'ie':'ThunderAgent.Agent.1','ff':''};
	DOWNSOFT.NetTransport = {'ie':'NTIEHelper.NTIEAddUrl','ff':''};
	DOWNSOFT.NetAnts = {'ie':'NetAnts.API','ff':''};
	DOWNSOFT.DownloadExpress = {'ie':'Mdpph.API.1','ff':''};
	DOWNSOFT.ReGet = {'ie':'ClickCatcher.DownloadFromContextMenu','ff':''};
	DOWNSOFT.HiDownload = {'ie':'NetMoles.NetMoles','ff':''};
	DOWNSOFT.IntertnetDownloadAccelerator = {'ie':'idaie.moveurlida','ff':''};
	DOWNSOFT.MassDownloader = {'ie':'MassDown.AddUrl.1','ff':''};
	DOWNSOFT.StarDownloader = {'ie':'sdext.stardownext','ff':''};
	DOWNSOFT.DownloadMaster = {'ie':'dmie.moveurl','ff':''};
	DOWNSOFT.DLExpert = {'ie':'dlexpertapi','ff':''};
	DOWNSOFT.LeechGet = {'ie':'LeechGetIE.AddURL','ff':''};
	DOWNSOFT.DAP = {'ie':'dapie.catcher','ff':''};

	var flag = false;

	//判断浏览器类型
	if(fGetBrowser() == 1) browser = 'ie';
	else browser = 'ff';

	//循环判断
	for(softname in DOWNSOFT) {
		flag = fCreateObject(DOWNSOFT[softname][browser]);	
		if(flag) break;
	}
	return flag;
}

/**
 * @desc 获取浏览器类型
 * @param void
 * @return int
 */
function fGetBrowser() {
   if(navigator.userAgent.indexOf("MSIE")>0) return 1;
   if(isFirefox=navigator.userAgent.indexOf("Firefox")>0) return 2;
   if(isSafari=navigator.userAgent.indexOf("Safari")>0) return 3;  
   if(isCamino=navigator.userAgent.indexOf("Camino")>0) return 4;
   if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0) return 5;
   return 0;
}

/**
 * @desc 初始化控件
 * @param string 控件名称
 * @return bool
 */
function fCreateObject(p_name) {
	var flag = false;
	try{
		if(fGetBrowser() == 1) {
			obj = new ActiveXObject(p_name);	
			if(obj) flag = true;		
		} else {
			obj = navigator.plugins[p_name];
			if(obj) flag = true;
		}
	} catch(e) {
		flag = false;
	}
	return flag;
}

