function ClearUsername(obj){
	if(obj.value=="Username")
		obj.value = "";
}

function ClearPassword(obj){
	if(obj.value=="Password")
		obj.value = "";
}
////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////

function CheckCountryUS(dForm)
{
	if(dForm.Slct_Country)
	{
		if(dForm.Slct_Country.value == "US")
		{
			document.getElementById("row_province").className = "Hidden";
			document.getElementById("row_postalcode").className = "Hidden";

			document.getElementById("row_state").className = "UnHidden";
			document.getElementById("row_zipcode").className = "Hidden";
		}
		else
		{
			document.getElementById("row_state").className = "Hidden";
			document.getElementById("row_zipcode").className = "Hidden";

			document.getElementById("row_province").className = "Hidden";
			document.getElementById("row_postalcode").className = "Hidden";
		}
	}
}

////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////
	
function CheckUsername(dField,dName)
{
	//alert("In function");
	//commented  by rups 18apr2006 - log 492
    var fieldvalue = dField.value;

    if (fieldvalue.charAt(0) == " ") {
        alert(dic['Alert_UserNameNotStartWithSpace']);
        dField.focus();
        return false;
    }
	
	//Added by rups 18apr2006 - log 492
	var sField = dField;
	var sUserName = sField.value;

	if (CheckFieldEmpty(sField, dName))
		return false;

	if (sUserName.length >30)
	{
		alert(dic['Alert_UserNameLen']);
		sField.focus();
		return false;
	}
	var sAlert=dic['Alert_UserNameAlpha2']
	var sExtraChar = "_- ";
	if (CheckAlphaNumericWithChar(sField, sAlert,sExtraChar))
	    return false;
	
	if (CheckDoubleDash(sField, dName, sAlert))
		return false;	

}

////////////////////////////////////////////////////////////
//Added by rups 19apr2006 - log 492

function CheckDoubleDash(dField,dName,dAlert)
{
	fieldvalue=dField.value;
	for(i=0;i<fieldvalue.length;i++)
	{
		if (fieldvalue.charAt(i)=="-")
		{
			if (i<(fieldvalue.length-1))
				if(fieldvalue.charAt(i)==fieldvalue.charAt(i+1))
				{
					alert(dAlert)
					dField.focus();
					return true;
				}
		}
	}

}
//Added by rups 18apr2006 - log 492

function CheckPassword(dField)
{
	
	var sPassword = dField.value;
	
	if (CheckFieldEmpty(dField, dic["Alert_Password"]))
		return false;


	if (sPassword.length < 6 || sPassword.length > 30)
	{
		alert(dic["Alert_PasswordLen"]);
		dField.focus();
		return false;
	}

	var sAlert =  dic['Alert_PasswordLenAlpha']
	sExtraChar="_-!";

	if (CheckAlphaNumericWithChar(dField, sAlert,sExtraChar))
		return false;

	if (CheckDoubleDash(dField, dic["Alert_Password"], sAlert))
		return false;
}

////////////////////////////////////////////////////////////
function CheckPasswordSpecial(obj){
	var strongPassword = false;
	var specialChar = "!@#$%^&*()_+-='\";:[{]}\|.>,</?`~";
	var numberChar = "0123456789";
	var normalChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	//check length
	if(obj.value.length < 6 || obj.value.length > 30){
		alert(dic["Alert_PasswordLen"]);
		obj.focus();
		return false;
	}
	//check if password has a special character
	for(i=0;i<obj.value.length;i++)
		if(specialChar.indexOf(obj.value.charAt(i))>-1)
		{
			strongPassword = true;
			break;
		}
		else
			strongPassword = false;
			
	if(!strongPassword){
		alert(dic["Alert_PasswordMustHaveOneSpecialChar"] + specialChar);
		obj.focus();
		return false;
	}
	//check if password has a numeric character
	for(i=0;i<obj.value.length;i++)
		if(numberChar.indexOf(obj.value.charAt(i))>-1)
		{
			strongPassword = true;
			break;
		}
		else
			strongPassword = false;
			
	if(!strongPassword){
		alert(dic["Alert_PasswordMustHaveOneNumericChar"]);
		obj.focus();
		return false;
	}	
	//check if password has valid characters
	for(i=0;i<obj.value.length;i++)
		if((numberChar+specialChar+normalChar).indexOf(obj.value.charAt(i))==-1)
		{
			strongPassword = false;
			break;
		}
	if(!strongPassword){
		alert(dic["Alert_PasswordInvalid"]);
		obj.focus();
		return false;
	}
	
	//valid password
	return true;
}
////////////////////////////////////////////////////////////
function CheckValidPassword(dForm)
{
	var sField = dForm.Txt_Password;
	var sPassword = sField.value;

	//Changed by rups 18apr2006 - log 492
	
	if (CheckPassword(sField) == false)
		return false;

	if (sPassword != dForm.Txt_Password2.value)
	{
		alert(dic['Alert_SamePassword']);
	
		dForm.Txt_Password2.focus();
		return false;
	}
}
////////////////////////////////////////////////////////////

