var hidTermsId = "ctl00_cphMain_ctl00_hidTermsAndConditions";
var divMessageId = "ctl00_cphMain_ctl00_divMessage";
var lblMessageId = "ctl00_cphMain_ctl00_lblMessage";
var lblEmailAddressId = "ctl00_cphMain_ctl00_lblEmailAddress";
var lblPasswordId = "ctl00_cphMain_ctl00_lblPassword";
var lblPasswordConfirmId = "ctl00_cphMain_ctl00_lblPasswordConfirm";
var lblTitleId = "ctl00_cphMain_ctl00_lblTitle";
var lblDateOfBirthId = "ctl00_cphMain_ctl00_lblDateOfBirth";
var lblLastNameId = "ctl00_cphMain_ctl00_lblLastName";
var lblFirstNameId = "ctl00_cphMain_ctl00_lblFirstName";
var lblPatronymicId = "ctl00_cphMain_ctl00_lblPatronymic";
var lblZIPCodeId = "ctl00_cphMain_ctl00_lblZIPCode";
var lblDistrictId = "ctl00_cphMain_ctl00_lblDistrict";
var lblRegionId = "ctl00_cphMain_ctl00_lblRegion";
var lblCityId = "ctl00_cphMain_ctl00_lblCity";
var lblAddressLineOneId = "ctl00_cphMain_ctl00_lblAddressLineOne";
var lblStreetNumberId = "ctl00_cphMain_ctl00_lblStreetNumber";
var lblAddressLineThreeId = "ctl00_cphMain_ctl00_lblAddressLineThree";
var lblApartmentNumberId = "ctl00_cphMain_ctl00_lblApartmentNumber";
var lblPassportSerialNumberId = "ctl00_cphMain_ctl00_lblPassportSerialNumber";
var lblPassportNumberId = "ctl00_cphMain_ctl00_lblPassportNumber";
var lblPassportIssueDateId = "ctl00_cphMain_ctl00_lblPassportIssueDate";
var lblPassportOrganisationId = "ctl00_cphMain_ctl00_lblPassportOrganisation";
var lblPhoneNumberId = "ctl00_cphMain_ctl00_lblPhoneNumber";
var lblMobileNumberId = "ctl00_cphMain_ctl00_lblMobileNumber";
var lblBusinessNumberId = "ctl00_cphMain_ctl00_lblBusinessNumber";
var txtEmailAddressId = "ctl00_cphMain_ctl00_txtEmailAddress";
var txtPasswordId = "ctl00_cphMain_ctl00_txtPassword";
var txtPasswordConfirmId = "ctl00_cphMain_ctl00_txtPasswordConfirm";
var cmbTitleId = "ctl00_cphMain_ctl00_cmbTitle";
var cmbDOBDayId = "ctl00_cphMain_ctl00_cmbDOBDay";
var cmbDOBMonthId = "ctl00_cphMain_ctl00_cmbDOBMonth";
var cmbDOBYearId = "ctl00_cphMain_ctl00_cmbDOBYear";
var txtLastNameId = "ctl00_cphMain_ctl00_txtLastName";
var txtFirstNameId = "ctl00_cphMain_ctl00_txtFirstName";
var txtPatronymicId = "ctl00_cphMain_ctl00_txtPatronymic";
var txtZipCodeId = "ctl00_cphMain_ctl00_txtZIPCode";
var cmbZipCodesId = "ctl00_cphMain_ctl00_cmbZipCodes";
var txtDistrictId = "ctl00_cphMain_ctl00_txtDistrict";
var cmbDistrictId = "ctl00_cphMain_ctl00_cmbDistrict";
var txtRegionId = "ctl00_cphMain_ctl00_txtRegion";
var cmbRegionId = "ctl00_cphMain_ctl00_cmbRegion";
var txtCityId = "ctl00_cphMain_ctl00_txtCity";
var cmbCityId = "ctl00_cphMain_ctl00_cmbCity";
var txtAddressLineOneId = "ctl00_cphMain_ctl00_txtAddressLineOne";
var txtStreetNumberId = "ctl00_cphMain_ctl00_txtStreetNumber";
var txtAddressLineThreeId = "ctl00_cphMain_ctl00_txtAddressLineThree";
var txtApartmentNumberId = "ctl00_cphMain_ctl00_txtApartmentNumber";
var txtPassportSerialNumberId = "ctl00_cphMain_ctl00_txtPassportSerialNumber";
var txtPassportNumberId = "ctl00_cphMain_ctl00_txtPassportNumber";
var cmbPassIssueDateDayId = "ctl00_cphMain_ctl00_cmbPassIssueDateDay";
var cmbPassIssueDateMonthId = "ctl00_cphMain_ctl00_cmbPassIssueDateMonth";
var cmbPassIssueDateYearId = "ctl00_cphMain_ctl00_cmbPassIssueDateYear";
var txtPassportOrganisationId = "ctl00_cphMain_ctl00_txtPassportOrganisation";
var txtPhoneNumberId = "ctl00_cphMain_ctl00_txtPhoneNumber";
var txtMobileNumberId = "ctl00_cphMain_ctl00_txtMobileNumber";
var txtBusinessPhoneNumberId = "ctl00_cphMain_ctl00_txtBusinessPhoneNumber";

