var flag;
function OnDateSelected(date)
{
	if(flag == false)
		document.Profile.textAnniversary.value = date;
	else
		document.Profile.textBirthday.value = date;
    showCalendar();
}

function showCalendar(date1)
{
	if(document.layers)
       {
		alert("This feature support only in IE4 or later");
      		return;
       }
	if(date1 == null)
	{
		//alert('hide all');
		flag=null;
		document.all.birthdayCal.style.display = "none";
		document.all.anniversaryCal.style.display = "none";
	}
	else
	{
		//alert(flag);
		if(flag == null)
		{
			flag = date1;
			document.all.birthdayCal.style.display = flag?"":"none";
			document.all.anniversaryCal.style.display = !flag?"":"none";
		}
		else
		{
			if(flag == date1)
			{
				flag=null;
				document.all.birthdayCal.style.display = "none";
				document.all.anniversaryCal.style.display = "none";
			}
			else
			{
				flag=date1;
				document.all.birthdayCal.style.display = flag?"":"none";
				document.all.anniversaryCal.style.display = !flag?"":"none";
			}
		}			
			
	}
}


String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}


function validate(form)
{
	if(form.textEmail && form.textEmail.value == '')
		return displayError('Email field cannot be empty.');
	else if(!/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(form.textEmail.value))
		return displayError('Invalid Email address.');
	if(form.textConfirmEmail && form.textConfirmEmail.value == '')
		return displayError('Confirm Email field cannot be empty.');
	else if(!/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(form.textConfirmEmail.value))
		return displayError('Invalid Confirm Email address.');
	if(form.textEmail && form.textConfirmEmail && form.textEmail.value != form.textConfirmEmail.value)
		return displayError('Email and Confirm Email do not match');
	if(form.textPassword && form.textPassword.value == '')
		return displayError('Password field cannot be empty.');
	if(form.textPasswordConfirm && form.textPasswordConfirm.value == '')
		return displayError('Confirm Password field cannot be empty.');
	if(form.textPassword && form.textPasswordConfirm)
	{
		if(form.textPasswordConfirm.value != form.textPassword.value)
			return displayError('Password and Confirm Password do not match');
	}
	
	if(form.textFirstName && form.textFirstName.value == '')
		return displayError('First Name field cannot be empty.');
		
	if(form.textLastName && form.textLastName.value == '')
		return displayError('Last Name field cannot be empty.');
		
	if(form.textAddress1 && form.textAddress1.value == '')
		return displayError('Address field cannot be empty.');

	if(form.textCity && form.textCity.value == '')
		return displayError('City field cannot be empty.');

	if(form.textZip)
	{
		form.textZip.value = form.textZip.value.trim();
	}

	if(form.textZip && form.textZip.value.trim() == '')
		return displayError('Zip Code field cannot be empty.');
	else if (form.textZip && !/^\d{5}(-\d{4})?$/.test(form.textZip.value.trim()))  //    
		return displayError('Invalid Zip Code.');



	if(form.textHomePhone && form.textHomePhone.value == '')
		return displayError('Home Phone field cannot be empty.'); 
	//else if(!/^((([ ]+)?\([2-9]\d{2}\)|([ ]+)?[2-9]\d{2})([ ]+)?[-.]?([ ]+)?\d{3}([ ]+)?[-.]?([ ]+)?\d{4}([ ]+)?|([ ]+)?\d{10}([ ]+)?|([ ]+)?\d{7}([ ]+)?|([ ]+)?\d{3}([ ]+)?[-.]?([ ]+)?\d{4}([ ]+)?)$/.test(form.textHomePhone.value))
	
	// now supports +1 before phone number
	else if(!/^(([ ]+)?([+][1])?([ ]+)?(\([1-9]\d{2}\)|[1-9]\d{2})([ ]+)?[-.]?([ ]+)?\d{3}([ ]+)?[-.]?([ ]+)?\d{4}([ ]+)?|([+][1])?\d{10}|([ ]+)?\d{7}([ ]+)?|([ ]+)?\d{3}([ ]+)?[-.]?([ ]+)?\d{4}([ ]+)?)$/.test(form.textHomePhone.value)) 
		return displayError('Phone number must have 7 or 10 digits and a valid phone number format');
		
	return true;
}

function displayError(msg)
{
	alert(msg);
	return false;
}