function CheckEmptyPassQ(dForm)
{
	return CheckFieldEmpty(dForm.Txt_PassQ, "Password Reminder Question");
}

////////////////////////////////////////////////////////////

function CheckEmptyPassA(dForm)
{
	return CheckFieldEmpty(dForm.Txt_PassA, "Password Reminder Answer");
}

////////////////////////////////////////////////////////////

function CheckValidEmail(dForm)
{
	var sField = dForm.Txt_Email;
	var sEmail = sField.value;
	
	if (CheckFieldEmpty(sField, dic["Alert_Email"]))
		return false;
	
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(sEmail)) {
		alert(dic['Alert_ValidEmail']);
		sField.focus
		return false;
	}
	/*var sChar, sAscii

	var atCount = 0;
	var dotCount = 0;
	var n = 0;

	var st = new String;
	st = sEmail.split(" ");
	st = st.join("");
	st = st.toLowerCase();

	sAscii = st.charCodeAt(0);
	for(n=0; n<st.length; n++)
	{
		sChar = st.charCodeAt(n);
		if ((sChar<48) || (sChar>57))
		{
			if ((sChar<97) || (sChar>122))
			{ 
				if ((sChar == 95) || (sChar==46) || (sChar==64)|| (sChar==45))
				{
					//alert("special but correct");
				}
				else
				{ 
					alert(dic['Alert_ValidEmail']);
					sField.focus();
					count = 0;
					return false;
				}
			}
		}
		if(st.charAt(n)=='@'&& n==0) atCount = atCount + 1;
		if(st.charAt(n)=='@'&& st.charAt(n+1)=='.') atCount = atCount+1;
		if(st.charAt(n)=='@') atCount = atCount+1;
		if(st.charAt(n)=='.') 
		{
			if(st.charAt(n+1)=='.' || n==st.length-1 ) atCount=2;
			dotCount = dotCount + 1;
		}
	}

	if(atCount!=1 || dotCount<1) 
	{
		alert(dic['ValidEmail']);
		sField.focus();
		return false;
	}
	else if ((sAscii < 48) || (sAscii > 122)) 
	{
		alert(dic['Alert_ValidEmail']);
		sField.focus();
		count = 0;
		return false;
	}
	else
	{
		x = st.lastIndexOf("@");
		y = st.lastIndexOf(".");

		if (y < x )
		{
			alert(dic['Alert_ValidEmail']);
			sField.focus();
			return false;
		}
	}
	var arrTan =  st.split('@');
	var arrFirstTanEmail =  arrTan[0].split('.');
	if( arrFirstTanEmail.length > 1 ) 
	{
		alert(dic['Alert_ValidEmail']);
		sField.focus();
		return false;
	}*/	

	if (sEmail != dForm.Txt_Email2.value)
	{
		alert(dic['Alert_SameEmail']);

		dForm.Txt_Email2.focus();
		return false;
	}

}

////////////////////////////////////////////////////////////
//////////////Added by Saakshi - 14th Apr'04
function CheckAlphaNumeric(dField,dName)
{
	fieldvalue=dField.value;
	chkchar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789,- '";
	for(i=0;i<fieldvalue.length;i++)
	{
		if(chkchar.indexOf(fieldvalue.charAt(i))==-1)
		{
			Charecter_Alert(dName);				
			dField.focus();
			return true;
		}
	}
}

////////////////////////////////////////////////////////////
//Added by rups 18apr2006 - log 492
function CheckAlphaNumericWithChar(dField,dName,dExtraChar)
{
	fieldvalue=dField.value;
	chkchar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" + dExtraChar;
	for(i=0;i<fieldvalue.length;i++)
	{
		if(chkchar.indexOf(fieldvalue.charAt(i))==-1)
		{
			alert(dName);	
			dField.focus();
			return true;
		}
	}
}

