var response;
var req;


function openWin(page,win_width,win_height){
	try {popup_window.close();} catch(e){}
	if ( page.indexOf('mailto') == -1 ){
		var options ='scrollbars=yes, width=' + win_width + ', height=' + win_height;
		var win = window.open(page, 'MyWin', options);
		if (window.focus){
			win.focus()
		}
	}
}
function swapImages(svcName,totalCnt,imageClick){
	if(svcName!=null && totalCnt!=null && imageClick!=null){
		var sourc=document["gallery"].src;
		var imgNumber=sourc.substring(sourc.indexOf(svcName+"_")+1+svcName.length);
		var ext=imgNumber.substring(imgNumber.indexOf(".")+1);
		imgNumber=imgNumber.substring(0,imgNumber.indexOf("."));
		imgNumber=parseInt(imgNumber);
		totalCnt=parseInt(totalCnt);
		if(imageClick=="right"){
			if(imgNumber<totalCnt){
				imgNumber=imgNumber+1;
				document["gallery"].src="images/"+svcName+"_"+imgNumber+"."+ext;
			}
		}else if(imageClick=="left"){
			if(imgNumber>1){
				imgNumber=imgNumber-1;
				document["gallery"].src="images/"+svcName+"_"+imgNumber+"."+ext;
			}
		}
	}
}


function doProcessingRefNet(){
	document.getElementById('refNetSubmitBtn').className = 'thide';
	document.getElementById('refNetProcessing').className = 'tshow';
	
	var attribute1=document.getElementsByName('servicecode');
	var attVal="";
	var checked='false';
	for(var j=0; j<attribute1.length;j++){
		if(attribute1[j].checked){
			attVal = attVal+attribute1[j].value+",";
			checked='true';
		}
	}
	if(checked=='false'){
		document.getElementById('thankyou_refnet_error_message').className = 'error';
		document.getElementById('refNetSubmitBtn').className = '';
		document.getElementById('refNetProcessing').className = 'thide';
	}else{
		document.getElementById('refNetSubmitBtn').className = 'thide';
		document.getElementById('refNetProcessing').className = '';
		document.getElementById('thankyou_refnet_error_message').className = 'thide';
	}
}


function doProcessing(isFormPage){
	document.getElementById('submitBtn').className = 'thide';
	document.getElementById('processing').className = 'tshow';
	loaddata(isFormPage);
}

function loaddata(isFormPage) {
	var finalParams="";
	if(document.getElementById('AttributeNamesToPass')!=null){
		var attNames=document.getElementById('AttributeNamesToPass').value;
		if(attNames!=""){
			attNames=attNames.substring(0,attNames.length-1);
			var attNamesArr=attNames.split(",");
			for(var i=0;i<attNamesArr.length;i++){
				var attName=attNamesArr[i].substring(0,attNamesArr[i].indexOf(":"));
				if(document.getElementById(attName+'QuestRow')==null || (document.getElementById(attName+'QuestRow')!=null && document.getElementById(attName+'QuestRow').className!='thide')){
					var attType=attNamesArr[i].substring(attNamesArr[i].indexOf(":")+1);
					if(attName=='HP'){
						//Area Code.
						var areaCode=document.getElementsByName('HP_AREA');
						//Area Prefix.
						var areaPrefix=document.getElementsByName('HP_PREFIX');
						//Number
						var number=document.getElementsByName('HP_NUMBER');
						var attVal=areaCode[0].value+areaPrefix[0].value+number[0].value;
						finalParams=finalParams+"&HP_AREA="+areaCode[0].value+"&HP_PREFIX="+areaPrefix[0].value+"&HP_NUMBER="+number[0].value;
					}else if(attType=='TextField'){
						var attVal=document.getElementsByName(attName);
						finalParams=finalParams+"&"+attName+"="+attVal[0].value;
					}else if(attType=='RadioFieldInTable'){
						var attribute1=document.getElementsByName(attName);
						var attVal="";
						for(var j=0; j<attribute1.length;j++){
							if(attribute1[j].checked){
								attVal = attribute1[j].value;
							}
						}
						finalParams=finalParams+"&"+attName+"="+attVal;
					}else if(attType=='CheckboxSetInTable'){
						var attribute1=document.getElementsByName(attName);
						var attVal="";
						for(var j=0; j<attribute1.length;j++){
							if(attribute1[j].checked){
								attVal = attVal+attName+"="+attribute1[j].value+"&";
							}
						}
						if(attVal.indexOf("&")!=-1){
							attVal=attVal.substring(0,(attVal.length-1))
							finalParams=finalParams+"&"+attVal;
						}						
					}else if(attType=='SelectField' && attName=='SP'){
						var attVal=document.forms[0].SP.options[document.forms[0].SP.options.selectedIndex].value;
						finalParams=finalParams+"&"+attName+"="+attVal;
					}else if(attType=='SelectField'){
						var attribute1=document.getElementsByName(attName);
						var attVal=attribute1[0].value;
						finalParams=finalParams+"&"+attName+"="+attVal;
					}
				}
			}
		}	
	}
	finalParams=finalParams.substring(1);
	var pageName;	
	if(document.getElementById('PageName')!=null){
		pageName=document.getElementById('PageName').value;
	}
	loadXMLDoc('formbody.jsp?'+finalParams+'&submit=submit&isFormPageSubmit='+isFormPage+'&PageName='+pageName+'&ajaxrequest=yes');
	processReqChange();
}

