jQuery(function($) {
	$('#input_1_11 li').each(function() {
		if ($(this).index() % 3 == 0) {
			$(this).addClass('third');
		}
	});
	
	// Homepage Slideshow
	(function() {
		var fader = $('#views_slideshow_singleframe_teaser_section_services-block_1');
		var elements = fader.find('.views_slideshow_slide');
		var pause = 3000;
		var duration = 500;
		
		setInterval(function() {
			var visible_elements = elements.filter(':visible');
			if (visible_elements.length > 1) {
				visible_elements.last().fadeOut(duration);
			} else {
				elements.last().fadeIn(duration, function() {
					elements.show();
				});
			}
		}, pause);
	})();
	
	// Property Page Fader
	(function() {
		var fader = $('.sre-fader');
		var ulF = fader.find('ul');
		var lisF = ulF.find('li');
		
		var faderNav = $('.sre-fader-navigation');
		var ulN = faderNav.find('ul');
		var lisN = ulN.find('li');
		
		lisN.fadeTo(0, 0.4).hover(function() {
			$(this).fadeTo(300, 1);
		}, function() {
			$(this).fadeTo(300, 0.4);
		}).find('a').click(function() {
			var link = $(this);
			
			lisF.filter(':visible').fadeOut(500);
			lisF.filter(':eq(' + link.parent().index() + ')').fadeIn(500);
			
			return false;
		});
		
		lisF.filter(':not(:first)').fadeOut(0);
	})();
	
	$('a.fancybox').each(function() {
		var link = $(this);
		var image = link.find('img');
		if (image.length) {
			link.attr('title', image.attr('alt'));
		}
	}).fancybox({
		titlePosition: 'over'
	});
	
	$('.sre-date').datepicker();
	
	$('.validate').submit(function() {
		var valid = true;
		var errors = '';
		
		$(this).find('.required').each(function() {
			if ($(this).val() == '') {
				$(this).addClass('field-error');
				errors += 'The "' + $(this).attr('title') + '" field is required\n';
				if (valid) {
					$(this).focus();
				}
				valid = false;
			} else {
				$(this).removeClass('field-error');
			}
		});
		
		$(this).find('.email').each(function() {
			var pattern=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
			
			if (!pattern.test($(this).val())) {
				$(this).addClass('field-error');
				errors += 'The email address you entered is not valid\n';
				if (valid) {
					$(this).focus();
				}
				valid = false;
			} else {
				$(this).removeClass('field-error');
			}
		});
		
		if (!valid) {
			alert(errors + '\n ');
		}
		
		return valid;
	});
});