////////////////////////////////////////////////////////////

function CheckLength(dField,dName,dLength)
{
	fieldvalue=dField.value;				
	if (fieldvalue.length > dLength)
		{
		alert(dic["Alert_ContentLength"].replace("{TEXT}", dLength));
		dField.focus();
		return true;		
		}
}	

////////////////////////////////////////////////////////////

function CheckCharecter(dField,dName)
	{
		return;
		fieldvalue=dField.value;
		chkchar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' ";
		for(i=0;i<fieldvalue.length;i++)
		{
			if(chkchar.indexOf(fieldvalue.charAt(i))==-1)
			{
				Charecter_Alert(dName);				
				dField.focus();
				return true;
			}
		}
	}
	
	function CheckCharecterAndNum(dField,dName)
	{
		alert(44);
		return false;
		fieldvalue=dField.value;
		chkchar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
		for(i=0;i<fieldvalue.length;i++)
		{
			alert(fieldvalue.charAt(i))
			if(chkchar.indexOf(fieldvalue.charAt(i))==-1)
			{
				Charecter_Alert(dName);				
				dField.focus();
				//return true;
			}
		}

	}
////////////////////////////////////////////////////////////

function CheckNumeric(dField,dName)
	{
		fieldvalue=dField.value;
		chknums="0123456789";		
		for(i=0;i<fieldvalue.length;i++)
		{
			if(chknums.indexOf(fieldvalue.charAt(i))==-1)
			{
				Numeric_Alert(dName);				
				dField.focus();
				return true;
			}
		}
	}	
////////////////////////////////////////////////////////////
function CheckNumericFloat(dField,dName) //Added by Rup - 23Jan2006 - log 403 judge fee validation
	{
		fieldvalue=dField.value;
		chknums="0123456789.";		
		for(i=0;i<fieldvalue.length;i++)
		{
			if(chknums.indexOf(fieldvalue.charAt(i))==-1)
			{
				Numeric_Alert(dName);				
				dField.focus();
				return true;
			}
		}
	}	
////////////////////////////////////////////////////////////

function validate_contact(dForm)
{
	if (showNameInfo){
		if (CheckFieldEmpty(dForm.Txt_FirstName, dic["Alert_FirstName"]))
			return false;

		if (document.location.href.toLowerCase().indexOf("fan_register_voice.asp") == -1)
		    if (CheckFieldEmpty(dForm.Txt_LastName, dic["Alert_LastName"]))
			    return false;
	}
	if (showAddressInfo){
		if (CheckFieldSelect(dForm.Slct_Country, dic["Alert_Country"]))
			return false;

		if (dForm.Slct_Country.value=="US")
		{
			if (CheckFieldSelect(dForm.Slct_State, dic["Alert_State"]))
				return false;
		}
		else
		{
			if (CheckAlphaNumeric(dForm.Txt_Province, " " + dic["Alert_Provine"]))
				return false;		
		}
	}
	if (showDemographicsInfo){
		if (CheckRadioSelect(dForm.Radio_Gender, dic["Alert_Gender"]))
			return false;

		if (CheckFieldSelect(dForm.Slct_AgeGrp, dic["Alert_Age"]))
			return false;
		
		if (dForm.Slct_AgeGrp.value == "2")
		{
			dForm.Slct_AgeGrp.focus();
			alert(dic.Alert_UnderAge);
			return false;
		}
	}	
	return true;
}


