// JavaScript Document
//User Account Registration Page Validation starts
function submitFormAcntReg(url, option) {
		
	var info = "";
	if(option == 'SAVE'){
		if(document.createUserAccount.userName.value == "") { info = "User Name is required \n";
																document.createUserAccount.userName.focus();}
		else if(document.createUserAccount.email.value == "") { info += "Email is required \n"; 
																document.createUserAccount.email.focus();}
		else if(document.createUserAccount.password.value == "") { info += "Password is required \n";
																document.createUserAccount.password.focus();}
		else if(document.createUserAccount.passwordRepeat.value == "") { info += "Re-enter password is required \n"; 
																document.createUserAccount.passwordRepeat.focus();}
		
		if(info != "") {
			alert(info);
			return false;
		}
		
		if(document.createUserAccount.email.value != "" && !validemail(document.createUserAccount.email.value)){
			alert("Enter Valid Primary E-mail");
			document.createUserAccount.email.focus();
			return false;
		}
		var userNameExist = document.createUserAccount.userNameExist.value;
		
		if(userNameExist == "Exist") {
			alert("Login Id Already Exist. Please Choose another.");
			document.createUserAccount.userName.focus();
			return false;
		}
		//for(var i = 1; i <= 3; i++){
			if(document.getElementById('check1').checked){document.createUserAccount.check1.value = 'true';} 
			if(document.getElementById('check2').checked){document.createUserAccount.check2.value = 'true';} 
			if(document.getElementById('check3').checked){document.createUserAccount.check3.value = 'true';} 
		//}
	}
	var password = document.createUserAccount.password.value;
	var repeatPassword = document.createUserAccount.passwordRepeat.value;
	if(password != repeatPassword){
		alert("incorrect password");	
		document.createUserAccount.passwordRepeat.focus();
		return false;
	}
	
	document.createUserAccount.action = url;
}


function checkUserName() {
		
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
  		http_request = new XMLHttpRequest();
	} else if (window.ActiveXObject) { // IE
		http_request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	if (!http_request) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	
	if(http_request) {
						
		var userId = document.createUserAccount.userId.value;
		var userName = document.createUserAccount.userName.value;
		
		/*if(userName == "") {
			alert("Please Enter User Name");
			return false;
		}*/
		
		document.getElementById("loadUserNameAvail").style.display = "block";
		
		var url = "userNameCheck.do";
 		var parms = "&userId="+userId+"&userName="+userName;
						
		http_request.open ("POST",url, true);	
		http_request.onreadystatechange = function() {
			if(http_request.readyState == 4){
							
	 			var allValues = Trim(http_request.responseText);
	 			
	 			if(Trim(allValues) == "SESSION_EXPIRED") {
	 				document.getElementById("loadUserNameAvail").innerHTML = "Session Expired Logout and Login";
	 			} else {
	 				
	 				if(Trim(allValues) == "true") {
	 					document.getElementById("loadUserNameAvail").innerHTML = "Login ID Not Available";
	 					document.createUserAccount.userNameExist.value = "Exist";
	 				} else {
	 					document.getElementById("loadUserNameAvail").innerHTML = "Login ID Available";
	 					document.createUserAccount.userNameExist.value = "NotExist";	 					
	 				}
	 			}
	 		} 
		} 		
		http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		http_request.send(parms);
	}	
}

function validateForm(){
	
	var info = "";
	if(document.userLogin.userName.value == "") { info = "User Name is required \n"; document.userLogin.userName.focus(); }
	else if(document.userLogin.password.value == "")  { info += "Password is required \n"; document.userLogin.password.focus();}
		
	if(info != "") {
		alert(info);
		return false;
	}
}
//User Account Registration Page Validation ends

//User Profile validation starts

function show(option) {
	if(option == "show") {
		document.getElementById("more").style.display = "none";
		document.getElementById("hide").style.display = "block";
		document.getElementById("hideBlock").style.display = "block";
		/*document.getElementById('imgUploadTd').innerHTML = "<a href='#attachPhotoId' id='attachPhotoId' onclick='attachPhoto('0')'>AttachPhoto</a>";*/
		//document.getElementById("attachPhotoId").style.display = "block";
	} else if(option == "hide") {
		document.getElementById("more").style.display = "block";
		document.getElementById("hide").style.display = "none";
		document.getElementById("hideBlock").style.display = "none";
	}
}