function ShowTermsConditionsPopUp(windowTitle, fromLink)
{
	if ( !fromLink )
		CheckedTermsAndConditions();

	if ( dhtmlmodal != null )
		termsPopUp = dhtmlmodal.open('TermsLayer', 'iframe', '/webAccount/registerTermsLayer.aspx', windowTitle, 'width=880px,height=545px,center=1,resize=0,scrolling=0')
}


function CheckedTermsAndConditions()
{
	document.getElementById(hidTermsId).value = "1";
}


function ValidateEmail(email)
{
	var emailFormat = /^\w(\.?[\w-])*@\w(\.?[\w-])*\.[a-zA-Z]{2,6}(\.[a-zA-Z]{2})?$/i;
	return email.search(emailFormat);
}


function ValidateCharacters(value)
{

	var RegX = "[A-Za-z0-9]";
	var regex = new RegExp(RegX);

	if (!regex.test(value))
		return false;
	else
		return true;

}


function ValidateNumeric(value)
{

	var RegX = "[0-9]";
	var regex = new RegExp(RegX);

	if (!regex.test(value))
		return false;
	else
		return true;

}


function InitializeFormForFirstTime()
{

	//-- Breadcrumb--//
	LogModuleClickForRegistration(UserGUID, '', '1', 0)
	$("#divBCrumbStep2").hide();
	$("#divBCrumbStep3").hide();
	$("#divBCrumbStep4").hide();
	$("#divBCrumbStep5").hide();

	//-- Hide Fields --//
	$("#divPartTwo").hide();
	$("#divPartThree").hide();
	$("#divPartFour").hide();
	$("#divPartFive").hide();
	$("#divRegisterButton").hide();
	
}


