var temp;
var timer=0;
var timeoutRequest;


function submitForm()
	{ 
		temp=0;
		
		var req = null; 
		var val = document.ajax.phone.value;	
		
		var pageIDVal = document.ajax.pageId.value;		
		var rexp=/^\s?((\(?0\d{4}\)?\s?\d{5})|(\(?0\d{5}\)?\s?\d{4})|(\(?0\d{5}\)?\s?\d{5})|(\(?0\d{4}\)?\s?\d{3}\s?\d{3})|(\(?0\d{3}\)?\s?\d{3}\s?\d{4})|(\(?0\d{2}\)?\s?\d{4}\s?\d{4})|(\(?0\d{10}\)?\s?)|(\(?0\d{2}\)?\s?\d{4}\s?\d{4}\s?))+$/;
       
		if (val.toString() == "" ) {	
		
		document.getElementById("redcolor").style.display = 'block';
		document.getElementById("blkcolor").style.display = 'none';
		setFocus();
		
		return (false); 
		
		} else if ( val.search(rexp)) 	{
         
		 document.getElementById("redcolor").style.display = 'block';
		 document.getElementById("blkcolor").style.display = 'none';
		 setFocus();
		return (false); 
		}  else {}
 

		if (window.XMLHttpRequest)
		{
 			req = new XMLHttpRequest();
			if (req.overrideMimeType) 
			{
				req.overrideMimeType('text/xml');
			}
		} 
		else if (window.ActiveXObject) 
		{
			try {
				req = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e)
			{
				try {
					req = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			}
	        	}

    // checking time out
timeoutRequest=setTimeout ( function() {
 
   if(temp != 200) {
   	         req.abort();
		     document.getElementById('ErrResonse').style.display = 'block';
			 document.getElementById("HttpClientStatus").style.display ='none';
			 document.getElementById("target").style.display = 'none';
			 clearTimeout(timeoutRequest); 
			 return false; }	
	},30000);
            
        

		req.onreadystatechange = function()
		{ 
			document.getElementById('HttpClientStatus').style.display ='block';
			document.getElementById("introtext").style.display ='none';
			document.getElementById("check").style.display ='none';
			document.getElementById("phone").style.display ='none';
			document.getElementById("blkcolor").style.display ='none';
			document.getElementById("redcolor").style.display ='none';
			if(req.readyState == 4)
			{
				
				if(req.status == 404 ) {
				    document.getElementById('ErrResonse').style.display = 'block';
					document.getElementById("HttpClientStatus").style.display ='none';
					clearTimeout(timeoutRequest); 
					req.abort();
				}
				
				
				if(req.status == 200)
				{
								
					// process a text document here
					var doc = req.responseText;
					document.getElementById("target").innerHTML = doc;
					document.getElementById("target").style.display = 'block';
					document.getElementById("HttpClientStatus").style.display ='none';
					clearTimeout(timeoutRequest); 
					var resultCode = document.getElementById("rcode").innerHTML;
                    var speedmsg = document.getElementById("speedmsg").innerHTML;
					trackomniLinecheck(resultCode,speedmsg);
					req.abort();
                    
				}	
				else	
				{
					document.getElementById("target").innerHTML = "<h2>Opps, sorry we have a problem with the line checker</h2><p>Sorry for the inconvenience, our line checker has timed out. This is probably just an intermittent error, <a href='javascript:void(0);' onclick='javascript:call_2()' title='please try again'>please try again</a>. If the problem persists, please contact us on 0800 169 0625.</p>";
					document.getElementById("HttpClientStatus").style.display ='none';
					clearTimeout(timeoutRequest); 
					req.abort();
				 }	
			}
			
			
		}; 
		
		req.open("GET", "/broadband-and-internet/line_check?phone="+val+'&pageID='+pageIDVal, true); 
		req.send(null); 
		
		
	}  

    function call_1() {
	document.getElementById("phone").value = "";
	document.getElementById("check").style.display = 'block';
	document.getElementById("phone").style.display = 'block';
    document.getElementById("introtext").style.display ='block';
	document.getElementById("target").style.display = 'none';
	document.getElementById('ErrResonse').style.display = 'none';
	document.getElementById("blkcolor").style.display = 'block';
	document.getElementById("redcolor").style.display = 'none'
	return true;
		 }

    function call_2() {
	document.getElementById("check").style.display = 'block';
	document.getElementById("phone").style.display = 'block';
    document.getElementById("introtext").style.display ='block';
	document.getElementById("target").style.display = 'none';
	document.getElementById('ErrResonse').style.display = 'none';
	document.getElementById("blkcolor").style.display = 'block';
	document.getElementById("redcolor").style.display = 'none'
	return true;
		 }

function setFocus() { 
	document.ajax.phone.focus();
}




function trackomniLinecheck(resultCode,speedmsg) {
var resvalue = resultCode;
s_linkTrackVars='eVar20,eVar19';
s_linkType='o';
s_linkName='BTB:P&S:BBInternet:BT Business Total Broadband:Line Check Status';
s_eVar19='BTB:P&S:BBInternet:BT Business Total Broadband:Line Check Status';
s_eVar20='BTB Inline BB Line Check:'+ resvalue + speedmsg ;
s_lnk=s_co(this); 
s_gs('btcom');
}
