$(document).ready(function() {
	$('.searchTerms').eq(0).blur();
	$('#firstName').eq(0).focus();
	phoneRequired();
	//initContactByPhone();
	//initSetEmailAddress();
		
	addValidation($('#emailRequest'),
		function(field, override) {
			if (!$(field).hasClass('isDirty') && !override) return;
			
			var errorWrapper = $('.errorWrapper');
			var errorMsg = $('<p style="display:none" class="error">' + $(field).attr('data-msg') + '</p>');
			
			var arr = $('.errorWrapper').children('p');
			var arrElmt = new Array();

			arr.each(function(index,elemt) {
				arrElmt.push($(elemt).html());
			});
			if ($.inArray($(field).attr('data-msg'), arrElmt) == -1) {
				errorMsg.prependTo(errorWrapper);
			}

			errorMsg.slideDown('slow');
			errorWrapper.slideDown('slow');
			
			$('.label', field).addClass('errorMsg');
			$('input, select', field).addClass('hasError');
		},
		function(field) {
			$('.label', field).removeClass('errorMsg');
			$('input, select', field).removeClass('hasError');

			$('.errorWrapper').children('p').each(function(index, elemt){
				if ($(elemt).html() == $(field).attr('data-msg')) {
					$(elemt).slideUp('slow', function() { 
						$(this).remove();
						if ($('.errorWrapper').children('p').length == 0) {
							$('.errorWrapper').hide();
						}
					});
				}
			});
			
	
		},
		function() {
			s.sendFormEvent('s','customer service:contact us by email','contactUs');
		}
	);
	
	
	var orderArray = new Array("Order Status",
							   "Returns",
							   "Shipping",
							   "Cancel Order",
							   "Undelivered Items",
							   "État de la commande",
							   "Retours",
							   "Expédition",
							   "Annuler la commande",
							   "Articles non livrés");

	// The phone becomes a required field 
	// if the selected item on the drop-down list is order related.
	function phoneRequired() {
		$('select#reason').change(function() {
			var selectedVal = $('#reason :selected').val();
			var phoneLabel = $('.phone .label').html();
			if ($.inArray(selectedVal, orderArray) > -1) {
				$('.phone').addClass('required');
				if (phoneLabel.match(/\*/) == null) {
					$('.phone .label').html("\* " + phoneLabel.substr(0, phoneLabel.length));
				}
			} else if (!$('input[id="phone"]').is(':checked')) {
				$('.phone .label').html(phoneLabel.replace(/^\*\ /, ""));
				$('.phone').removeClass('required');
			}
		});
	}
	
	$('input[id="phone"]').click(function() {
		$('.phone').addClass('required');
		var phoneLabel = $('.phone .label').html();
		if (phoneLabel.match(/\*/) == null) {
			$('.phone .label').html("\* " + phoneLabel.substr(0, phoneLabel.length));
		}
	});
	
	$('input[id="email"]').click(function() {
		var selectedVal = $('#reason :selected').val();
		var phoneLabel = $('.phone .label').html();
		if ($.inArray(selectedVal, orderArray) == -1) {
			$('.phone .label').html(phoneLabel.replace(/^\*\ /, ""));
			$('.phone').removeClass('required');
			$('.phone .label').removeClass('errorMsg');
		}
	});
	
});

/*
function initContactByPhone() {
	$('input[id="phone"]').click(function() {
		$('.phoneOption').removeClass('hide');
		$('label.phone').show().addClass('required');
	});
	
	$('input[id="email"]').click(function() {
		$('.phoneOption').addClass('hide');
		$('label.phone').hide().removeClass('required');
	});
	
	$('input[name=contactMethod]:checked').click();
}

function initSetEmailAddress() {
	$('select#reason').change(function() {
		if ($(this).val() == 'Sears Advantage') {
			$('input[name="recipientEmail"]').val('searsadvantage@sears.ca');
		} else if ($(this).val() == 'Sears Travel') {
			$('input[name="recipientEmail"]').val('customer.care@searstravel.ca');
		} else if ($(this).val() == 'Gift Registry') {
			$('input[name="recipientEmail"]').val('gift@sears.ca');
		} else {
			$('input[name="recipientEmail"]').val('home@sears.ca');
		}
		
		
		$('input[name="subject"]').val($(this).val());
	});
}
*/

