/*-------------------------------------------------------------------------*/
// eMule Mod JS function
/*-------------------------------------------------------------------------*/

function flashChecker()
{
	var hasFlash=0;         //是否安装了flash
	var flashVersion=0; //flash版本
	var isIE=document.all ? 1 : 0;      //是否IE浏览器
	
	if(isIE)
	{
		var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); 
		if(swf) {
			hasFlash=1;
			VSwf=swf.GetVariable("$version");
			flashVersion=parseInt(VSwf.split(" ")[1].split(",")[0]); 
		}
	}else{
		if (navigator.plugins && navigator.plugins.length > 0)
		{
			var swf=navigator.plugins["Shockwave Flash"];
			if (swf)
			 {
				hasFlash=1;
				var words = swf.description.split(" ");
				for (var i = 0; i < words.length; ++i)
				{
					if (isNaN(parseInt(words[i]))) continue;
					flashVersion = parseInt(words[i]);
				}
			}
		}
	}
	return {f:hasFlash,v:flashVersion};
}//-- end of function `flashChecker`

function checkAll(str,checked)
{
	var a = document.getElementsByName(str);
	var n = a.length;

	for (var i=0; i<n; i++)
		a[i].checked = checked;
	em_size(str);
}

function download(str, i, first) {
	var a = document.getElementsByName(str);
	var n = a.length;

	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;
		}
	}

}

function copy(str) {
    var a = document.getElementsByName(str);
    var n = a.length;
    var ed2kcopy = "";
    for (var i = 0; i < n; i++) {
        if(a[i].checked) {
            ed2kcopy += a[i].value;
            ed2kcopy += "\n";
        }
    }
    copyToClipboard(ed2kcopy);
}

function em_size(str) {
	var a = document.getElementsByName(str);
	var n = a.length;
	try {
		var input_checkall = document.getElementById("checkall_"+str);
		var size = 0;
		input_checkall.checked = true ;
		for (var i=0; i<n; i++)	{
			if (a[i].checked) {
				var piecesArray = a[i].value.split( "|" );
				size += piecesArray[3]*1;
			} else {
				input_checkall.checked = false;
			}
		}
		test = document.getElementById("size_"+str);
		test.innerHTML = gen_size(size);
	} catch (e) {
		
	}
}

function gen_size(val) {
	sep = 100;		
	unit	= 'Bytes';
	if (val >= 1099511627776) {
		val = Math.round( val / (1099511627776/sep) ) / sep;
		unit  = 'TB';
	} else if (val >= 1073741824) {
		val = Math.round( val / (1073741824/sep) ) / sep;
		unit  = 'GB';
	} else if (val >= 1048576) {
		val = Math.round( val / (1048576/sep) ) / sep;
		unit  = 'MB';
	} else if (val >= 1024) {
		val = Math.round( val / (1024/sep) ) / sep;
		unit  = 'KB';
	}
	return val+unit;
}


function fill_emule_copy(id) {
	var	fls=flashChecker();
	var	div	=	'updateflashem'+id	;
	if(fls.f && fls.v == "10"){
		html	= "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0' width='136' height='20' id='ed2kcopy_em"+id+"' align='middle' class='copyflash' onload=\"em_size('em"+id+"');\" class='copyedflash'><param name='allowScriptAccess' value='always' /><param name='allowFullScreen' value='false' /><param name='movie' value='"+ipb_var_image_url+"/cp2flash.swf?10' /><param name='quality' value='high' /><param name='bgcolor' value='#ffffff' /><param name='wmode' value='transparent' /><param name='FlashVars' value='flashID=em"+id+"'></param><embed src='"+ipb_var_image_url+"/cp2flash.swf?10' wmode='transparent' quality='high' bgcolor='#ffffff' width='136' height='20' name='ed2kcopy_em"+id+"' align='middle' allowScriptAccess='always' allowFullScreen='false' flashVars='flashID=em"+id+"' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></object>";
	}else {
		html	=	"<input type=\"button\" value=\"该功能需升级Flash\" class=\"ed_button ed_downall\" onclick=\"window.open('http://get.adobe.com/flashplayer/')\" />"	 ;
	}
	$('#'+div).html(html);
}//-- end of function `fill_emule_copy`


function copyToClipboard(txt) {
	if(window.clipboardData) {
   		window.clipboardData.clearData();
   		window.clipboardData.setData("Text", txt);
	} else if(navigator.userAgent.indexOf("Opera") != -1) {
		window.location = txt;
	} else if (window.netscape) {
		try {
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
		} catch (e) {
			alert("被浏览器拒绝！\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
		}
		var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
		if (!clip)
			return;
		var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
		if (!trans)
			return;
		trans.addDataFlavor('text/unicode');
		var str = new Object();
		var len = new Object();
		var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
		var copytext = txt;
		str.data = copytext;
		trans.setTransferData("text/unicode",str,copytext.length*2);
		var clipid = Components.interfaces.nsIClipboard;
		if (!clip)
			return false;
		clip.setData(trans,null,clipid.kGlobalClipboard);
	}
}


