function doCertApply()
{ alert("");
  thisForm.action="Apply.jspa";
  thisForm.method="post";
  thisForm.submit();
}

function loginByCertPop(s){
	var tosign;
	var signafter;
	tosign=s;
	signafter=LogonSignByCert($("CertList"),tosign);
	if(signafter==null||signafter=="")
	{   
		
	}
	else{
		var param = {
			"loginflag" :"security",
			"signature" :signafter,
			"tosign" :tosign,
			"adminlogin":"0",
			"ptaVersion":$("ptaVersion").value,
			"caNo":$("caNo").value
		};
		var ajax = new Ajax.Request(base + "/login!comlogin.jspa", {
			"method" :"post",
			"parameters" :param,
			"onFailure" : function() {
				$("login_failure").show();
				jQuery("#login_failure").html("<b style='color:red'>网络错误，无法登陆</b>");
			}.bind(this),
			"onSuccess": function(data){
				str= (data.responseText).split(";");
				if(str[1]!=""){
					$("login_failure").show();
					jQuery("#login_failure").html("<b style='color:red'><span align='center'>"+str[1]+"</span></b>");
				}else{
					window.location.href =str[0];
				}
			}.bind(this)
		});
	
	}
}

function loginByCert(s)
{  
	var tosign;
	var signafter;
	tosign=s;
	signafter=LogonSignByCert($("CertList"),tosign);
	if(signafter==null||signafter=="")
	{   
		
	}
	else{
	//$("signature").value=signafter;
	//$("loginflag").value="security";
	//loginform.method="post";
	//loginform.submit();
		$("loginflag").value="security";
		$("signature").value=signafter;
		var ajax = new Ajax.Request(base + "/login!comlogin.jspa", {
			"method" :"post",
			"parameters" :Form.serialize('loginForm'),
			"onFailure" : function() {
				$("password").value = "";
				$("valid").value = "";
				generateValidCode();
				$("username").focus();
				$("login_failure").show();
				jQuery("#login_failure").html("<b style='color:red'>网络错误，无法登陆</b>");
			}.bind(this),
			"onSuccess": function(data){
				str= (data.responseText).split(";");
				if(str[1]!=""){
					generateValidCode();
					$("login_failure").show();
					jQuery("#login_failure").html("<b style='color:red'><span align='center'>"+str[1]+"</span></b>");
				}else{
					window.location.href =str[0];
				}
			}.bind(this)
		});
	
	}
}

function loginByNoCert()
{
	loginform.loginflag.value="common";
	loginform.action="/zjport/login";
	loginform.method="post";
	loginform.submit();
}

function getCertSerial(){
var Curcert;
Curcert=SelectSingleCertificate($("CertList"));
$("caNo").value=Curcert.SerialNumber;
}


function LogonSignByCert(certList, inputToSign) {
	var Certs;
	if(certList.value != 0) {
		var Certs = iTrusPTA.MyCertificates;
		var CurCert = Certs(certList.value);
		try {
			var signature;
			var ptaVersion = iTrusPTA.Version;
			if(ptaVersion == null){ 
				//PTA Version = 1.0.0.3
				$("ptaVersion").value="1";
				signature  = CurCert.SignMessage(inputToSign, 4);				
			} else {
				//PTA Version > 2
				$("ptaVersion").value="2";
				inputToSign = "LOGONDATA:" + inputToSign;
				signature = CurCert.SignLogonData(inputToSign, 4);
				
			}
			return signature;
		} catch (e) {
			if(-2147483135 == e.number) {
				//用户取消签名
			}	else if(e.number == -2146885621) {
				alert("您不拥有证书“" + CurCert.CommonName + "”的私钥，签名失败。");
				return "";
			}  else if (e.number == -2147483648)
			{  
			   alert("请你插上USBKey，刷新后重新登陆！");
			   return "";
			   
			}else if(e.number == -2146828283){
				alert("您的控件版本过老，请联系电子口岸技术部！");
				return "";
				}else {
				alert("PTA签名时发生错误\n错误号: " + e.number + "\n错误描述: " + e.description);
				return "";
			}
		}
	} else {
		alert("没有找到可供操作的证书！");
		return "";
	}
}

 
 
 