function loadXMLDoc(url) {
	// branch for native XMLHttpRequest object
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = processReqChange;
		req.open("GET", url, true);
		req.send(null);
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		isIE = true;
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = processReqChange;
			req.open("GET", url, true);
			req.send();
		}
	}
}
function processReqChange() {
	if (req.readyState == 4) {
		if (req.status == 200) {
			response = req.responseText;
			if(document.getElementById('formbody')!=null){
				var textContent = document.getElementById('formheadtext');
				if(response=='validformsubmit'){
					document.forms[0].action = 'thankyou.jsp';
					document.forms[0].submit();
				}else if(response=='invalidformsubmit'){
					document.forms[0].action = 'resource.jsp';
					document.forms[0].submit();
				}else if(response.indexOf("StepImg:Prequal##")!=-1){
					response=response.substring(17);
					document.getElementById('formbody').innerHTML=response;
					document.getElementById('submitBtn').className = 'tshow';
					document.getElementById('processing').className = 'thide';
					setElementsPosition();	
				}else if(response.indexOf("StepImg:Index##")!=-1){
					textContent.innerHTML="<span style='font-family:Arial;font-size:22px;font-weight:bold;color:#FFFF33;'>Tell us a little about your project</span>";				
					response=response.substring(15);
					document.getElementById('formbody').innerHTML=response;
					document.getElementById('submitBtn').className = 'tshow';
					document.getElementById('processing').className = 'thide';
					setElementsPosition();	
				}else if(response.indexOf("StepImg:Form##")!=-1){
					textContent.innerHTML="<span style='font-family:Arial;font-size:22px;font-weight:bold;color:#FFFF33;'>Last step – your contact info</span>";		
					response=response.substring(14);
					document.getElementById('formbody').innerHTML=response;
					document.getElementById('submitBtn').className = 'tshow';
					document.getElementById('processing').className = 'thide';
					setElementsPosition();	
				}else{
					document.getElementById('formbody').innerHTML=response;
					document.getElementById('submitBtn').className = 'tshow';
					document.getElementById('processing').className = 'thide';
					setElementsPosition();	
				}
			}
		}
	}
}