function submitFormUsrReg(thisForm,urlarg,option) {
	if(option == "SAVE") {
		if ( ( thisForm.gender[0].checked == false ) && ( thisForm.gender[1].checked == false ) ) { 
		alert("Gender is Required");
		return false;}
		with(thisForm) {
			//if(!validateRequired(abc)) { gender.focus(); return false; }
			if(!validateRequired(firstName)) {firstName.focus(); return false; }
			if(!validateRequired(lastName)) {lastName.focus(); return false; }
			if(!validateRequired(email)) {email.focus(); return false; }
			if(email.value != "" && !validemail(email.value)){
				alert("Enter Valid Primary E-mail");
				document.thisForm.email.focus();
				return false;
			}
			if(document.getElementById('check1').checked){document.userRegistrationForm.check1.value = 'true';} 
			if(document.getElementById('check2').checked){document.userRegistrationForm.check2.value = 'true';} 
			if(document.getElementById('check3').checked){document.userRegistrationForm.check3.value = 'true';} 
			//var abc=document.userRegistrationForm.heightFeet;
			//var heightInch=document.userRegistrationForm.heightInch;
			// var height=parseInt(heightFeet*30+heightInch*2.5);
			 //url=url+"&height="+height;
			 var feetVal = document.getElementById("heightFeet").value;
			 var inchVal = document.getElementById("heightInch").value;
			 var feetInchVal=parseFloat((Number(feetVal)*12+Number(inchVal))*2.54);
			 urlarg=urlarg+"?height="+feetInchVal;
			 var photoVal = "";
			//alert(" -- "+countPhoto.value);
			for(var i= 0 ; i < countPhoto.value; i++)
			{
				//if(document.userRegistrationForm.val.value!="") {
				if(document.getElementById("prevImageHidd"+i).value != "null"){
					if(!fileValidate(document.getElementById("prevImageHidd"+i).value)) return false;
				}
				
				var value = document.getElementById("prevImageHidd"+i).value;
				//alert("value : "+value);
				if(value != null && value != "null" && value != "") {
					if(countPhoto.value-1 != i) {
						photoVal += value + "~";
					} else {
						photoVal += value;
					}
				} else {
					if(countPhoto.value-1 != i) {
						photoVal += "null" + "~";
					} else {
						photoVal += "null";
					}
				}
			}
			photoValue.value = photoVal;
			//infoId.valu = '<%=infoId%>';
		}
	if(document.userRegistrationForm.dob.value != "")
	{
		if(document.userRegistrationForm.DobYear.selectedIndex == 0 || document.userRegistrationForm.DobMonth.selectedIndex == 0 || document.userRegistrationForm.DobDate.selectedIndex == 0)
		{
			alert("Please Select Proper Year,Month and Date");
			return false;
		}
	}
	
	if(document.userRegistrationForm.url.value!="" && !validateurl(document.userRegistrationForm.url.value)) {
		alert("Please enter valid URL");
		document.userRegistrationForm.url.focus();
		return false;
	}	
}
	document.userRegistrationForm.action = urlarg;				
}

function fileValidate(file)
	{
		file= file.toLowerCase();
		var reg2 = new RegExp(".jpg");
		var reg3 = new RegExp(".gif");
		var reg4 = new RegExp(".jpeg");
		//var reg5 = new RegExp(".pdf");
		newArray = file.match(/.jpg\s.jpeg\s.gif/gi);

		if (reg2.test(file) || reg3.test(file) || reg4.test(file))
		{
			return true; 
		}
		 if(reg2.test(file)!=true || reg3.test(file)!=true || reg4.test(file)!=true)
		{
			alert( "Not  a valid file !  Your file name should extend with .jpg or .jpeg or .gif");
			//document.userRegistrationForm.uploadImage.focus();
			return false;
		}
}

function validateurl(url) {
	var splitUrl = url.split(".");
	if ( splitUrl.length < 3 )
	return false;
	else
	{
		if( splitUrl[0] != "www")
		{
			return false;
		}
		else
		{
			if( splitUrl[splitUrl.length-1].length > 1)
			{
				return true;
			}
			else
			{
				return false;
			}
		}
	}
		/*if(url.indexOf("www")==-1)
		return false;
	
	var afterhttp = url.substr(0,url.indexOf("."));
	var noOfdots = url.split(".");
	if (noOfdots < 2)
	return false;
	else
	{
	if(afterhttp.length <= 2) 
		return false;
	
	if(url.indexOf(".")>0) {
		var afterDot = url.substr(url.indexOf("."), url.length-1);
		if(afterDot.length<=1) 
			return false;
	}
	else {
		return false; 
	}
	return true;
	}*/
}


//User Profile validation ends