function ShowNextSection()
{

	if ( $("#hidCurrentStep").val() == "1" )
	{

		//-- Validate --//
		$("#" + divMessageId).hide();
		formIsValid = ""
		
		//-- E-Mail Address --//
		if (ValidateEmail($("#" + txtEmailAddressId).val()) == -1)
			formIsValid += ErrorEmailAddress + "<br>";
		else if (!ValidateCharacters($("#" + txtEmailAddressId).val()))
			formIsValid += ErrorEmailAddress + "<br>";

		//-- Password --//
		if ( $("#" + txtPasswordId).val() == "")
			formIsValid += ErrorPassword + "<br>";

		//-- Password Length --//
		if ( $("#" + txtPasswordId).val().length < 4)
			formIsValid += ErrorPasswordLength + "<br>";

		//-- Password Match --//
		if ( $("#" + txtPasswordId).val() != $("#" + txtPasswordConfirmId).val() )
			formIsValid += ErrorPasswordMatch + "<br>";
		
		if ( formIsValid == "" )
		{
			
			//-- Show Step 2 Fields --//
			LogModuleClickForRegistration(UserGUID, $("#" + txtEmailAddressId).val(), '2', 0)
			scrollTo("#aPartTwo", 1500, 'swing', false, 400, 27.5);
			$("#divBCrumbStep2").show();
			$("#divPartTwo").show();
			$("#hidCurrentStep").val("2");
			
			//-- Omniture-it! --//
			var s=s_gi(s_account);
			s.pageName='home : web account : register : step 2, address';
			s.events='event26';
			s.tl(true,'o','Registration: Step 2');

		}
		else
		{
			$("#" + divMessageId).show();
			$("#" + lblMessageId).html(formIsValid);
		}
	
	}	

	else if ( $("#hidCurrentStep").val() == "2" )
	{
		
		//-- Validate --//
		$("#" + divMessageId).hide();
		formIsValid = ""

		//-- Date of Birth --//
		if (($("#" + cmbDOBDayId).val() == "---") || ($("#" + cmbDOBMonthId).val() == "---") || ($("#" + cmbDOBYearId).val() == "---"))
			formIsValid += ErrorDateOfBirth + "<br>";
			
		//-- First Name --//
		if ( $("#" + txtFirstNameId).val() == "")
			formIsValid += ErrorFirstName + "<br>";

		//-- ONLY Russian Characters in First Name --//
		else if (ValidateCharacters($("#" + txtFirstNameId).val()))
			formIsValid += ErrorFirstNameRussian + "<br>";

		//-- Last Name --//
		if ( $("#" + txtLastNameId).val() == "")
			formIsValid += ErrorLastName + "<br>";

		//-- ONLY Russian Characters in Last Name --//
		else if (ValidateCharacters($("#" + txtLastNameId).val()))
			formIsValid += ErrorLastNameRussian + "<br>";

		//-- Patronymic --//
		if ( $("#" + txtPatronymicId).val() == "")
			formIsValid += ErrorPatronymic + "<br>";

		//-- ONLY Russian Characters in Patronymic --//
		else if (ValidateCharacters($("#" + txtPatronymicId).val()))
			formIsValid += ErrorPatronymicRussian + "<br>";
			
		//-- ZIP Code --//
		if ( $("#" + txtZipCodeId).val().length != 6)
			formIsValid += ErrorZIPCode + "<br>";
		else if (!ValidateNumeric($("#" + txtZipCodeId).val()))
			formIsValid += ErrorZIPCode + "<br>";
			
		//-- District --//
		if ( $("#" + txtDistrictId).val() == "")
			formIsValid += ErrorDistrict + "<br>";

		//-- ONLY Russian Characters in District --//
		else if (ValidateCharacters($("#" + txtDistrictId).val()))
			formIsValid += ErrorDistrictRussian + "<br>";

		//-- Region --//
		if ( $("#" + txtRegionId).val() == "")
			formIsValid += ErrorRegion + "<br>";

		//-- ONLY Russian Characters in Region --//
		else if (ValidateCharacters($("#" + txtRegionId).val()))
			formIsValid += ErrorRegionRussian + "<br>";

		//-- City --//
		if ( $("#" + txtCityId).val() == "")
			formIsValid += ErrorCity + "<br>";

		//-- ONLY Russian Characters in City --//
		else if (ValidateCharacters($("#" + txtCityId).val()))
			formIsValid += ErrorCityRussian + "<br>";

		//-- Address Line 1 --//
		if ( $("#" + txtAddressLineOneId).val() == "")
			formIsValid += ErrorAddress + "<br>";

		//-- Street Number --//
		if ( $("#" + txtStreetNumberId).val() == "")
			formIsValid += ErrorStreetNumber + "<br>";
			
		if ( formIsValid == "" )
		{
		
			//-- Show Step 3 Fields --//
			LogModuleClickForRegistration(UserGUID, $("#" + txtEmailAddressId).val(), '3', 0)
			scrollTo("#aPartTwo", 1200, 'swing', false, 650, 27.5);
			$("#divBCrumbStep3").show();
			$("#divPartThree").show();
			$("#hidCurrentStep").val("3");
		
			//-- Omniture-it! --//
			var s=s_gi(s_account);
			s.pageName='home : web account : register : step 3, passport information';
			s.events='event27';
			s.tl(true,'o','Registration: Step 3');

		}
		else
		{
			scrollTo("#aPartTwo", 1200, 'swing', false, 0, 27.5);
			$("#" + divMessageId).show();
			$("#" + lblMessageId).html(formIsValid);
		}

	}	

	else if ( $("#hidCurrentStep").val() == "3" )
	{
	
		//-- Validate --//
		$("#" + divMessageId).hide();
		formIsValid = ""
		
		//-- Passport Serial Number --//
		if ( $("#" + txtPassportSerialNumberId).val() != "")
		{		
			if (!ValidateNumeric($("#" + txtPassportSerialNumberId).val()))
				formIsValid += ErrorPassportSerialNumber + "<br>";
		}

		//-- Passport Number --//
		if ( $("#" + txtPassportNumberId).val() != "")
		{		
			if (!ValidateNumeric($("#" + txtPassportNumberId).val()))
				formIsValid += ErrorPassportNumber + "<br>";
		}
		
		if ( formIsValid == "" )
		{
		
			//-- Show Step 4 Fields --//
			LogModuleClickForRegistration(UserGUID, $("#" + txtEmailAddressId).val(), '4', 0)
			scrollTo("#aPartTwo", 1500, 'swing', false, 900, 27.5);
			$("#divBCrumbStep4").show();
			$("#divPartFour").show();
			$("#hidCurrentStep").val("4");
			
			//-- Omniture-it! --//
			var s=s_gi(s_account);
			s.pageName='home : web account : register : step 4, phone numbers';
			s.events='event28';
			s.tl(true,'o','Registration: Step 4');

		}
		else
		{
			scrollTo("#aPartTwo", 1200, 'swing', false, 0, 27.5);
			$("#" + divMessageId).show();
			$("#" + lblMessageId).html(formIsValid);
		}


	}	

	else if ( $("#hidCurrentStep").val() == "4" )
	{
	
		//-- Validate --//
		$("#" + divMessageId).hide();
		formIsValid = ""
		
		//-- Phone Number --//
		if ( $("#" + txtPhoneNumberId).val() != "")
		{		
			if ( $("#" + txtPhoneNumberId).val().length < 10)
				formIsValid += ErrorPhoneNumber + "<br>";
		}
		
		//-- Mobile Number --//
		if ( $("#" + txtMobileNumberId).val() == "")
			formIsValid += ErrorMobileNumber + "<br>";
		else if ( $("#" + txtMobileNumberId).val().length < 10)
			formIsValid += ErrorMobileNumber + "<br>";
		
		//-- Business Number --//
		if ( $("#" + txtBusinessPhoneNumberId).val() != "")
		{		
			if ( $("#" + txtBusinessPhoneNumberId).val().length < 10)
				formIsValid += ErrorBusinessPhoneNumber + "<br>";
		}
		
		if ( formIsValid == "" )
		{
			
			//-- Show Step 5 Fields --//
			LogModuleClickForRegistration(UserGUID, $("#" + txtEmailAddressId).val(), '5', 0)
			scrollTo("#aPartTwo", 1200, 'swing', false, 1150, 27.5);
			$("#divBCrumbStep5").show();
			$("#divPartFive").show();
			$("#divCheckBoxes").show();
			$("#divRegisterButton").show();
			$("#hidCurrentStep").val("5");
			$("#divProceed").hide();
			$("#divRegisterButton").show();
			
			//-- Omniture-it! --//
			var s=s_gi(s_account);
			s.pageName='home : web account : register : step 5, newsletters and terms and conditions';
			s.events='event29';
			s.tl(true,'o','Registration: Step 5');

		}
		else
		{
			scrollTo("#aPartTwo", 1200, 'swing', false, 0, 27.5);
			$("#" + divMessageId).show();
			$("#" + lblMessageId).html(formIsValid);
		}
	
	}	

}


function scrollTo(url, speed, easing, redirect, goTop, goLeft)
{

	url = url || "#";
	speed = speed || "fast";
	easing = easing || null;
	redirect = (redirect === true || redirect == null) ? true : false;

	if(url){

	if(url.indexOf("#") != -1){
	
	var aParts = url.split("#",2);
	var anchor = $("a[name='"+aParts[1]+"']");

	if(anchor){
	
	if($(document).height()-anchor.offset().top >= $(window).height()
	|| anchor.offset().top > $(window).height()
	|| $(document).width()-anchor.offset().left >= $(window).width()
	|| anchor.offset().left > $(window).width()){

	$('html, body').animate({
	scrollTop: goTop,
	scrollLeft: goLeft
	}, speed, easing, function(){

	if(redirect){
	window.location = url
	}

	});

	}

	return false;

	}

	}

	}

}
