﻿/**
 * Express Travel JavaScript
 * @author eSellution <http://esellution.co.uk>
 * @date   2011/Oct/28
 */

$(window).load(function() {

	// jQuery Nivo Slider
	$('#page-index .nivoSlider').nivoSlider({
		effect: 'fade',
		animSpeed: 540,
		pauseTime: 3420,
		directionNav: false
	});
	$('#page-services .nivoSlider').nivoSlider({
		effect: 'fade',
		animSpeed: 500,
		pauseTime: 7500,
		directionNav: false,
		controlNav: false
	});

	// jQuery Lightbox
	$('#page-gallery #page li a').lightBox();

	// Page expander
	var elW = $(window);
	var elB = $('body');
	var elF = $('#footer');
	var elM = $('#main');
	if ( elF.length > 0 && elM.length > 0 ) {
		var diff;
		var gap = parseInt(elF.css('marginBottom'));
		var naturalHeight = elB.height() + gap;
		pageExpander();
		window.onresize = function(){	pageExpander();	}
	}
	function pageExpander() {
		diff = elW.height() - naturalHeight;
		diff = (diff>0?diff:0);
		elM.css('paddingBottom',diff);
	}

});

$(function(){

	// Animated hover slider for left-hand "Contact Us" link
	var contactUs = $('#contact-us');
	if (contactUs.length > 0) {
		var contactUsLeft = Math.abs(parseInt(contactUs.css('left')));
		var rate = 675;
		contactUs.hover(function(){ // Hover on
			$(this).animate({
				left: '+='+contactUsLeft+'px'
				}, rate, function(){});
		},function(){ // Hover off
			$(this).animate({
				left: '-='+contactUsLeft+'px'
				}, rate*1.3, function(){});
		});
	}

	// jQuery Jcarousel
	$('#slide-logos ul').jcarousel({
		scroll: 1,
		auto: 5,
		animation: 1000,
		wrap: 'circular'
	});

	// jQuery UI Datepicker
	$('input.datepicker').datepicker({
		dateFormat: 'd M yy',
		minDate: 0
	});
	
	// jQuery validation
	$('#page-contact #page form').validate({
		rules: {
			'contact[Name]': { required: true },
			'contact[Email]': { required: true, email: true },
			'contact[Comments]': { required: true },
			'contact[Captcha]': { required: true }
		},
		messages: {
			'contact[Name]': { required: 'Please enter your name.' },
			'contact[Email]': { required: 'Please enter your email address.', email: 'Please enter a valid email address.' },
			'contact[Comments]': { required: 'Please write a comment.' },
			'contact[Captcha]': { required: 'Please correctly answer the sum.' }
		}
	});

	// Print coupon link
	var elCoupon = $('#page-coupon #page p strong.instruction');
	elCoupon.wrapInner('<a href="#"></a>').find('a').live('click',function(e){
		e.preventDefault();
		window.print();
	});

});