//Following methods are added for phone format processing.
function HP_AREAonFocus()
{	
	var nKeyCode = ''; // Holds the Ascii values for the key pressed
	_dom = 0;		
 	_dom=document.all?3:(document.getElementById?1:(document.layers?2:0));
	document.form.HP_AREA.onkeypress = KeyPress;
	function KeyPress(e)
	{
		var oEvent = (window.event) ? window.event : e;
			nKeyCode =  oEvent.keyCode ? oEvent.keyCode :
						oEvent.which ? oEvent.which : 
						void 0;
			if(_dom==3){   // for IE
					if ((event.keyCode < 48 || event.keyCode > 57) ) return false;
					if ((event.keyCode == 45) && document.form.HP_AREA.value.length > 0) return false;
			}else //NN4 and Mozilla
			{
					if ((nKeyCode < 48 || nKeyCode > 57)  //Ascii for Numbers 0 to 9 is 48 to 57 
						&&  (nKeyCode < 16 || nKeyCode > 18) //Ascii for SHIFT = 16, CTRL = 17, ALT = 18
						&&  nKeyCode!=92  //Ascii for MS = 92
						&&  nKeyCode!=93  //Ascii for View  = 93
						&&  nKeyCode!=8   //Ascii for Back = 8
						&&  nKeyCode!=9   //Ascii for Tab = 9
						) return false;
					if ((nKeyCode == 45) && document.form.HP_AREA.value.length > 0) return false;
			}
	}
}
function HP_PREFIXonFocus()
{	
	var nKeyCode = ''; // Holds the Ascii values for the key pressed
	_dom = 0;		
 	_dom=document.all?3:(document.getElementById?1:(document.layers?2:0));
	document.form.HP_PREFIX.onkeypress = KeyPress;
	function KeyPress(e)
	{
		var oEvent = (window.event) ? window.event : e;
			nKeyCode =  oEvent.keyCode ? oEvent.keyCode :
						oEvent.which ? oEvent.which : 
						void 0;
			if(_dom==3){   // for IE
					if ((event.keyCode < 48 || event.keyCode > 57) ) return false;
					if ((event.keyCode == 45) && document.form.HP_PREFIX.value.length > 0) return false;
			}else //NN4 and Mozilla
			{
					if ((nKeyCode < 48 || nKeyCode > 57)  //Ascii for Numbers 0 to 9 is 48 to 57 
						&&  (nKeyCode < 16 || nKeyCode > 18) //Ascii for SHIFT = 16, CTRL = 17, ALT = 18
						&&  nKeyCode!=92  //Ascii for MS = 92
						&&  nKeyCode!=93  //Ascii for View  = 93
						&&  nKeyCode!=8   //Ascii for Back = 8
						&&  nKeyCode!=9   //Ascii for Tab = 9
						) return false;
					if ((nKeyCode == 45) && document.form.HP_PREFIX.value.length > 0) return false;
			}
	}
}
function HP_NUMBERonFocus()
{	
	var nKeyCode = ''; // Holds the Ascii values for the key pressed
	_dom = 0;		
 	_dom=document.all?3:(document.getElementById?1:(document.layers?2:0));
	document.form.HP_NUMBER.onkeypress = KeyPress;
	function KeyPress(e)
	{
		var oEvent = (window.event) ? window.event : e;
			nKeyCode =  oEvent.keyCode ? oEvent.keyCode :
						oEvent.which ? oEvent.which : 
						void 0;
			if(_dom==3){   // for IE
					if ((event.keyCode < 48 || event.keyCode > 57) ) return false;
					if ((event.keyCode == 45) && document.form.HP_NUMBER.value.length > 0) return false;
			}else //NN4 and Mozilla
			{
					if ((nKeyCode < 48 || nKeyCode > 57)  //Ascii for Numbers 0 to 9 is 48 to 57 
						&&  (nKeyCode < 16 || nKeyCode > 18) //Ascii for SHIFT = 16, CTRL = 17, ALT = 18
						&&  nKeyCode!=92  //Ascii for MS = 92
						&&  nKeyCode!=93  //Ascii for View  = 93
						&&  nKeyCode!=8   //Ascii for Back = 8
						&&  nKeyCode!=9   //Ascii for Tab = 9
						) return false;
					if ((nKeyCode == 45) && document.form.HP_NUMBER.value.length > 0) return false;
			}
	}
}
function setElementsPosition(){
	if(document.getElementById('leftcopy_outer')!=null){
		document.getElementById('arrowimage1').style.top=document.getElementById('leftcopy_outer').offsetHeight+110;
		document.getElementById('arrowimage2').style.top=document.getElementById('leftcopy_outer').offsetHeight+110;	
	}
	//alert(document.getElementById('indextable').offsetHeight);
	if(document.getElementById('indextable')!=null && document.getElementById('indextable').offsetHeight < 210){
		document.getElementById('formbodyspacer').style.height=315;	
	}else if(document.getElementById('formbodyspacer')!=null){
		//alert(document.getElementById('formbodyspacer').offsetHeight);
		if( (document.getElementById('indextable').offsetHeight+17)<315 && (document.getElementById('formbodyspacer').offsetHeight+17)<315){
			document.getElementById('formbodyspacer').style.height=320;
		}else{
			var ht;
			if(document.getElementById('indextable').offsetHeight>document.getElementById('formbodyspacer').offsetHeight){
				//alert("index greater");
				ht=document.getElementById('indextable').offsetHeight+25;
			}else{
				//alert("formbodyspacer greater");
				ht=document.getElementById('formbodyspacer').offsetHeight+25;
			}
			//alert("ht "+ht);
			document.getElementById('formbodyspacer').style.height=ht;
		}
		//alert(document.getElementById('formbodyspacer').style.height);
	}
}

