/**
 * This is a Javascript file for Registration pages
 * used in PRM Portal
 * Copyright Wipro Technologies Limited
 */

function submitEmailcheckform(){
	//alert (document.emailcheckform.regStep.value);
	var result = false;
	if ( document.emailcheckform.regStep.value == '0' ){
		result = checkEmailAtWebsecure();
	} else {
		result = submitRegStep1Form();
	}
	//alert (result);
	return result;
}
function submitRegStep1FormNow(){
	submitRegStep1Form();
}


/**
*  This function 
*  Trims the value of 
*  the input String
*/

function Trim(str)
{
	if(str != "")
	{
		return str.replace(/^\s+|\s+$/g,"");
	}
}


/**
*Function to unhide Details of div tag name passed
*@param divTagName - Div block that need to unhide
*/
function dispDetails(divTagName)
{
	//alert("inside dispDetails(...)");
	document.getElementById(divTagName).style.display="block";
}

/**
*Function to hide Details of div tag name passed
*@param divTagName - Div block that need to unhide
*/
function hideDetails(divTagName)
{
	//alert("inside hideDetails(...)");
	document.getElementById(divTagName).style.display="none";
}

/**
*Function to to validate email id fields and call websecure
*to check whether email id exist
*/
function checkEmailAtWebsecure()
{
	//alert(document.getElementById('flag').value);
	//alert("Clicked continue registration");
	var email1 = document.emailcheckform.emailAddress1.value;
	var email2 = document.emailcheckform.emailAddress2.value;
	email1 = Trim(email1);
	email2 = Trim(email2);
	formSubmitted = false;

	document.getElementById('emailAddress1Error').innerHTML = "";
	document.getElementById('emailAddress2Error').innerHTML = "";
	document.getElementById('formErrorMessage').innerHTML = "";
	if((email1 == null || email1 == "")&& (email2 == null || email2 == "")){		
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is a required field. Please enter the Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Confirm email address is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else if(email1 == null || email1 == ""){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else if ( email2 == null || email2 == ""){

		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Confirm email address is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}
	else if(!validate('emailcheckform','emailAddress1')&& !validate('emailcheckform','emailAddress2'))
	{
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		return false;
	}else if(!validate('emailcheckform','emailAddress1'))
	{
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";		
		return false;
	}else if(!validate('emailcheckform','emailAddress2'))	{		
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		return false;
	}else if(email1.toLowerCase() != email2.toLowerCase()){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		//document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else{
		document.emailcheckform.regStep.value="1";
		document.getElementById('emailAddress1Error').innerHTML = "";
		document.getElementById('emailAddress2Error').innerHTML = "";
		document.getElementById('formErrorMessage').innerHTML = "";
		//AJAX call to validate email at websecure
		//var http = createRequestObject();
		//checking whether host name is available
		//alert("host name is ---->" + window.location.href);
		//document.getElementById(emailAddress1Error).innerHTML.value = "";
		//document.getElementById(emailAddress2Error).innerHTML.value = "";
		//document.getElementById(formErrorMessage).innerHTML.value = "";
		//document.getElementById("hideRegister").style.display="block";
		formSubmitted = true;
		document.emailcheckform.submit();
	}
	
	return formSubmitted;
	//AJAX call to validate email at websecure
	//var http = createRequestObject();
	
	//checking whether host name is available
	//alert("host name is ---->" + window.location.href);	
	
	//Display official information area of the form
	//document.getElementById('hideRegister').style.display="block";
}

/**
 * Create request object for AJAX call 
 * for Websecure email verification
 * @return request object
 */
function createRequestObject() {
    var tmpXmlHttpObject;
    
    //depending on what the browser supports, use the right way to create the XMLHttpRequest object
    if (window.XMLHttpRequest) { 
        // Mozilla, Safari would use this method ...
        tmpXmlHttpObject = new XMLHttpRequest();
	
    } else if (window.ActiveXObject) { 
        // IE would use this method ...
        tmpXmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
    }
    
    return tmpXmlHttpObject;
}

/**
 * Connects to websecure and check whether email id exist
 * @param emailID -to validate with Websecure
 * @return response
 */
function makeGetRequest(emailID) {
    //make a connection to the server ... specifying that you intend to make a GET request 
    //to the server. Specifiy the page name and the URL parameters to send
    
	//http.open('get', 'definition.jsp?id=' + wordId);
	
    //assign a handler for the response
    //http.onreadystatechange = processResponse;
	
    //actually send the request to the server
    //http.send(null);
}

/**
 * Check all mandatory field values are typed in
 * if all values present submit form
 * @param 
 * @return boolean
 */
function validateInputFields(val) {
	//check firstName field is not empty
	//alert("Validating input fields");
	document.emailcheckform.regStep.value = "2";
	var errors = 0;
	
	var userFirstName = document.emailcheckform.firstName.value;
	userFirstName = Trim(userFirstName);
	var userLastName = document.emailcheckform.lastName.value;
	userLastName = Trim(userLastName);
	var userMiddleName = document.emailcheckform.middleName.value;
	userMiddleName = Trim(userMiddleName);
	
	//validate firstName field
	if(userFirstName == null || userFirstName == ""){
		//alert("Inside firstName check");
		//document.getElementByID('formErrorMessage').style.display="block";
		document.getElementById('firstNameError').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;First Name is a required field. Please enter the First Name.";
		errors = errors+1;
		//alert("errors count--->"+errors);
	}else
	{
		document.getElementById('firstNameError').innerHTML = "";
	}
	
	//validate lastName field
	if(userLastName == null || userLastName == ""){
		//alert("Inside firstName check");
		document.getElementById('lastNameError').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Last Name is a required field. Please enter the Last Name.";
		errors = errors+1;
		//alert("errors count--->"+errors);
	}else
	{
		document.getElementById('lastNameError').innerHTML = "";
	}
	
	//validate both email fields
	if(!validateEmailFields()){
		//alert("Inside firstName check");
		errors = errors+1;
		//alert("errors count--->"+errors);
	}
	
	//validate address fields
	if(!validateAddressFields()){
		//alert("Inside firstName check");
		//address1Error.innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Incomplete address fields.";
		errors = errors+1;
		//alert("errors count--->"+errors);
	}
	
	//validate profession type
	if(!validateProfessionType()){
		//alert("Inside firstName check");
		errors = errors+1;
		//alert("errors count--->"+errors);
	}
	//validate degree
	/*if(!validateDegree()){
		//alert("Inside firstName check");
		errors = errors+1;
		//alert("errors count--->"+errors);
	}*/
	//validate speciality1
	if(!validateSpeciality1()) {
		//alert("Inside firstName check");
		errors = errors+1;
		//alert("errors count--->"+errors);
	}
	
	if(val == 1) {
		//validate license numbers
		if(!validateLicenseNumber()) {
			//alert("Inside firstName check");
			errors = errors+1;
			//alert("errors count--->"+errors);
		}
	}
	
	//if errors>0, do not submit form
	if(errors > 0 ){
		document.getElementById('formErrorMessage1').innerHTML = populateCommonErrorDiv();
		//scroll(0,0);
		//alert("Inside return false condition");
		return false;
	}else
	{
		document.getElementById("formErrorMessage1").innerHTML = "";
	}
	return true;
}

/**
 * Populate error message innerHTML to div
 * 
 * @param 
 * @return String with inner HTML code
 */
function populateErrorDiv(htmlFieldName) {
	//alert("Inside Inner HTML creation function");
	var strInnerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Field is empty or incorrect value.";
	return strInnerHTML;
}

/**
 * Populate common error message innerHTML to div
 * 
 * @param 
 * @return String with inner HTML code
 */
function populateCommonErrorDiv() {
	//alert("Inside Inner HTML creation function");
	var strInnerHTML = "<div class='error_1'><div class='boldtxt'>Please correct the fields highlighted in red above, then resubmit.</div><div>For additional help please call the GlaxoSmithKline Response Center at 888-593-5977.</div></div>";
	return strInnerHTML;
}

/**
 * If user selects doctor option display license details
 * 
 * @param 
 * @return 
 */
function dispLicenseDetails() {
	//document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value 
	//alert("value selected---"+document.emailcheckform.professionType.options[document.emailcheckform.professionType.selectedIndex].value);
	var profType = document.emailcheckform.professionType.options[document.emailcheckform.professionType.selectedIndex].value; 
	if(profType=="Doctor")
	{
		dispDetails('licenseDetails');
	}else {
		hideDetails('licenseDetails');
	}
}

/**
 * Function to submit back to Registration Step1
 * This function is moved to the JSP as "<cmgt:link" tag cannot be used in JS file
 * @param 
 * @return 
 */
/*function submitToStep1() {
	document.registrationform.regStep.value="2";
	document.registrationform.action = "<cmgt:link app='*' cmd='PRMRegisterStep1' />";
	document.registrationform.submit();
}*/

/**
*Function to to validate email id fields
*/
function validateEmailFields()
{
	//alert(document.getElementById('flag').value);
	//alert("Validate email fields");
	var email1 = document.emailcheckform.emailAddress1.value;
	var email2 = document.emailcheckform.emailAddress2.value;
	email1 = Trim(email1);
	email2 = Trim(email2);
	
	if(email1 == null || email1 == "" || email2 == null || email2 == ""){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is a required field. Please enter the Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Confirm email address is a required field. Please enter the Email.";
		//formErrorMessage.innerHTML = populateCommonErrorDiv();
		return false;
	}else if(!validate('emailcheckform','emailAddress1') || !validate('emailcheckform','emailAddress2'))
	{
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		return false;
	}else if(email1.toLowerCase() != email2.toLowerCase()){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		//document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		//formErrorMessage.innerHTML = populateCommonErrorDiv();
		return false;
	}else{
		//No errors
		document.getElementById('emailAddress1Error').innerHTML = "";
		document.getElementById('emailAddress2Error').innerHTML = "";
		return true;
	}
}

/**
*Function to to validate email format
*@param form-id 
*@param element-id or element-name
*/
function validate(form_id,email){
	//var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var reg = /^(([A-Za-z0-9]+\'+)|([A-Za-z0-9]+\`+)|([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$/;
	var address = document.forms[form_id].elements[email].value;
    if(reg.test(address) == false){
		//alert('Invalid Email Address');
		return false;
    }else
	{
		return true;
	}
}

/**
*Function to to validateDea email format
*@param form-id 
*@param element-id or element-name
*/
function validateDea(form_id,dea){
	var reg = /^([A-Za-z]{2})([0-9]{7})$/;
    var address = document.forms[form_id].elements[dea].value;
    if(reg.test(address) == false){
		//alert('Invalid Email Address');
		return false;
    }else
	{
		return true;
	}
}

/**
*Function to validate alphanumeric with space format
*@param value
*/
function validateAlphaNumWithSpace(value){
	var reg = /^[a-zA-Z0-9 -]+$/;
    var address = value;
    if(reg.test(address) == false){
		return false;
    } else {
		return true;
	}
}
/**
*Function to validate alphanumeric with out space format
*@param value
*/
function validateAlphaNum(value) {
	var reg = /^[a-zA-Z0-9]+$/;
    if(reg.test(value) == false){
		return false;
    } else {
		return true;
	}
}

/**
*Function to validate numeric with out space format
*@param value
*/
function validateNumeric(value) {
	var reg = /^[0-9]+$/;
    if(reg.test(value) == false){
		return false;
    } else {
		return true;
	}
}

/**
*Function to validate alphabets with space format
*@param value
*/
function validateAlphaWithSpace(value){
	var reg = /^[a-zA-Z ]+$/;
    //var address = document.forms[form_id].elements[elementID].value;
	var address = value;
    if(reg.test(address) == false){
		//alert('Invalid Email Address');
		return false;
    }else
	{
		return true;
	}
}

/**
*Function to validate alphabets without space format
*@param value
*/
function validateAlpha(value){
	var reg = /^[a-zA-Z]+$/;
    //var address = document.forms[form_id].elements[elementID].value;
	var address = value;
    if(reg.test(address) == false){
		//alert('Invalid Email Address');
		return false;
    }else
	{
		return true;
	}
}

/**
*Function to validate angular brackets in license numbers
*@param value
*/
function validateAngleBracket(value){
	var reg = /[<>]+/;
    var address = value;
    if(reg.test(address) == false){
		//alert('No match');
		return false;
    }else
	{
		return true;
	}
}

/**
*Function to to validate address fields
*/
function validateAddressFields()
{
	//alert("Validate address fields");
	var ddlOptions = document.getElementById("ddlList");
    //var index = ddlOptions.selectedIndex;
	var index = document.emailcheckform.countrySelection.options.selectedIndex;
    //alert("Selected country index is ="+index);
    
    switch (index)
    {
    	case 0 :
    		//1st country US
    		
    		var street = document.emailcheckform.street1.value;
			street = Trim(street);
    		//alert("street = "+street);
    		var cityName = document.emailcheckform.cityName1.value;
			cityName = Trim(cityName);
    		//alert("cityName = "+cityName);
    		var stateIndex = document.emailcheckform.stateSelection1.options[document.emailcheckform.stateSelection1.selectedIndex].value;
    		//alert("stateIndex = "+stateIndex);
    		var zipCode = document.emailcheckform.zipCode1.value;
			zipCode = Trim(zipCode);
    		//alert("zipCode = "+zipCode);
			var zipCode11 = document.emailcheckform.zipCode11.value;
			
			var errorCount = 0;
    		
    		//if(street == null || street == "" || cityName == null || cityName == ""	|| stateIndex == 0 || zipCode == null || zipCode == "")
    		//{
    			//document.getElementById('address1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Address is a required field. Please enter the Address.";
    			//return false;
    		//}
			if(street == null || street == "")
	    	{
	    		document.getElementById('street1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Street is a required field. Please enter the street.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('street1Error').innerHTML = "";
	    	}
			if(cityName == null || cityName == "")
	    	{
	    		document.getElementById('cityName1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;City is a required field. Please enter the city.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('cityName1Error').innerHTML = "";
	    	}
			if(stateIndex == 0)
	    	{
	    		document.getElementById('stateSelection1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;State is a required field. Please enter the state.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('stateSelection1Error').innerHTML = "";
	    	}
			if(zipCode == null || zipCode == "")
	    	{
	    		document.getElementById('zipCode1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip code is a required field. Please enter the zip code.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('zipCode1Error').innerHTML = "";
	    	}
			if(errorCount>0)
			{
				return false;
			}
    		
			if(!validateAlphaWithSpace(cityName))
    		{
    			//document.getElementById('address1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid City name.";
    			document.getElementById('cityName1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid City name.";
    			return false;
    		}
    		else if(!validateNumeric(zipCode))
    		{
    			//document.getElementById('address1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			document.getElementById('zipCode1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			return false;
    		}
    		else if(zipCode.length < 5)
    		{
    			document.getElementById('zipCode1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			return false;
    		}
    		else if(zipCode11 != '' && !validateNumeric(zipCode11))
    		{
    			//document.getElementById('address1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			document.getElementById('zipCode1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			return false;
    		}
    		else if(zipCode11 != '' && zipCode11.length<4)
    		{
    			//document.getElementById('address1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			document.getElementById('zipCode1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			return false;
    		}
    		else{
    			//no error
    			document.getElementById('address1Error').innerHTML = "";
    			document.getElementById('cityName1Error').innerHTML = "";
    			document.getElementById('zipCode1Error').innerHTML = "";
    			return true;
    		}
    		break;
    	case 1 :
    		//2nd country Mexico
    		var street = document.emailcheckform.street2.value;
    		street = Trim(street);
    		var cityName = document.emailcheckform.cityName2.value;
    		cityName = Trim(cityName);
    		var stateIndex = document.emailcheckform.stateSelection2.options[document.emailcheckform.stateSelection2.selectedIndex].value;
    		var zipCode = document.emailcheckform.zipCode2.value;
    		zipCode = Trim(zipCode);
    		
    		var errorCount = 0;
    		
    		//if(street == null || street == "" || cityName == null || cityName == ""	|| stateIndex == 0 || zipCode == null || zipCode == "")
    		//{
    			//document.getElementById('address2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Address is a required field. Please enter the Address.";
    			//return false;
    		//}
    		
    		if(street == null || street == "")
	    	{
	    		document.getElementById('street2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Street is a required field. Please enter the street.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('street2Error').innerHTML = "";
	    	}
			if(cityName == null || cityName == "")
	    	{
	    		document.getElementById('cityName2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;City/Town is a required field. Please enter the city/town.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('cityName2Error').innerHTML = "";
	    	}
			if(stateIndex == 0)
	    	{
	    		document.getElementById('stateSelection2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;State is a required field. Please enter the state.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('stateSelection2Error').innerHTML = "";
	    	}
			if(zipCode == null || zipCode == "")
	    	{
	    		document.getElementById('zipCode2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Postal code is a required field. Please enter the postal code.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('zipCode2Error').innerHTML = "";
	    	}
			
			if(errorCount>0)
			{
				return false;
			}
    		
    		if(!validateAlphaWithSpace(cityName))
    		{
    			document.getElementById('cityName2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid City/Town name.";
    			return false;
    		}
    		else if(!validateNumeric(zipCode))
    		{
    			document.getElementById('zipCode2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Postal Code entered is invalid. Please enter a valid Postal Code.";
    			return false;
    		}
    		else{
    			//no error
    			document.getElementById('address2Error').innerHTML = "";
    			document.getElementById('cityName2Error').innerHTML = "";
    			document.getElementById('zipCode2Error').innerHTML = "";
    			return true;
    		}
    		break;
    	case 2 :
    		//3rd country Canada
    		var street = document.emailcheckform.street3.value;
    		street = Trim(street);
    		var cityName = document.emailcheckform.cityName3.value;
    		cityName = Trim(cityName);
    		var stateIndex = document.emailcheckform.stateSelection3.options[document.emailcheckform.stateSelection3.selectedIndex].value;
    		var zipCode = document.emailcheckform.zipCode3.value;
    		zipCode = Trim(zipCode);
    		
    		var errorCount = 0;
    		
    		//if(street == null || street == "" || cityName == null || cityName == ""	|| stateIndex == 0 || zipCode == null || zipCode == "")
    		//{
    			//document.getElementById('address3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Address is a required field. Please enter the Address.";
    			//return false;
    		//}
    		
    		if(street == null || street == "")
	    	{
	    		document.getElementById('street3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Street is a required field. Please enter the street.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('street3Error').innerHTML = "";
	    	}
			if(cityName == null || cityName == "")
	    	{
	    		document.getElementById('cityName3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;City is a required field. Please enter the city.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('cityName3Error').innerHTML = "";
	    	}
			if(stateIndex == 0)
	    	{
	    		document.getElementById('stateSelection3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Province is a required field. Please enter the province.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('stateSelection3Error').innerHTML = "";
	    	}
			if(zipCode == null || zipCode == "")
	    	{
	    		document.getElementById('zipCode3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Postal code is a required field. Please enter the Postal code.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('zipCode3Error').innerHTML = "";
	    	}
			
			if(errorCount>0)
			{
				return false;
			}
    		
    		if(!validateAlphaWithSpace(cityName))
    		{
    			document.getElementById('cityName3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid City name.";
    			return false;
    		}
    		else if(!validateAlphaNum(zipCode))
    		{
    			document.getElementById('zipCode3Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Postal Code entered is invalid. Please enter a valid Postal Code.";
    			return false;
    		}
    		else{
    			//no error
    			document.getElementById('address3Error').innerHTML = "";
    			document.getElementById('cityName3Error').innerHTML = "";
    			document.getElementById('zipCode3Error').innerHTML = "";
    			return true;
    		}
    		break;
    	case 3 :
    		//4th country Peutro rico
    		var street = document.emailcheckform.street4.value;
    		street = Trim(street);
    		var cityName = document.emailcheckform.cityName4.value;
    		cityName = Trim(cityName);
    		var stateIndex = document.emailcheckform.stateSelection4.options[document.emailcheckform.stateSelection4.selectedIndex].value;
    		var zipCode = document.emailcheckform.zipCode4.value;
    		zipCode = Trim(zipCode);
    		
    		var errorCount = 0;
    		
    		//if(street == null || street == "" || cityName == null || cityName == ""	|| stateIndex == 0 || zipCode == null || zipCode == "")
    		//{
    			//document.getElementById('address4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Address is a required field. Please enter the Address.";
    			//return false;
    		//}
    		
    		if(street == null || street == "")
	    	{
	    		document.getElementById('street4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Street is a required field. Please enter the street.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('street4Error').innerHTML = "";
	    	}
			if(cityName == null || cityName == "")
	    	{
	    		document.getElementById('cityName4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;City is a required field. Please enter the city.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('cityName4Error').innerHTML = "";
	    	}
			if(stateIndex == 0)
	    	{
	    		document.getElementById('stateSelection4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;State is a required field. Please enter the state.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('stateSelection4Error').innerHTML = "";
	    	}
			if(zipCode == null || zipCode == "")
	    	{
	    		document.getElementById('zipCode4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip code is a required field. Please enter the zip code.";
	    		errorCount++;
	    		//return false;
	    	}else
	    	{
	    		document.getElementById('zipCode4Error').innerHTML = "";
	    	}
			
			if(errorCount>0)
			{
				return false;
			}
    		
    		if(!validateAlphaWithSpace(cityName))
    		{
    			document.getElementById('cityName4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid City name.";
    			return false;
    		}
    		else if(!validateNumeric(zipCode))
    		{
    			document.getElementById('zipCode4Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Zip Code entered is invalid. Please enter a valid Zip Code.";
    			return false;
    		}
    		else{
    			//no error
    			document.getElementById('address4Error').innerHTML = "";
    			document.getElementById('cityName4Error').innerHTML = "";
    			document.getElementById('zipCode4Error').innerHTML = "";
    			return true;
    		}
    		break;
    }
}

function validateProfessionType()
{
	//alert("Validate address fields");
	//var ddlOptions = document.getElementById("ddlList");
    //var index = ddlOptions.selectedIndex;
	var index = document.emailcheckform.professionType.options.selectedIndex;
	if(index == 0)
	{
		document.getElementById('professionTypeError').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please select a professional type.";
		return false
	}else
	{
		document.getElementById('professionTypeError').innerHTML = "";
	}
	return true;
    //alert("Selected country index is ="+index);
}

function validateSpeciality1()
{
	//alert("Validate address fields");
	//var ddlOptions = document.getElementById("ddlList");
    //var index = ddlOptions.selectedIndex;
	var index = document.emailcheckform.speciality1.options.selectedIndex;
	if(index == 0)
	{
		document.getElementById('speciality1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please select a specialty.";
		return false
	}else
	{
		document.getElementById('speciality1Error').innerHTML = "";
	}
	return true;
}

//validate atleast 1 degree is selected
function validateDegree()
{
	var ckbx_arr=document.getElementsByName('degree'); 
	var ckbx_arr_ln=ckbx_arr.length; 
	for(var i=0;i<ckbx_arr_ln;i++){
		if(ckbx_arr[i].checked)
		{
			document.getElementById("degreeError").innerHTML = "";
			return true;
		} 
	} 
	document.getElementById("degreeError").innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please select a professional designation.";
	return false; 
}

//To check only selected checkboxes
function checkSelectedCheckBox(checkBoxName, strArray){ 
	var chk = document.getElementsByName(checkBoxName);

	for(var arrayCount=0,arraySize=strArray.length; arrayCount < arraySize; arrayCount++)
	{
		if((strArray[arrayCount]!= null) || (strArray[arrayCount]==''))
		{
			for(var i=0,limit=chk.length; i < limit; i++)
			{
				//if checkbox value equal to array element value select it
				if(chk[i].value == strArray[arrayCount])
				{
					chk[i].checked = true;
					break;
				}
			}
		}
	}
}

//To validate if user entered at least 1 of the 
//license number fields DEA, MedLicense, AMA, AOA or Other 
function validateLicenseNumber()
{
	var selectedLicenseType = document.emailcheckform.selectedLicenseType.selectedIndex;
	var licenseNum = document.getElementById('otherLicense').value;
	licenseNum =  Trim(licenseNum);
	var stateLicenseNumber ="";
	var deaNumber = "";
	var meNumber = "";
	var aoaNumber = "";
	var npi = "";
	var intLicenseErrors = 0;
	var validationSuccess=false;

	document.getElementById("licenseError").innerHTML = "";
	if(licenseNum == null || licenseNum == ""){
		document.getElementById("licenseError").innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please enter the license number.";
		validationSuccess=false;
		intLicenseErrors = intLicenseErrors+1;
	}

	if(selectedLicenseType == 0){
		document.getElementById("licenseTypeError").innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please select the license type.";
		validationSuccess=false;
		intLicenseErrors = intLicenseErrors+1;
	}else{
		document.getElementById("licenseTypeError").innerHTML = "";
	}

	if(selectedLicenseType == 1){
		npi=licenseNum;
		npi = Trim(npi);
	} else if(selectedLicenseType == 2){
		stateLicenseNumber=licenseNum;
		stateLicenseNumber = Trim(stateLicenseNumber);
	}   else if(selectedLicenseType == 3){
		deaNumber=licenseNum;
		deaNumber = Trim(deaNumber);
	} else if(selectedLicenseType == 4){
		meNumber=licenseNum;
		meNumber = Trim(meNumber);
	}  else if(selectedLicenseType == 5){
		aoaNumber=licenseNum;
		aoaNumber = Trim(aoaNumber);
	} 

	//country based medical license state selected
	var usLicenseStateSelected = document.emailcheckform.usLicenseState.selectedIndex;
	
	if(deaNumber!=null && deaNumber!="")
	{
		if(!validateDea('emailcheckform','otherLicense')){
			document.getElementById("licenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;DEA number entered is invalid. Please provide a valid DEA number.";
			validationSuccess=false;
			intLicenseErrors = intLicenseErrors+1;
		}
		else{
			validationSuccess=true;
		}
	}else{
		validationSuccess=true;
	}
	
	if (stateLicenseNumber != "" || usLicenseStateSelected != 0)
	{
			if(stateLicenseNumber!="" && usLicenseStateSelected == 0)
			{
				document.getElementById("medicalLicenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please select Licensing state";
				validationSuccess=false;
				intLicenseErrors = intLicenseErrors+1;
			}else if(stateLicenseNumber=="" && usLicenseStateSelected != 0)
			{
				document.getElementById("medicalLicenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Please provide state License number";
				validationSuccess=false;
				intLicenseErrors = intLicenseErrors+1;
			}else if(validateAngleBracket(stateLicenseNumber))
			{
				document.getElementById("medicalLicenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Invalid characters in state License number";
				validationSuccess=false;
				intLicenseErrors = intLicenseErrors+1;
			}else
			{
				document.getElementById("medicalLicenseError").innerHTML = "";
			}
	}else
	{
		document.getElementById("medicalLicenseError").innerHTML = "";
	}
	
	if(meNumber!=null && meNumber!="")
	{
		if(meNumber.length < 11 || !validateNumeric(meNumber)){
			document.getElementById("licenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;AMA/ME License should be 11 digit number";
			validationSuccess=false;
			intLicenseErrors = intLicenseErrors+1;
		}else{
			validationSuccess=true;
		}
	}else{
		validationSuccess=true;
	}
	if(aoaNumber!=null && aoaNumber!="")
	{
		if(aoaNumber.length < 11 || !validateNumeric(aoaNumber)){
			document.getElementById("licenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;AOA License should be 11 digit number";
			validationSuccess=false;
			intLicenseErrors = intLicenseErrors+1;
		}else{
			validationSuccess=true;
		}
	}else{
		validationSuccess=true;
	}
	
	//Start - Release3.4 changes
	if(npi!=null && npi!="")
	{
		if(npi.length != 10){
			document.getElementById("licenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;NPI License should be 10 digit number";
			validationSuccess=false;
			intLicenseErrors = intLicenseErrors+1;
		}else if(!validateNumeric(npi)){
			document.getElementById("licenseError").innerHTML = "<div class='clearAll'></div><div class='mBot10'></div><img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;NPI License should be 10 digit number";
			validationSuccess=false;
			intLicenseErrors = intLicenseErrors+1;
		}else{
			validationSuccess=true;
		}
	}else{
		validationSuccess=true;
	}
	//End - Release3.4 changes
	
	if(intLicenseErrors > 0){
		validationSuccess = false;
	}else{
		document.getElementById("licenseError").innerHTML = "";
		document.getElementById("medicalLicenseError").innerHTML = "";
		document.getElementById("licenseTypeError").innerHTML = "";
		validationSuccess = true;
	}
	return validationSuccess;
}

//to check user exist at websecure
function checkUserIDAtWebsecure()
{
	var userID = document.registrationform.userName.value;
	userID = Trim(userID);
	//create request object
	//var http = createRequestObject();
}

//added for release 3.4 
/**
*Function to to validate email id fields
*/
function valEmailfeilds()
{
	var email1 = document.emailcheckform.emailAddress1.value;
	var email2 = document.emailcheckform.emailAddress2.value;
	email1 = Trim(email1);
	email2 = Trim(email2);
	formSubmitted = false;
	//alert("checkEmail : email1:"+email1+":email2 :"+email2);

	document.getElementById('emailAddress1Error').innerHTML = "";
	document.getElementById('emailAddress2Error').innerHTML = "";
	document.getElementById('formErrorMessage').innerHTML = "";
	if((email1 == null || email1 == "")&& (email2 == null || email2 == "")){		
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is a required field. Please enter the Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Confirm email address is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else if(email1 == null || email1 == ""){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else if ( email2 == null || email2 == ""){

		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Confirm email address is a required field. Please enter the Email.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}
	else if(!validate('emailcheckform','emailAddress1')&& !validate('emailcheckform','emailAddress2'))
	{
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		return false;
	}else if(!validate('emailcheckform','emailAddress1'))
	{
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";		
		return false;
	}else if(!validate('emailcheckform','emailAddress2'))	{		
		document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email is invalid. Please enter valid Email.";
		return false;
	}else if(email1.toLowerCase() != email2.toLowerCase()){
		document.getElementById('emailAddress1Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		//document.getElementById('emailAddress2Error').innerHTML = "<img src='../images/prm/error_icon.gif' alt='' align='absmiddle' class='mTop2' />&nbsp;Email and Confirm Email should be the same.";
		document.getElementById('formErrorMessage').innerHTML = populateCommonErrorDiv();
	}else{
		document.emailcheckform.regStep.value="1";
		document.getElementById('emailAddress1Error').innerHTML = "";
		document.getElementById('emailAddress2Error').innerHTML = "";
		document.getElementById('formErrorMessage').innerHTML = "";
		//alert("regStep : "+document.emailcheckform.regStep.value);
		formSubmitted = true;
	}
	
	return formSubmitted;
	
}
