﻿// JavaScript Document

function StartHideErrors(err){
	 document.getElementById(err).style.display ="block";
	 //document.getElementById(err +'_h').value ="yes";

}

function ResetHideErrors(){
document.getElementById("err_txt").style.display ="none";
document.getElementById("errsn_div_1").innerHTML = "";
document.getElementById("errsn_div_2").innerHTML = "";

}

function checkSN(SN){

//alert(SN.indexOf(";"));
//alert(SN.search(";"));
//alert(SN.indexOf(";"));



if (SN.length > 0){   
	
var str = document.getElementById('product_serial').value; 
var result=''; 
if (str.length<=0) {return false;} 
	for(var i=0;i<str.length;i++) 
	{ 
		if(str.charCodeAt(i)>125) 
		{ 
		result += String.fromCharCode(str.charCodeAt(i)-65248); 
		} else{ 
		result = str; 
		} 
	} 
document.getElementById('product_serial').value = result; 
    
	if(SN.indexOf(";") > -1){  //输入中包涵";"
		var reg = /;/g;
		var arr  = SN.match(reg);
		
	    var minlength = 4 * (arr.length + 1) + arr.length;//SN 最小长度 {电位最小 X （分号个数＋1）＋分号个数}
		var maxlength = 13 * (arr.length + 1) + arr.length;//SN 最大长度
		//alert(SN.length);
			if (SN.length < minlength || SN.length > maxlength ){
				StartHideErrors('err_txt');
				document.getElementById("errsn_div_2").innerHTML = "<font color='#FF0000'>" +SN + "</font>你输入的序列号有误，请查证后再试！<br>";
				document.getElementById('len_err_h').value = "yes";
				document.getElementById('have_err').value = "no";
				document.getElementById('not_have_err_h').value = "no";
				document.getElementById('registered_err_h').value = "no";
				return false;
			}
			else{
				ResetHideErrors();
				document.getElementById('len_err_h').value = "no";
				document.getElementById('have_err').value = "no";
				document.getElementById('not_have_err_h').value = "no";
				document.getElementById('registered_err_h').value = "no";
			}
	
	}
    
	else{//长度不足4至13位,没有";"
	//alert(SN.length);
			if (SN.length < 4 || SN.length > 13 ){
				StartHideErrors('err_txt');
				document.getElementById("errsn_div_2").innerHTML = "<font color='#FF0000'>" +SN + "</font>你输入的序列号有误，请查证后再试！<br>";
				document.getElementById('len_err_h').value = "yes";
				document.getElementById('have_err').value = "no";
				document.getElementById('not_have_err_h').value = "no";
				document.getElementById('registered_err_h').value = "no";
				return false;
			}
			else{
				ResetHideErrors();
				document.getElementById('len_err_h').value = "no";
				document.getElementById('have_err').value = "no";
				document.getElementById('not_have_err_h').value = "no";
				document.getElementById('registered_err_h').value = "no";
			}//长度不足8至13位	
		
    }


	var randnum;
	//return true;
	var xmlhttp;
	try{
		xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
	}catch(e){
		try{
			xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
		}catch(e){
			try{
				xmlhttp = new XMLHttpRequest();
			}catch(e){
				alert("Error");
			}
		}
	}
	randnum = Math.random();
	var openstr = "includes/ajaxServer.asp?method=checkSN&param=" + SN + "&rand=" + randnum.toString();
	//alert(openstr);
	xmlhttp.open("get",openstr);
	
	xmlhttp.onreadystatechange=function(){

		if (xmlhttp.readyState == 4){
			if (xmlhttp.status == 200) {
				processStatus(xmlhttp.responseText);
				
				return true;
			}
			else {
				//procHideErrors();
			}
		}
	}
	xmlhttp.send(null);

   }else{
	   ResetHideErrors();
	  }

}

function processStatus(statusText){
	var errorMsg
	var sText
	var errcount = 0
	errorMsg=""
	//alert(statusText);
	if (statusText.length==1){
		if (statusText == "1"){
				errorMsg ="<font color='#FF0000'>" + document.getElementById("product_serial").value + "</font>该设备可能是返修设备或非正规渠道进口，无法得到POLYCOM原厂质保，请填完以下表单并提交，以便与POLYCOM办事处联系。<br>";
				//document.getElementById("not_have_err_h").value = "yes";
				document.getElementById("registered_err_h").value = "no";
			    StartHideErrors('err_txt');
		} else if (statusText == "2"){
				errorMsg = "<font color='#FF0000'>" + document.getElementById("product_serial").value + "</font>已经被注册过！<br>";
				document.getElementById("registered_err_h").value = "yes";
				document.getElementById("not_have_err_h").value = "no";
			   StartHideErrors('err_txt');
		}
		document.getElementById("errsn_div_2").innerHTML = errorMsg;
	}
	else{
		for (i=0 ; i < statusText.length; i++){
			
			//sText = statusText.substring(i);
			sText = statusText.charAt(i);
			
			errcount = errcount + parseInt(sText);
			//alert("test"+errcount);
	
			
			var str= new Array();
			str=document.getElementById("product_serial").value.split(";");
				
			if (sText == "0"){//正确
			    //ResetHideErrors();
			   
			}else if (sText == "1"){//没有
	
	            StartHideErrors('err_txt');
				if(errorMsg!=""){
				   errorMsg = errorMsg + "<font color='#FF0000'>" + str[i] + "</font>该设备可能是返修设备或非正规渠道进口，无法得到POLYCOM原厂质保，请填完以下表单并提交，以便与POLYCOM办事处联系。<br>";
				}else{
					errorMsg ="<font color='#FF0000'>" + str[i] + "</font>该设备可能是返修设备或非正规渠道进口，无法得到POLYCOM原厂质保，请填完以下表单并提交，以便与POLYCOM办事处联系。<br>";
				}
			
	
			}else if (sText == "2"){//以注册
				document.getElementById("registered_err_h").value = "yes";
				document.getElementById("not_have_err_h").value = "no";
				StartHideErrors('err_txt');			
				
				if(errorMsg!=""){
					errorMsg = errorMsg + "<font color='#FF0000'>" + str[i] + "</font>已经被注册过！<br>";
				}else{
					errorMsg = "<font color='#FF0000'>" + str[i] + "</font>已经被注册过！<br>";
				}
				
	
			}
		}
		
		document.getElementById("errsn_div_2").innerHTML = errorMsg;
		
//			if(errcount>0){
//			document.getElementById("have_err").value = "yes";
//			}else{
//				document.getElementById("have_err").value = "no";
//				}	
			//alert(errcount);
	}		

}




function showDetail(err){
	var adiv = document.getElementById(err);
	if (adiv.style.display == "none"){
		adiv.style.display="block";
	}
	else {
		adiv.style.display == "block";
	}
	return true;
}

function hideDetail(err){
	document.getElementById(err).style.display="none";
	return true;
}