//Public user front end javascript
function sendUserMail(){
	
	var info = "";
	var validationSuccess = false;

	if(document.sendMailForm.fromAddress.value == ""){
		 info = "From Email is required \n";
		 document.sendMailForm.fromAddress.focus();
	}
	else if(document.sendMailForm.destnAddress.value == "") {
		info += "Destination Email is required \n"; 
		document.sendMailForm.destnAddress.focus();
	}
	if(info != ""){
		alert(info);	
		return false;
	}
	if(document.sendMailForm.fromAddress.value != "" && !validemail(document.sendMailForm.fromAddress.value)){
		alert("Enter Valid From E-mail");
		document.sendMailForm.fromAddress.focus();
		return false;
	}
	if(document.sendMailForm.destnAddress.value != "" && !validemail(document.sendMailForm.destnAddress.value)){
		alert("Enter Valid Destination E-mail");
		document.sendMailForm.destnAddress.focus();
		return false;
	}
	validationSuccess=true;
	
	if(validationSuccess){
		
		if (window.XMLHttpRequest) { // Mozilla, Safari, ...
			http_request = new XMLHttpRequest();
		} else if (window.ActiveXObject) { // IE
			http_request = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		if (!http_request) {
			alert('Giving up :( Cannot create an XMLHTTP instance');
			return false;
		}
		
		if(http_request) {
							
			var fromAddress = document.sendMailForm.fromAddress.value;
			var destnAddress = document.sendMailForm.destnAddress.value;
	
			document.getElementById("mailResponse").style.display = "block";
			//document.getElementById("mailForm").style.display = "none";
			var url = "userSendMail.do";
			var parms = "&fromAddress="+fromAddress+"&destnAddress="+destnAddress;
			http_request.open ("POST",url, true);
			http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			http_request.send(parms);
	
			http_request.onreadystatechange = function() {
				if(http_request.readyState == 4){
					var allValues = http_request.responseText;
					//alert(allValues);
					if(allValues == "SESSION_EXPIRED") {
						document.getElementById("mailResponse").innerHTML = "Session Expired Logout and Login";
					} else {
						
						if(allValues) {
							document.getElementById("mailResponse").innerHTML = "Mail Sent Successfuly to "+destnAddress;
							document.sendMailForm.destnAddress.value = "";
							document.sendMailForm.destnAddress.focus();
						} else {
							document.getElementById("mailResponse").innerHTML = "Mail Not Sent to "+destnAddress;
						}
					}
				}
				
			} 		
		}
	}//end If
	
}


function sendPassword(url, option){
	
	if(option == 'SEND'){
	
		if(document.sendPasswordForm.emailText.value == ""){
			alert("Email is required \n");
			 document.sendPasswordForm.emailText.focus();
			 return false;
		}
		if(document.sendPasswordForm.emailText.value != "" && !validemail(document.sendPasswordForm.emailText.value)){
			alert("Enter Valid E-mail");
			document.sendPasswordForm.emailText.focus();
			return false;
		}
		document.getElementById("sendMailDiv").style.display = "none";
		document.getElementById("loadImage").style.display = "block";
		if (window.XMLHttpRequest) { // Mozilla, Safari, ...
			http_request = new XMLHttpRequest();
		} else if (window.ActiveXObject) { // IE
			http_request = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		if (!http_request) {
			alert('Giving up :( Cannot create an XMLHTTP instance');
			return false;
		}
	
		if(http_request) {
							
			var email = document.sendPasswordForm.emailText.value;
			var url = url;
			var parms = "&email="+email;
			var allValues = "";
			http_request.open ("POST",url, true);
			http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			http_request.send(parms);
	
			http_request.onreadystatechange = function() {
				if(http_request.readyState == 4){
					allValues = http_request.responseText;
					//alert(allValues);
					
					if(allValues) {
						document.getElementById("mailResponseText").style.display = "block";
						document.getElementById("loadImage").style.display = "none";
						document.getElementById("sendMailDiv").style.display = "block";
						//document.getElementById("mailResponse").style.display = "block";
						document.getElementById("mailResponseText").innerHTML = allValues;   
					} else {
						document.getElementById("loadImage").style.display = "none";
						//document.getElementById("mailResponse").style.display = "block";
						document.getElementById("mailResponseText").style.display = "block";
						document.getElementById("sendMailDiv").style.display = "block";
						document.getElementById("mailResponseText").innerHTML = "The email address you entered was not found in our database, please try again or click cancel to retake the survey and register again.";
					}
				     
			}
				
			} 		
		}
	}else{
		document.sendPasswordForm.action = url;
	}
}


function validateRequired(field) {
	with (field) {
	  	if (value==null||value=="") {
 			alert(name.substring(0,1).toUpperCase()+name.substring(1) + " is required");return false;
  		} else {
 			return true;
  		}
	}
}


function validemail(mailStr){
	var matchStr=mailStr;
	//var isValid = (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(matchStr));	
	var isValid =/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*((\.[A-Za-z][A-Za-z])|(\.[A-Za-z][A-Za-z][A-Za-z]))+$/.test(matchStr);
	
	if(isValid){
		return true;
	}
	else{
		return false;
	}
}