function validate_contactOld(dForm)
{
	if (CheckFieldEmpty(dForm.Txt_FirstName, "First Name"))
		return false;

	if (CheckFieldEmpty(dForm.Txt_LastName, "Last Name"))
		return false;

	if (CheckFieldEmpty(dForm.Txt_City, "City"))
		return false;
	
	if (CheckCharecter(dForm.Txt_FirstName, " First Name"))
		return false;
	
	if (CheckCharecter(dForm.Txt_LastName, " Last Name"))
		return false;	
	
	if (CheckCharecter(dForm.Txt_City, " City"))
		return false;				

	if (CheckFieldSelect(dForm.Slct_Country, "Country"))
		return false;
	//modified by Hoa 01Oct2007 log
	if (dForm.Slct_Country.value=="US")
	{
		if (CheckFieldSelect(dForm.Slct_State, "State"))
			return false;
	}
	else
	{
		if (CheckFieldEmpty(dForm.Txt_PostalCode, "Postal Code"))
			return false;
			
		if (CheckAlphaNumeric(dForm.Txt_PostalCode, " Postal Code"))
			return false;		
		
		if (CheckLength(dForm.Txt_PostalCode, " Postal Code" , 6))
			return false;	
		
		if (CheckFieldEmpty(dForm.Txt_Province, "Province"))
			return false;
			
		if (CheckAlphaNumeric(dForm.Txt_Province, " Province"))
			return false;		
	}
	//end modified by Hoa 01Oct2007 log
	
	/*if(dForm.Txt_Fax.value!= "")
		{
		if (CheckNumeric(dForm.Txt_Fax, " Fax"))
		return false;				
		}	
	*/
	if (CheckRadioSelect(dForm.Radio_Gender, "Gender"))
		return false;

	if (CheckFieldSelect(dForm.Slct_AgeGrp, "Age Group"))
		return false;
		
	var mgr;
	 mgr=dForm.Slct_AgeGrp[dForm.Slct_AgeGrp.selectedIndex].text;
	 if (mgr=="Under 14")
	 {
		alert(dic['UnderAge']);
		return false;
	 }

	if ('<%=uGovtStat%>'== '1')
	{
		alert('<%=uGovtStat%>');
		if (CheckFieldSelect(eval(dForm + ".Cmb_Govt"), "Government"))
			return false;
	}
	
	return true;
}

////////////////////////////////////////////////////////////

function CheckFieldEmpty(dField, dName)
{	
    try{
		sEmpty = isEmpty(dField.value);
		if (sEmpty)
		{
			Blank_Alert(dName);
			dField.focus();
		}
		
		return sEmpty
	}catch(e){}
}

function CheckFieldSelect(dField, dName)
{	
	sNoSlct = (dField.selectedIndex < 1);
	if (sNoSlct)
	{
		Select_Alert(dName);
		dField.focus();
	}
	
	return sNoSlct
}

function CheckRadioSelect(dRadio, dName)
{	
	sNoSlct = (!dRadio[0].checked && !dRadio[1].checked);
	if (sNoSlct)
	{
		Select_Alert(dName);
		dRadio[0].focus();
	}
	
	return sNoSlct
}

////////////////////////////////////////////////////////////

function Blank_Alert(dFieldName)
{	
	var sAlert = dic['Alert_PleaseEnter'].replace("{TEXT}", dFieldName);
	alert(sAlert);
}

function isEmpty(dText)
{	
	return ($.trim(dText)=="")
}

function Select_Alert(dFieldName)
{	
	var sAlert = dic['Alert_PleaseSelect'].replace("{TEXT}", dFieldName);
	alert(sAlert);
}


function Charecter_Alert(dFieldName)
	{	
		var sAlert = dic['Alert_Character'].replace("{TEXT}", dFieldName);
		alert(sAlert);
	}


function Numeric_Alert(dFieldName)
	{	
		var sAlert = dic['Alert_Numeric'].replace("{TEXT}", dFieldName);
		alert(sAlert);
	}

// created by rups 14nov2006 - log - 680 - Empty spaces not allowed

function CheckFieldSpaces(sString1,dname) 
	{
		sString=sString1.value;
		while (sString.substring(0,1) == ' ')
		{
			sString = sString.substring(1, sString.length);
		}
		if (sString.length==0)
		{
			alert (dic['Alert_BlankSpacesAreNotAllowedIn'].replace("{TEXT}", dname));
			sString1.focus();
			return true;
		}
		else 
			return false;
				
	}
	
