// JavaScript Document

var docHeight = $(window).height(); // Current window/document height
var bodyHeight = $('body').height(); // Current body height

$(document).ready(function(){
	
	// Footer Position Fix
		
	if (docHeight > bodyHeight) {
		$('.footer').css({'position' : 'absolute', 'bottom' : '0'});
	} else {
		$('.footer').css({'position' : 'relative', 'bottom' : ''});
	}
	
	// Navigation Drop Down Menus
	
	$('.nav li').hover(
		function () {
			//find li a position
			var p = $('a', this);
			var position = p.position();
			//alert(position.left)
			//show its submenu
			$('ul', this).css('left', position.left);
			$('ul', this).stop(true, true).fadeIn(200);
			$(this).addClass('active');
		},
		function () {
			//hide its submenu
			$('ul', this).stop(true, true).delay(500).fadeOut(250);
			$(this).removeClass('active');
		}
	);
	
	$('.tyreIcons li').hover(
		function () {
			//find li a position
			var p = $('a', this);
			var position = p.position();
			//alert(position.left)
			//show its submenu
			$('ul', this).css('left', position.left);
			$('ul', this).stop(true, true).fadeIn(200);
			$(this).addClass('active');
		},
		function () {
			//hide its submenu
			$('ul', this).stop(true, true).delay(500).fadeOut(250);
			$(this).removeClass('active');
		}
	);
	
	// Banner Slideshow - jQuery Cycle
	
	if ($('.banner').size()) {
		$('.slides').cycle({ 
			fx:     'fade', 
			pager:  '.pager',
			
			pagerAnchorBuilder: function(idx, slide) { 
        		return '<a href="#">0' + (idx + 1) + '</a>'; 
    		}
		});
	}
	
	// Newsletter form field focus/blur change
	$('#cddl-cddl').focus(function(){
		if ($(this).val() == $(this).attr('title')) {
			$(this).val('');
		}
	});
	$('#cddl-cddl').blur(function(){
		if ($(this).val() == ''){
			$(this).val($(this).attr('title'));
		}
	}); 
	
	// Campaign Monitor Subscribe
	
	$("#btSubscribe").click(function(){
		$("#submitSubscribe").trigger("click");
	});
	
	$('#subForm').submit(function (e) {
		e.preventDefault();
		$.getJSON(
		this.action + "?callback=?",
		$(this).serialize(),
		function (data) {
			if (data.Status === 400) {
				// Error
				//alert("Error: " + data.Message);
				$('#cddl-cddl').fadeOut(350, function(){
					$('.message').stop(true, true).html(data.Message).fadeIn(350).delay(3000).fadeOut(350, function(){
						$('#cddl-cddl').fadeIn(350);
					});
				});
				
			} else { // 200
				// Success
				//alert("Success: " + data.Message);
				$('#cddl-cddl').fadeOut(350, function(){
					$('#cddl-cddl').val($('#cddl-cddl').attr('title'));
					$('.message').stop(true, true).html(data.Message).fadeIn(350).delay(8000).fadeOut(350, function(){
						$('#cddl-cddl').fadeIn(350);
					});
				});
			}
		});
	});
	
	// Last Box Fix
	
	if ($('.box').size()) {
		$('.box').last().css('margin-bottom', '0');
	}
	
});

$(window).resize(function() {
	
	// Footer Position Fix
	
	if ($(window).height() > ($('body').height() + 65)) {
		$('.footer').css({'position' : 'absolute', 'bottom' : '0'});
	} else {
		$('.footer').css({'position' : 'relative', 'bottom' : ''});
	}

});

/** 01. Page Scroll **/

// Scroll to top of page with smooth transition

function scrollTop() {
	$("html, body").animate({ scrollTop: 0 }, 1000);
}

/** ***************** **/

/******* 02. Form Validation *******/

function submitForm(formID) {
	
	var passed = true;
	
	$('#' + formID + ' .fieldRequired').each(function(index) {
		if ($(this).val() == "") {
			$(this).addClass('required');
			passed = false;
		} else {
			$(this).removeClass('required');
		}
	});
	
	if ($('#email' + formID).val() == "") {
		$('#email' + formID).addClass('required');
		passed = false;
	} else {
		if (checkRegexp($('#email' + formID),/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i) == false) {
			$('#email' + formID).addClass('required');
			passed = false;
		} else {
			$('#email' + formID).removeClass('required');
		}
	}

	if (passed == true) {
		$.post("scripts/contact-form.php", $("#" + formID).serialize(), function(data) {
			if (data.message == 'Success') {
				$("#" + formID).fadeOut(350, function(){
					$('#message' + formID).html('Thank you for your enquiry, we will be in touch shortly.').fadeIn(350);
				});
			} else {
				$('#message' + formID).html('There has been an error. Please try again.').fadeIn(200);
			}
		}, "json");
	}
}

// Email address valid check

function checkRegexp(o,regexp) {
	if (!(regexp.test(o.val()))) {	  
		return false;
	} else {
		return true;
	}
}

/******* *******/
