var xmlHttp;
function ajax(url, displayitem){ 
	xmlHttp=GetXmlHttpObject();
	document.getElementById(displayitem).innerHTML="<br><br><img src='images/loading.gif' border='0'>";
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=function stateChanged() { 
									if (xmlHttp.readyState==4){	
										if(displayitem=="displaycouponitem"){
											if(xmlHttp.responseText==1){
												document.getElementById(displayitem).innerHTML="<img src='images/cross.gif' border='0'> Invalid <input type='hidden' name='couponamt' id='couponamt' value='0'>";
												//alert("Please enter valid coupon");
											}else{
												document.getElementById('subtbtn').style.display='';
											}
										}
										
										if(xmlHttp.responseText!='' && xmlHttp.responseText!='1'){
											document.getElementById(displayitem).innerHTML=xmlHttp.responseText;
										}
									}
								}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function GetXmlHttpObject(){
	if (window.XMLHttpRequest){
		// code for IE7+, Firefox, Chrome, Opera, Safari
		return new XMLHttpRequest();
	}
	if (window.ActiveXObject){
		// code for IE6, IE5
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	return null;
}



/*function to remove the space from the field*/
function chktrim(inputString) {
     if (typeof inputString != "string") { return inputString; }
     var retValue = inputString;
     var ch = retValue.substring(0, 1);
     while (ch == " ") { 
       retValue = retValue.substring(1, retValue.length);
       ch = retValue.substring(0, 1);
     } 
     ch = retValue.substring(retValue.length-1, retValue.length);
     while (ch == " ") { 
        retValue = retValue.substring(0, retValue.length-1);
        ch = retValue.substring(retValue.length-1, retValue.length);
     }
     while (retValue.indexOf("  ") != -1) { 
        retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
     }
     return retValue; 
}

/*following function calls to show any type of validation in any form*/
function dynamic_form_validation(form_object) {
	
	/*fetching the total number of elements from form*/
	total_elements = (form_object.elements.length);
    
	var email_check = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	
	/*running loop to check the elements of form one by one*/
	for(var element_count=0; element_count<total_elements; element_count++) {
			
		/*storing element object*/
		var element_object=form_object.elements[element_count];
		
		/*storing element name*/
		var element_id=element_object.id;		
		
		/*storing element value*/
		var element_value=chktrim(element_object.value);		
		
		/*storing element type*/
		var element_type=element_object.type;		
		/*spliting the element namer*/
		var array_split=element_id.split("_");	
		
		
			
		//alert(element_object+', '+element_id+', '+element_value+', '+element_type+', '+array_split[0]);
		if(array_split[0].indexOf('req')!=-1){
			
			if(element_type=='select-one'){
				if (element_object.options[element_object.selectedIndex].value=="")  {
					alert(array_split[2]);
					element_object.focus();
					return false;
				}
			}
			else if(element_type=='checkbox'){
				if (element_object.checked == false)  {
					alert(array_split[2]);
					element_object.focus();
					return false;
				}
			}
			else{
				if(element_id.indexOf('_tinyMCE')!=-1){
					tinyMCE.triggerSave(true,true);
						var mytextarea = tinyMCE.activeEditor.getContent();
					if(trimspaces(mytextarea)==''){
						alert(split_title[2]);	
						//formElem.focus();
						return false;
					}
				}
				else if(element_value.length<1){
					alert(array_split[2]);
					element_object.focus();
					return false;
				}
				else if(element_id.indexOf('_img')!=-1){
					if(element_id.indexOf('.png')==-1 && element_id.indexOf('.gif')==-1 && element_id.indexOf('.jpg')==-1 && element_id.indexOf('.jpeg')==-1){
						alert(array_split[2]);
						element_object.focus();
						return false;
					}
				}else if(element_id.indexOf('_alpha')!=-1){
					var alpha_check = /^([a-zA-Z\s])+$/;
					if(!alpha_check.test(element_value)){
						alert(array_split[2]);
						element_object.focus();
						return false;
					}
				}else if(element_id.indexOf('_Email-id')!=-1){
					if(!email_check.test(element_value)){
						alert(array_split[2]);
						element_object.focus();
						return false;
					}					
				}
				else if(element_id.indexOf('_int_')!=-1){
					if(!parseInt(element_value)){
						alert("Please enter only integer value");
						element_object.focus();
						return false;
					}
				}else if(element_id.indexOf('_web_')!=-1){
					var urlregex = new RegExp("^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([0-9A-Za-z]+\.)");
					if(!urlregex.test(element_value)){	
						alert("Please enter correct website name for ex. http://www.example.com");
						element_object.focus();
						return false;
					}
				}else if(array_split[1].indexOf('length')!=-1){
					var array_split2=array_split[1].split("-");
					if(array_split2[1]>element_value.length || array_split2[2]<element_value.length){
						alert('Password length should be between '+array_split2[1]+' to '+array_split2[2]+' characters');
						element_object.focus();
						return false;
					}
				}else if(element_id.indexOf('_match_')!=-1){
					if(array_split[3]!='req'){
						var fldname=array_split[3];
					}else{
						var fldname=array_split[3]+'_'+array_split[4]+'_'+array_split[5];
					}
					if(element_value!=document.getElementById(fldname).value){
						alert(array_split[2]);
						//element_object.value='';
						element_object.focus();
						return false;
					}
				}
			}
		}
	}
}
function chkvalues(total){
	var chkdval="";
	var nosession=0;
	for(i=1;i<=total;i++){
		if(document.getElementById("chk"+i).checked==true){
			if(chkdval!=''){
				chkdval+='~'
			}
			chkdval+=document.getElementById("chk"+i).value;
			nosession++;
		}
	}
	if(chkdval==''){
		alert('Please select at least one session for test');
		return false;
	}else{
		var ajaxurl=document.getElementById('ajaxurl').value+chkdval+'&nosession='+nosession;
		ajax(ajaxurl,'itemdisplay');
	}
}
function frmvaluessubt(form_object){
	var ajaxurl="";
	total_elements = (form_object.elements.length);
	for(var element_count=0; element_count<total_elements; element_count++) {
		var element_object=form_object.elements[element_count];
		var element_value=chktrim(element_object.value);
		var element_type=chktrim(element_object.type);
		ajaxurl=ajaxurl+'&'+element_object.name+'='+element_object.value;
	}
	//alert(ajaxurl);
	document.getElementById("itemdisplay").innerHTML="<br><br><img src='images/loading.gif' border='0'>";
	makePOSTRequest("ajax.php","itemdisplay",ajaxurl);
}
function readingtest(form_object,displayitem){
	ajaxurl='testsubt=y';
	total_elements = (form_object.elements.length);
	for(var element_count=0; element_count<total_elements; element_count++) {
		var element_object=form_object.elements[element_count];
		var element_value=chktrim(element_object.value);
		var element_type=chktrim(element_object.type);
		//alert(element_object.name);
		if(element_type=="radio" && element_object.checked==true){
			ajaxurl=ajaxurl+'&'+element_object.name+'='+element_object.value;
		}else if(element_type!="radio" && element_type!="button" && element_value!=''){
			ajaxurl=ajaxurl+'&'+element_object.name+'='+element_object.value;
		}
	}
	//alert(ajaxurl);
	makePOSTRequest("ajax.php","itemdisplay",ajaxurl);
}
function mocktest(form_object){
	ajaxurl='testsubt=y';
	total_elements = (form_object.elements.length);
	for(var element_count=0; element_count<total_elements; element_count++) {
		var element_object=form_object.elements[element_count];
		var element_value=chktrim(element_object.value);
		var element_type=element_object.type;
		if(element_type=="radio" && element_object.checked==true){
			ajaxurl=ajaxurl+'&'+element_object.name+'='+element_object.value;
		}else if(element_type!="radio" && element_type!="button" && element_value!='' && element_object.name.indexOf('flag')==-1){
			ajaxurl=ajaxurl+'&'+element_object.name+'='+element_object.value;
		}
	}
	//alert(ajaxurl);
	makePOSTRequest("ajax.php","itemdisplay",ajaxurl);
}

function displayhide(totalval,selectval,pfx){
	for(k=1;k<=totalval;k++){
		if(selectval==k){
			document.getElementById(pfx+k).style.display="";
		}else{
			document.getElementById(pfx+k).style.display="none";
		}
	}
}

var http_request = false;
function makePOSTRequest(url,displayitem,parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request = new XMLHttpRequest();
     if (http_request.overrideMimeType) {
     	// set type accordingly to anticipated content type
        //http_request.overrideMimeType('text/xml');
        http_request.overrideMimeType('text/html');
     }
  } else if (window.ActiveXObject) { // IE
     try {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) {
        try {
           http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
     }
  }
  if (!http_request) {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
 // alert("hi");
  http_request.onreadystatechange = function alertContents() {
									  if (http_request.readyState == 4) {
										 if (http_request.status == 200) {
									        result = http_request.responseText;
									        document.getElementById(displayitem).innerHTML = result;
									     } else {
									        alert('There was a problem with the request.');
									     }
									  }
									};
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}

function reviewquestion(form_object,totalval){
	total_elements = (form_object.elements.length);
	document.getElementById('reviewquestiondisplay').style.display='';
	for(var element_count=0; element_count<total_elements; element_count++) {
		var element_object=form_object.elements[element_count];
		var element_value=chktrim(element_object.value);
		var element_type=element_object.type;
		var element_name=element_object.name;
		//alert(element_name);
		//alert(element_type +'===>'+element_object.checked);
		//alert(element_name+"_attempt-->"+element_object.checked);
		/*if(element_type=="radio" && element_object.checked==true){
			document.getElementById(element_name+"_attempt").innerHTML='Yes';
		}*/
		
		/*else if(element_type=="hidden" && element_value!='' && element_name.indexOf('flag')){
			document.getElementById(element_name+"_flag").innerHTML='Yes';
		}*/
	}
	//reviewquestion
	
}
function questionoftheday(){
	var ans=parseInt(document.getElementById('hidans').value)-1;
	if(document.dayquesfrm.answer[ans].checked==true){
		alert('Your Answer is right');
	}else{
		alert('Your Answer is wrong. Correct answer is '+document.getElementById('ans'+parseInt(document.getElementById('hidans').value)).innerHTML);
	}
}
function showhide(num,total){
	for(k=1;k<=total;k++){
		if(k==num){
			document.getElementById('linktab'+k).className='selected';
			document.getElementById('contenttab'+k).style.display='';
		}else{
			document.getElementById('linktab'+k).className='';
			document.getElementById('contenttab'+k).style.display='none';
		}
	}
}
function navigationhide(fldname,typ){
	//alert(fldname+typ);
	if(typ==0){
		document.getElementById(fldname).style.display="none";
		document.getElementById(fldname+"img").src="images/+.gif";
		document.getElementById(fldname+"hid").value="1";
		//alert("hello1");
	}else{
		document.getElementById(fldname).style.display="";
		document.getElementById(fldname+"img").src="images/-.gif";
		document.getElementById(fldname+"hid").value="0";
		//alert("hello2");
	}
}
function playSound(id){
 if(document.embeds) document.embeds["playsound"].play();
 
}
function clearoption(frmName, rbGroupName) { 
	var radios = document[frmName].elements[rbGroupName]; 
	for (var i=0; i <radios.length; i++) { 
		radios[i].checked=false; 
	}
}
function clearskipquestion(fldname) {
	document.getElementById(fldname).checked=false;
}
function Arrangecity(frm){
	val = document.regfrm.state;
	gr=document.regfrm.city;
	
	for (i=gr.length;i>0;i--) {
		gr.options[0] = null;
	}
	reslt=val.value.replace(' and ','');
	var reslt=reslt.replace(' ',''); 
	city1=eval('S'+ reslt);
	var city2=city1.split("~")
	
	var valOption = new Option("Please select","");
	var valLen = gr.length;
	gr.options[0] = valOption;
	for (i=0;i<city2.length;i++){
		if(city2[i]!=''){
			var valOption = new Option(city2[i],city2[i]);
			var valLen = gr.length;
			gr.options[valLen] = valOption;
		}
	}
	document.getElementById('statedisplay').style.display='none';
	document.regfrm.city.style.display='';
	document.getElementById('citydisplay').style.display='none';
	document.regfrm.shall_state.value= val.options[val.options.selectedIndex].text;
}
function countrylist(val){
	gr=document.regfrm.state;
	if(val=='India' || val=='United States of America'){
		if(val=='India'){
			var city1=INDIA;
			document.regfrm.city.style.display='';
			document.getElementById('citydisplay').style.display='none';
			document.regfrm.state.style.display='';
			document.getElementById('statedisplay').style.display='none';
		}else if(val=='United States of America'){
			document.regfrm.state.style.display='';
			document.getElementById('statedisplay').style.display='none'; 
			document.regfrm.city.style.display='none';
			document.getElementById('citydisplay').style.display='';
			var city1=US;
		}
		var city2=city1.split("~")
		
		for (i=gr.length;i>0;i--) {
			gr.options[0] = null;
		}
		var valOption = new Option("Please select","");
		var valLen = gr.length;
		gr.options[0] = valOption;
		for (i=0;i<city2.length;i++){
			if(city2[i]!=''){
				var valOption = new Option(city2[i],city2[i]);
				var valLen = gr.length;
				gr.options[valLen] = valOption;
			}
		}
	}else{
		document.regfrm.city.style.display='none';
		document.getElementById('citydisplay').style.display='';
		document.regfrm.state.style.display='none';
		document.getElementById('statedisplay').style.display='';
	}		
}
function nextpreviousbtn(maxval,curval){
	lastval='mockanalysis'+document.getElementById('currentvalue').value;
	document.getElementById(lastval).style.display='none';
	document.getElementById('mockanalysis'+curval).style.display='';
	if(curval == 0){
		document.getElementById('previousbtn').style.display='none';
	}else{
		document.getElementById('previousbtn').style.display='';
	}
	if(curval == maxval){
		document.getElementById('nextbtn').style.display='none';
	}else{
		document.getElementById('nextbtn').style.display='';
	}
	document.getElementById('currentvalue').value=curval;
}
function verbalreading(id,typ){
	var correct=document.getElementById('correctans'+id).value;
	if(document.getElementById('ans1'+id).checked==false && document.getElementById('ans2'+id).checked==false && document.getElementById('ans3'+id).checked==false && document.getElementById('ans4'+id).checked==false){
		alert("Please choose the right answer before you proceed further");
		return false;
	}else{
		if(document.getElementById('ans'+correct+id).checked==true){
			mytext="Thats correct. Option "+correct+" is the appropriate answer.";
		} else{
			mytext="Thats incorrect. Option "+correct+" is the appropriate answer.";
		}
		//var mytext="Thats incorrect. Option  Correct  Answer :  "+ document.getElementById('correctansoption'+correct).value;
		//html = "<html><head><title>Answer Explanation</title></head><body>" +mytext +"</body></html>"
		html = mytext;
		alert(html);
		//alert('finish');
		
		if(typ=="N"){
			var next=parseInt(id)+1;
			document.getElementById("displaytable"+id).style.display="none";
			document.getElementById("displaytable"+next).style.display="";
		}else{
			window.location.href="";
		}
		return true;
	}
}