////////////////////////////////////////////////////////////////////////
// copied from fan_register.asp
function register_validate(dGovtStat,UserType)
{
	var sForm = document.register_form;
	//Account Info
	if (UserType=="media")
		if (CheckFieldEmpty(sForm.Txt_CompanyName, dic["Alert_CompanyName"]))
			return false;

		
	if (UserType=="NGO")
		if (CheckFieldEmpty(sForm.Txt_NGOName, dic["Alert_OrganizationName"]))
			return false;

		
	if (UserType=="political")
		if (CheckFieldEmpty(sForm.Txt_PartyName, dic["Alert_PartyName"]))
			return false;


	if (CheckFieldEmpty(sForm.Txt_UserName, dic["Alert_Username"]))
		return false;
	
	if(CheckUsername(sForm.Txt_UserName, dic["Alert_Username"]) == false )
		return false;
		
	if (CheckValidPassword(sForm) == false)
		return false;

	if (CheckValidEmail(sForm) == false)
		return false;

	if (showNameInfo){
		if (CheckFieldEmpty(sForm.Txt_FirstName, dic["Alert_FirstName"]))
			return false;

        if(document.location.href.toLowerCase().indexOf("fan_register_voice.asp") == -1)
		    if (CheckFieldEmpty(sForm.Txt_LastName, dic["Alert_LastName"]))
			    return false;	
	}
	
	if (sForm.Txt_contactPhone){
		if (CheckFieldEmpty(sForm.Txt_contactPhone, dic["Alert_Phone"]))
			return false;
			
		if (CheckNumeric(sForm.Txt_contactPhone, " " + dic["Alert_Phone"]))
			return false;				
	}
	if(sForm.Txt_ContactFax){
		if (CheckFieldEmpty(sForm.Txt_ContactFax, dic["Alert_Fax"]))
			return false;

		if (CheckNumeric(sForm.Txt_ContactFax, " " + dic["Alert_Fax"]))
			return false;	
	}	

	if (validate_contact(sForm) == false)
		return false;
	
	
	return true;

}
////////////////////////////////////////////////////////////
	function subform(dForm)
	{
		
		//document.login.action="login_check.asp"
		//if(CheckUsername(dForm.login_username, dic["Alert_Username"]) == false )
	    //	return false;

	    if (CheckFieldEmpty(dForm.login_username, dic["Alert_Email"]))
	        return false;

		if (CheckPassword(dForm.login_password)  == false)
			return false;

		dForm.submit();
		//document.login.submit();
		//window.close();
	}

	function resetform()
	{
		//document.login.action="login_check.asp"
		document.login.reset()
	}

	function regfree()
	{
		
		swindow = window.opener;
		swindow.location.href = "fan_register.asp";
		//document.login.action="login_check.asp"
		window.close()
	}
	
	//function CheckUsername(dField,dName)
	function CheckFirstname(dField,dName)
	{
		var sField = dField;
		var sAlert= dic['Alert_FirstNameRules'];
		var sExtraChar="_- ";
		if (CheckAlphaNumericWithChar(sField, sAlert, sExtraChar))
			return false;
		return true;	
	}
	
	function CheckLastname(dField,dName)
	{
		var sField = dField;
		var sAlert=dic['Alert_LastNameRules'];
		var sExtraChar="_- ";
		if (CheckAlphaNumericWithChar(sField, sAlert,sExtraChar))
			return false;
		return true;		
	}
	function CheckCity(dField,dName)
	{
		var sField = dField;
		var sAlert= dic['Alert_CityRules'];
		var sExtraChar="_- ";
		if (CheckAlphaNumericWithChar(sField, sAlert,sExtraChar))
			return false;
		
		return true;	
	
	}
	function CheckProvince(dField,dName)
	{
		var sField = dField;
		var sAlert=dic['Alert_ProvineRules'];
		var sExtraChar="_- ";
		if (CheckAlphaNumericWithChar(sField, sAlert,sExtraChar))
			return false;
		return true;	
	}

	function validatePhone(phoneno)
	{
	  var phoneNum = new String(phoneno);
   
	  var regExpObj = /(\d\d\d)\d\d\d\d\d\d\d/;
   
	  if(regExpObj.exec(phoneNum) == null)
	  {
	    alert(dic['Alert_InvalidPhoneNumber'].replace("{TEXT}", phoneNum));
		return false;
	  }

	}

		
	function checkLength(obj, evt, length){
		if(obj.value.length >= length){
			evt = (evt) ? evt : ((event) ? event : null);
			if(evt){
				var ch = evt.keyCode
				if((112 <= ch && ch <= 123) || ch == 8 || ch == 16 || ch == 17 || ch == 18 || ch == 22 || (ch >= 33 && ch <= 46)) // function key
			        {
					return true;
			        }
			        else
			        {			              
						alert(dic['Alert_ContentLength'].replace("{TEXT}", length))
			            return false;
			        }
			}
		}
		else{
			return true;
		}
	}

	function countWords(obj, length){
		if(obj.value.length > length)
		{
			alert(dic['Alert_ContentLength'].replace("{TEXT}", length));
			obj.value = obj.value.substring(0, length);
			obj.scrollTop = obj.scrollHeight;
			
		}	
		document.getElementById("xxx").innerHTML = length - obj.value.length
	}

