$(function(){
	$("a.overlayImg").fancybox();

	$('.eventFullGalleryItem').click(function(){ window.location = $('a',this).attr('href'); });
	$('.eventFullGalleryItem').hover(function(){ $(this).css('cursor','pointer'); $('a',this).addClass('a_hover'); }, function(){ $('a',this).removeClass('a_hover'); });

	$('#bookingDate').hide();
	$('.radio input').click(function(){ $(this).val()=='General' ? $('#bookingDate').hide() : $('#bookingDate').show(); });
	$('#form_month').change(monthDays).select(monthDays).trigger('select');
	
	//Form Validation
	$("#blogCommentForm, #bookingForm").submit(function(){ return formValidation($(this)); });
});

function monthDays(){
	//if((year%100!=0&&year%4==0)||(year%100==0&&year%400==0)) //LEAP YEAR;
	var days = Array(31,29,31,30,31,30,31,31,30,31,30,31);
	var currDays = days[Number($(this).val().substring(0,2))-1];
	var selected = $('#form_day option:selected').val()-1;
	if(!$('#__holder_day').size()) $('<div id="__holder_day" style="display:none" />').append($('#form_day *').clone()).appendTo('body');
	$('#form_day').empty().append($('#__holder_day *:lt('+(currDays)+')').clone());
	$('#form_day option:eq('+selected+')').attr('selected','selected');
}

function formValidation($form){
	var errors = 0;

	$('.reqField',$form).each(function(){
		if(!$(this).val() || ($(this).val() && $(this).hasClass('reqEmail') && !validateEmail($(this).val()))){
			errors++;
			$(this).addClass('reqFieldError');
			$(this).click(function(){
				$('#validationNotice',$form).fadeOut(250,function(){ $(this).remove() });
				$(this).removeClass('reqFieldError').unbind('click');
			});
		}
	});
	
	if(errors){
		$('#validationNotice',$form).remove();
		$($form).append('<div id="validationNotice" style="color:#f55; padding-top:7px">Please fill out all the required fields before submitting.</div>');
		return false;
	}
	
	return true;
}

function validateEmail(val){      
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	return emailPattern.test(val); 
}



$(function(){
   
    // Add the submit link (so non-javascript browsers won't allow continue)
    $('#cart_personal_details').append("<input id='cart_proceed' type='submit' value='Pay now' />");
    
   $('#cart_update').click(function(){
       var tix = {};
       $('#onlineTixCart .cartTicket .quantity').each(function(){
           tix[ $(this).prev().val() ] = $(this).val();
       });
       $.ajax({
           async: false,
           data: tix,
           type: 'POST',
           url: '/inc/cart.update.php',
           success: function(){
               window.location.href = '/online-tix'
           }
       });
       return false;
   });
   
   check_personal_details();
   function check_personal_details(){
       var safe = true;
       
       $('#cart_personal_details input.req').each(function(){
           if(!$(this).val().length)
            safe = false;
           if($(this).hasClass('reqEmail') && !validateEmail($(this).val()))
            safe = false;
       });

       if(safe)
        $('#cart_personal_details #cart_proceed').fadeTo(0,1).removeClass('disabled');
       else
        $('#cart_personal_details #cart_proceed').fadeTo(0,.5).addClass('disabled');
   }
   
   $('#cart_personal_details input, #cart_personal_details select')
    .keyup(check_personal_details);
   
   $('#cart_personal_details #cart_proceed').click(function(){
        if($(this).hasClass('disabled'))
            return false;
   });
   
   $('#cart_personal_details').submit(function(){
       var $this = $(this);
       
       var result = false;
       $.ajax({
           async: false,
           data: {
               first: $('input[name="First name"]', this).val(),
               last: $('input[name="Last name"]', this).val(),
               email: $('input[name="Email"]', this).val(),
               mobile: $('input[name="Mobile"]', this).val(),
               gender: $('select[name="Gender"]', this).val(),
               postcode: $('input[name="Postcode"]', this).val()
           },
           type: 'POST',
           url: '/inc/cart.presave.php',
           success: function(e){
               $('input[name="reply_link_url"]', $this).val( "http://redbennies.com/inc/success?id=" + e );
               result = true;
           }
       });
       
       return result;
   });
   
    
});