function displaySubQuest(questionName){
	if(document.getElementsByName(questionName+"DepQuests")!=null){
		var attVal=document.getElementsByName(questionName+"DepQuests");
		attVal=attVal[0].value; 
		var inputtype=attVal.substring(0,attVal.indexOf("-"));
				
		if(inputtype=='RadioFieldInTable'){
			//Find out the selected answer for the question.
			var attributeName=document.getElementsByName(questionName);
			var attributeVal="";
			for(var k=0; k<attributeName.length;k++){
				if(attributeName[k].checked){
					ansSelected = attributeName[k].value;
				}
			}
			var attNamesArr1=(attVal.substring(attVal.indexOf("-")+1)).split("::");
			for(var j=0;j<attNamesArr1.length;j++){
				var attNames=attNamesArr1[j];
				var attributeVal=attNames.substring(0,attNames.indexOf("##"));
				
				var attNamesArr2=(attNames.substring(attNames.indexOf("##")+2)).split(",");
				for(var i=0;i<attNamesArr2.length;i++){
					var questName=attNamesArr2[i].substring(0,attNamesArr2[i].indexOf("@@"));
					var isRequired=attNamesArr2[i].substring(attNamesArr2[i].indexOf("@@")+2);
					if(attributeVal==ansSelected){
						if(document.getElementById(questName+"QuestRow")!=null){
							document.getElementById(questName+"QuestRow").className="";
						}
						if(document.getElementById(questName+"AnsRow")){
							document.getElementById(questName+"AnsRow").className="";
						}
						if(document.getElementById(questName+"ErrRow")){
							document.getElementById(questName+"ErrRow").className="";
						}
						if(document.getElementById(questName+"SpacerRow")){
							document.getElementById(questName+"SpacerRow").className="";
						}
					}else{
						if(document.getElementById(questName+"QuestRow")!=null){
							document.getElementById(questName+"QuestRow").className="thide";
						}
						if(document.getElementById(questName+"AnsRow")){
							document.getElementById(questName+"AnsRow").className="thide";
						}
						if(document.getElementById(questName+"ErrRow")){
							document.getElementById(questName+"ErrRow").className="thide";
						}
						if(document.getElementById(questName+"SpacerRow")){
							document.getElementById(questName+"SpacerRow").className="thide";
						}
					}
				}
			}
		}
	}
	setElementsPosition();
}
