(function($) {
	
	$(document).ready(function() {
	    $('#slideshow .slides').cycle({
			fx: 'scrollHorz',
			timeout: 6000,
			pager:$("#slideshow .indicator"),
			pagerAnchorBuilder:function(index, DOMelement) {
				return $("<a href='#'></a>");
			}
		});
		
		// Landing page text toggle
		$("#landing-text .initial .toggle").click(function(){
			$("#landing-text > .initial").css('display', 'none');
			$("#landing-text > .toggle").css('display', 'block');
		});
		
		$("#landing-text .toggle .initital").click(function(){
			$("#landing-text > .initial").css('display', 'block');
			$("#landing-text > .toggle").css('display', 'none');
		});
		
		/*
			Extra validation for CF7 forms
		*/
		$("form").submit(function(){
			
			$(this).find("span.error").remove();
			
			var errors = 0;
			
			$(this).find("input, textarea").each(function(){
				
				// Validate email
				if($(this).hasClass("email")
				&& !(/^[!-'*+=?{-~\/-9A-Z^-z-]+(\.[!-'*+={-~\/-9A-Z^-z-]+)*@[!#$%&'*+"\/=?^_`{|}~0-9A-Za-z-]+\.[!-'*+={-~\/-9A-Z^-z-]{2,}/).test(this.value)) {
					$(this).addClass("error");
					$(this).after("<span class='error'>Fältet måste innehålla en e-postadress</span>");
					errors++;
					return;
				}
				
				// Validate numbers (this requires the number class to be manually added to the field in CF7 settings)
				if($(this).hasClass("number") && !(/^[0-9]+$/).test(this.value) && this.value != '') {
					$(this).addClass("error");
					$(this).after("<span class='error'>Fältet får endast innehålla siffror</span>");
					errors++;
					return;
				}
				
				if($(this).hasClass("required") && this.value == "") {
					$(this).addClass("error");
					$(this).after("<span class='error'>Fältet får inte vara tomt</span>");
					errors++;
					return;
				}
				
			});	
			
			return errors > 0 ? false : true;
		});
	
	});
	
})(jQuery);
