/*
--------------------------------------------------

Crescent Electric
Site-Wide Scripts [cesco.js]

Copyright (c) 2011 Crescent Electric Supply Company

--------------------------------------------------
 */


// Display "[Current] OF [Total]" Text, used for the rotating banner on homepage
function onAfter1(curr, next, opts) {
	var totals = (opts.currSlide + 1) + '&nbsp;OF&nbsp;' + opts.slideCount;
	$('.totals').html(totals);
}

function getQuerystring(key, default_) {
	if (default_ == null)
		default_ = "";
	key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
	var regex = new RegExp("[\\?&]" + key + "=([^&#]*)");
	var qs = regex.exec(window.location.href);
	if (qs == null)
		return default_;
	else
		return qs[1];
}

//clears the registration form for b2c customers
function clearB2CRegisterForm() {
	$('form#newCustomersForm input[value="homeowner"]').attr('checked',
			'checked');
	$('form#newCustomersForm input[name="company"]').val('');
	$('form#newCustomersForm input[name="firstname"]').val('');
	$('form#newCustomersForm input[name="lastname"]').val('');
	$('form#newCustomersForm input[name="login"]').val('');
	$('form#newCustomersForm input[name="login2"]').val('');
	$('form#newCustomersForm input[name="password"]').val('');
	$('form#newCustomersForm input[name="password2"]').val('');
	$('form#newCustomersForm input[name="promoOptIn"]').removeAttr('checked');
}

//clears theregistration form for b2b customers
function clearB2BRegisterForm() {
	$('form#CescoNumberForm input[name="accountNumber"]').val('');
	$('form#CescoNumberForm input[name="company"]').val('');
	$('form#CescoNumberForm input[name="zipCode"]').val('');
	$('form#CescoNumberForm input[name="firstname"]').val('');
	$('form#CescoNumberForm input[name="lastname"]').val('');
	$('form#CescoNumberForm input[name="login"]').val('');
	$('form#CescoNumberForm input[name="login2"]').val('');
	$('form#CescoNumberForm input[name="password"]').val('');
	$('form#CescoNumberForm input[name="password2"]').val('');
	$('form#CescoNumberForm input[name="captchaKey"]').val('');
	$('form#CescoNumberForm input[name="promoOptIn"]').removeAttr('checked');
}

function validateForm() {
	$('input.error').removeClass("error");
	$('div.error').addClass("hidden");
	var fname = $('form#personalInformation input#personal-first-name').val();
	var lname = $('form#personalInformation input#personal-last-name').val();
	var email = $('form#personalInformation input#personal-email').val();
	var state = $('form#personalInformation input#state').val();
	var company = $('form#personalInformation input#personal-company').val();
	var password = $('form#personalInformation input#personal-password').val();
	var confPassword = $(
			'form#personalInformation input#personal-confirm-password').val();
	var confEmail = $('form#personalInformation input#personal-confirm-email')
			.val();
	var answer = $('form#personalInformation input#personal-hint-answer').val();

	// var zip = $('form#personalInformation input#zip').val();
	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	var numericExpression = /^[0-9]+$/;

	if (company.length == 0 || company.match("City")) {
		$('#company_validationMessage').removeClass('hidden');
		$('input#personal-company').addClass("error").focus();
		return false;
	}

	// Test if first name is entered
	if (fname.length == 0 || fname.match("First name")) {
		$('#first_name_validationMessage').removeClass('hidden');
		$('input#personal-first-name').addClass("error").focus();
		return false;
	}

	// Test if last name is entered
	if (lname.length == 0 || lname.match("Last name")) {
		$('#last_name_validationMessage').removeClass('hidden');
		$('input#personal-last-name').addClass("error").focus();
		return false;
	}

	// Test if email is entered and in correct format
	if (email.length == 0 || email.match("Email address")) {
		$('#email_validationMessage').removeClass('hidden');
		$('input#personal-email').addClass("error").focus();
		return false;
	} else if (!emailReg.test(email)) {
		$('#emailFormat_validationMessage').removeClass('hidden');
		$('input#personal-email').addClass("error").focus();
		return false;
	}

	// Compare Email Addresses / validity
	if (email != confEmail) {
		$('#emailMismatch_validationMessage').removeClass('hidden');
		$('input#personal-email').addClass("error");
		$('input#personal-confirm-email').addClass("error").focus();
		return false;
	}

	// Check if password is at least 6 characters
	if (password.length == 0 || password.match("Password")
			|| password.length <= 5) {
		$('#password_validationMessage').removeClass('hidden');
		$('input#personal-password').addClass("error").focus();
		return false;
	}

	// Check if passwords match
	if (password != confPassword) {
		$('#passwordMismatch_validationMessage').removeClass('hidden');
		$('input#personal-password').addClass("error");
		$('input#personal-confirm-password').addClass("error").focus();
		return false;
	}

	// Test if answer is entered
	if (answer.length == 0 || lname.match("Last name")) {
		$('#answer_validationMessage').removeClass('hidden');
		$('input#personal-hint-answer').addClass("error").focus();
		return false;
	}
	return true;
}

