function checknumber(x)
{
	var out
	var valid=/(^\d+$)|(^\d+\.\d+$)/;
	if (valid.test(x))
		out=true;
	else
		out=false;
	return out;
}
function removeNotDigits(imei)
{
	var anum=/(^\d+$)|(^\d+\.\d+$)/;	
	for(var i=0;i<imei.length;i++)
	{
		if (!anum.test(imei.charAt(i)))
			imei = imei.replace(imei.charAt(i),"0");	
	}
	return imei;
}
function luhnCheck()
{
	
		var imei = document.getElementById('imei1').value;
		var step2 = 0;
		var step2a = 0;
		var step2b = 0;
		var step3 = 0;
		for(var i=imei.length;i<14;i++)
			imei = imei + "0";
		for(var i=1;i<14;i=i+2)
		{
			var step1 = (imei.charAt(i))*2 + "0";
			step2a = step2a + parseInt(step1.charAt(0)) + parseInt(step1.charAt(1));
		}
		for(var i=0;i<14;i=i+2)		step2b = step2b + parseInt(imei.charAt(i));
		step2 = step2a + step2b;
		if(step2%10 == 0)
			step3 = 0;
		else
			step3 = 10 - step2%10;
			if(checknumber(step3))
			document.getElementById('imei2').value = step3;
			
		else
		{	
			document.getElementById('imei1').value = removeNotDigits(document.getElementById('imei1').value);
			luhnCheck();	
		}
		

}

function remove_imei2(){
	
	if(document.getElementById('imei1').value == '' ){
		document.getElementById('imei2').value = ''; 	
	}
	
}

function java_fun_add_imei()
{
	var imei = document.getElementById('imei1').value + document.getElementById('imei2').value;
	
	if(imei.length == 15)
	{
		if(document.getElementById('imei3').value == ''){
			document.getElementById('imei3').value = imei; 
		}else{
			document.getElementById('imei3').value = document.getElementById('imei3').value + "\r\n" + imei; 
		}
		
		document.getElementById('imei1').value = '';
		document.getElementById('imei2').value = '';
	}else{
		alert ('IMEI Must be filled up!');	
	}
	
}
function verifyIP (Form)
{
	var IPRANGE=[document.imeiservice.ip1to.value,document.imeiservice.ip1from.value,document.imeiservice.ip2to.value,document.imeiservice.ip2from.value,document.imeiservice.ip3to.value,document.imeiservice.ip3from.value,document.imeiservice.ip4to.value,document.imeiservice.ip4from.value,document.imeiservice.ip5to.value,document.imeiservice.ip5from.value];
	IFError=true;
	for(p=0;p<IPRANGE.length;p++)
	{
		IPvalue=IPRANGE[p];
		
		if(IPvalue=='')
			continue;
			
		errorString = "";
		theName = "IPaddress";
		var ipPattern = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
		var ipArray = IPvalue.match(ipPattern);
		if (IPvalue == "0.0.0.0")
		errorString = errorString + theName + ': '+IPvalue+' is a special IP address and cannot be used here.';
		else if (IPvalue == "255.255.255.255")
		errorString = errorString + theName + ': '+IPvalue+' is a special IP address and cannot be used here.';
		if (ipArray == null)
		errorString = errorString + theName + ': '+IPvalue+' is not a valid IP address.';
		else
		{
			for (i = 0; i < 5; i++)
			{
				thisSegment = ipArray[i];
					if (thisSegment > 255) {
						errorString = errorString + theName + ': '+IPvalue+' is not a valid IP address.';
						i = 4;
					}
					if ((i == 0) && (thisSegment > 255)) {
					errorString = errorString + theName + ': '+IPvalue+' is a special IP address and cannot be used here.';
					i = 4;
					}
			}
		}
		extensionLength = 3;
		if (errorString == "")
		{
			
		//	return true;
		}
		else
		{
			IFError=false;
			alert (errorString);
			//return false;
		}
	}
	if(IFError)
	{
		return IFError;
	}
	else
	{
		//alert('Invalid IP address');	
		return IFError;
	}
}

function SetAllCheckBoxes(rr)
{

		
	if(document.myForm.checkall.checked==true)
	{
		inputs=document.getElementsByTagName("input");
		numOfCB=0;
		for(x=0;x<inputs.length;x++)
		{
		if(inputs[x].type=="checkbox")inputs[x].checked=true;
		}
	}
	else
	{
		inputs=document.getElementsByTagName("input");
		numOfCB=0;
		for(x=0;x<inputs.length;x++)
		{
		if(inputs[x].type=="checkbox")inputs[x].checked=false;
		}
		
	}

}