function validateNewCustomerForm() {
	$('input.error').removeClass("error");
	$('div.error').addClass("hidden");
	var fname = $('form#newCustomersForm input[name="firstname"]').val();
	var lname = $('form#newCustomersForm input[name="lastname"]').val();
	var email = $('form#newCustomersForm input[name="login"]').val();
	var confEmail = $('form#newCustomersForm input[name="login2"]').val();
	var password = $('form#newCustomersForm input[name="password"]').val();
	var confPassword = $('form#newCustomersForm input[name="password2"]').val();
	// var answer = $('form#newCustomersForm
	// input[name="hintAnswer"]').val();

	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	var numericExpression = /^[0-9]+$/;

	// Test if first name is entered
	if (fname.length == 0) {
		$('form#newCustomersForm #first_name_validationMessage').removeClass(
				'hidden');
		$('form#newCustomersForm input[name="firstname"]').addClass("error")
				.focus();
		return false;
	}

	// Test if last name is entered
	if (lname.length == 0) {
		$('form#newCustomersForm #last_name_validationMessage').removeClass(
				'hidden');
		$('form#newCustomersForm input[name="lastname"]').addClass("error")
				.focus();
		return false;
	}

	// Test if email is entered and in correct format
	if (email.length == 0) {
		$('form#newCustomersForm #email_validationMessage').removeClass(
				'hidden');
		$('form#newCustomersForm input[name="login"]').addClass("error")
				.focus();
		return false;
	} else if (!emailReg.test(email)) {
		$('form#newCustomersForm #emailFormat_validationMessage').removeClass(
				'hidden');
		$('form#newCustomersForm input[name="login"]').addClass("error")
				.focus();
		return false;
	}

	// Compare Email Addresses / validity
	if (email != confEmail) {
		$('form#newCustomersForm #emailMismatch_validationMessage')
				.removeClass('hidden');
		$('form#newCustomersForm input[name="login"]').addClass("error");
		$('form#newCustomersForm input[name="login2"]').addClass("error")
				.focus();
		return false;
	}

	// Check if password is at least 6 characters
	if (password.length == 0 || password.length <= 5) {
		$('form#newCustomersForm #password_validationMessage').removeClass(
				'hidden');
		$('form#newCustomersForm input[name="password"]').addClass("error")
				.focus();
		return false;
	}

	// Check if passwords match
	if (password != confPassword) {
		$('form#newCustomersForm #passwordMismatch_validationMessage')
				.removeClass('hidden');
		$('form#newCustomersForm input[name="password"]').addClass("error");
		$('form#newCustomersForm input[name="password2"]').addClass("error")
				.focus();
		return false;
	}

	return true;
}

function validateCescoNumberForm() {
	$('input.error').removeClass("error");
	$('div.error').addClass("hidden");
	var acctNum = $('form#CescoNumberForm input[name="accountNumber"]').val();
	var company = $('form#CescoNumberForm input[name="company"]').val();
	var zipCode = $('form#CescoNumberForm input[name="zipCode"]').val();
	var fname = $('form#CescoNumberForm input[name="firstname"]').val();
	var lname = $('form#CescoNumberForm input[name="lastname"]').val();
	var email = $('form#CescoNumberForm input[name="login"]').val();
	var confEmail = $('form#CescoNumberForm input[name="login2"]').val();
	var password = $('form#CescoNumberForm input[name="password"]').val();
	var confPassword = $('form#CescoNumberForm input[name="password2"]').val();
	var answer = $('form#CescoNumberForm input[name="hintAnswer"]').val();

	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	var numericExpression = /^[0-9]+$/;

	if (acctNum.length == 0) {
		$('form#CescoNumberForm #accountNum_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="accountNumber"]').addClass("error")
				.focus();
		return false;
	}

	if (company.length == 0) {
		$('form#CescoNumberForm #company_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="company"]').addClass("error")
				.focus();
		return false;
	}

	if (zipCode.length == 0) {
		$('form#CescoNumberForm #zipCode_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="zipCode"]').addClass("error")
				.focus();
		return false;
	}

	// Test if first name is entered
	if (fname.length == 0) {
		$('form#CescoNumberForm #first_name_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="firstname"]').addClass("error")
				.focus();
		return false;
	}

	// Test if last name is entered
	if (lname.length == 0) {
		$('form#CescoNumberForm #last_name_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="lastname"]').addClass("error")
				.focus();
		return false;
	}

	// Test if email is entered and in correct format
	if (email.length == 0) {
		$('form#CescoNumberForm #email_validationMessage')
				.removeClass('hidden');
		$('form#CescoNumberForm input[name="login"]').addClass("error").focus();
		return false;
	} else if (!emailReg.test(email)) {
		$('form#CescoNumberForm #emailFormat_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="login"]').addClass("error").focus();
		return false;
	}

	// Compare Email Addresses / validity
	if (email != confEmail) {
		$('form#CescoNumberForm #emailMismatch_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="login"]').addClass("error");
		$('form#CescoNumberForm input[name="login2"]').addClass("error")
				.focus();
		return false;
	}

	// Check if password is at least 6 characters
	if (password.length == 0 || password.length <= 5) {
		$('form#CescoNumberForm #password_validationMessage').removeClass(
				'hidden');
		$('form#CescoNumberForm input[name="password"]').addClass("error")
				.focus();
		return false;
	}

	// Check if passwords match
	if (password != confPassword) {
		$('form#CescoNumberForm #passwordMismatch_validationMessage')
				.removeClass('hidden');
		$('form#CescoNumberForm input[name="password"]').addClass("error");
		$('form#CescoNumberForm input[name="password2"]').addClass("error")
				.focus();
		return false;
	}

	return true;
}
