$(document).ready(function() {
	
	var allowedDates= [];
	
	function isAllowedDate(date) {
		var allowedDates= $('#allowedDates').val().split(',');
		for (var i=0; i<allowedDates.length; i++) {
			var a = new Date(parseInt(allowedDates[i]));
			if (date.getDate() == a.getDate() && date.getMonth() == a.getMonth() && date.getFullYear() == a.getFullYear()) {
				return true;
			}
		}
		return false;
	}
	
	function isPast(date) {
		var today = new Date();
		if (date.getTime() < today.getTime())
			return true;
		return false;
	}
	/*
	function disableDates(cell, date, month, year) {

		if (isPast(date) || (date.getDay() != 0 && date.getDay() != 6 && !isAllowedDate(date))) {
			cell.addClass('disabled');
		} else{
      cell.removeClass('disabled');
    	}
    }
    */
  function disableDates(date, month, year) {
		if (isPast(date) || (date.getDay() != 0 && date.getDay() != 6 && !isAllowedDate(date))) {
    	return [false, 'disabled'];
    } else {
    	return [true, ''];
    }
	}
	
	function disableDaysTandem(date,month,year){
		if (isPast(date) || (date.getDay() != 0 && date.getDay() != 6 && !isAllowedDate(date)) || (date.getMonth() >= 10 || date.getMonth() < 2)) {
    	return [false, 'disabled'];
    } else {
    	return [true, ''];
    }
	}
	
	/*	
	function disableDaysAFF(cell, date, month, year) {

		if (isPast(date) || (date.getDay() != 6  && !isAllowedDate(date)) || (month >= 9 || month < 2)) {
			cell.addClass('disabled');
		} else{
       cell.removeClass('disabled');
      }
	}
	*/
	function disableDaysAFF(date, month, year) {
		if (isPast(date) || (date.getDay() != 6  && !isAllowedDate(date)) || (date.getMonth() >= 9 || date.getMonth() < 2)) {
			return [false, 'disabled'];
		} else {
			return [true, ''];
	  }
	}
	/*
	function enableSaturdaysOnly (cell, date, month, year) {
		cell.removeClass('disabled');
    if (isPast(date) || date.getDay() != 6) {
			cell.addClass('disabled');
		}

  }
  */
	function enableSaturdaysOnly (date, month, year) {
		if (isPast(date) || date.getDay() != 6) {
			return [false, 'disabled'];
		}
		return [true, ''];
	}
		   
	// PNG fixen als IE6
	/*if (jQuery.browser.msie && parseInt(jQuery.browser.version) == 6) {
		$('#frame, #places, #jumpers img, h1 img, #vliegtuig1, #vliegtuig2, #btn-zoek').ifixpng('/images/pixel.gif');
	}*/
	
	// al het weer verbergen en eerste tonen
	$('#hetWeer li ul').hide();
	$('#weerImage').attr('src', '/images/weer/'+$('#hetWeer li:first').attr('class')+'.png');
	$('#hetWeer li:first').toggleClass('active');
	$('#hetWeer li:first ul').toggle();
	
	$('#hetWeer li').click(function() {
		$('#hetWeer li ul').hide();
		$('#hetWeer li').removeClass('active');
		$('#weerImage').attr('src', '/images/weer/'+$(this).attr('class')+'.png');
		$(this).toggleClass('active');
		// fade geeft problemen in IE6 met weer image
		if (jQuery.browser.msie && parseInt(jQuery.browser.version) == 6) {
		  $('ul', this).show();
		}
		else {
			$('ul', this).fadeIn(800);
		}
	});
	
	/*
	$.dpText = {TEXT_CHOOSE_DATE: "<img src='/images/calendar.png' />"};

  var startDate = new Date().asString();
  var endDate = new Date().addMonths(6).asString();
   
	$('#res-datum').datePicker({startDate:startDate, endDate:endDate, renderCallback: disableDates});
	*/
	
	
	// jquery UI datepicker
	$( "#res-datum" ).datepicker("destroy");
	$( "#res-datum" ).datepicker({
		minDate: new Date(),
		maxDate: '+6m',
		showOn: "button",
		buttonImage: "/images/calendar-blue.png",
		buttonImageOnly: true,
		// called for every date before it is displayed
		beforeShowDay: disableDates
	});
	
	$('#res-kandidaten').MultiInput({amount:$('#res-aantal')});
	$('#res-datum').attr('disabled', 'disabled');
	$('#reservatie').bind('submit', {}, function (e) {
		$('#res-datum').attr('disabled', '');
	});
	
	// tabel pagineren
	$("#tbl-open").tablePager();
	
	
	//email check //waardebon
	$('#item21217 form').submit(function() {
		if(validationMessage == ''){
			var email = $('#173').attr('value');
			var msg = "Gelieve uw e-mailadres na te kijken! Annuleer indien fout en corrigeer.\n\nPlease check your e-mail, confirm if correct, cancel and adjust if wrong.\n\n\n";
			msg += email; 
			
			if(email!='')
			var submit = confirm(msg);
			
			if(submit)
				return true;
			
			return false;
		}
    return false;
	});
	
	//email check reservation
	$('#cancelConfirmReservation').bind('click', function() {
		$('#confirmValue').attr('name', 'reserveer_confirm');
		$('#confirmEmailNotification').hide();
	});	

//DIENSTREGELING
$('.dienstregeling ul li.free').hover(
	function(){
		$(this).css('color','red');
		$(this).find('.img_unavailable').attr('src','/images/onbeschikbaar_hover.gif');
		$(this).find('.img_subscribe').attr('src','/images/inschrijven_hover.gif');
	},
	function(){
		$(this).css('color','#555');
		$(this).find('.img_unavailable').attr('src','/images/onbeschikbaar.gif');
		$(this).find('.img_subscribe').attr('src','/images/inschrijven.gif');
	}
);
	
/**
 * AFF
 */
$("select").change(function(e) {
  $(this).parents('div.error-wrapper').replaceWith($(this));
});

$("select[name='res-soort']").change(function() {
  
	var uurSelected = $("select[name='res-uur']").val();
  var dropzoneSelected = $("select[name='res-dropzone']").val();
	var _this = this;
  //reset hour
  $("select[name='res-uur'] option").each(function() {
  	$(this).remove();
  });

  var uurOpties = {
      val1 : '09:00',
      val2 : '11:00',
      val3 : '13:00',
      val4 : '15:00'
    };

   $("select[name='res-uur']").append('<option value="" selected="selected">- uur -</option>');
    $.each(uurOpties, function(val, text) {
        $("select[name='res-uur']").append('<option value="'+text+'" selected="">'+text+'</option>');
    });
   $("select[name='res-uur']").val(uurSelected);
   $("select[name='res-dropzone'] option").each(function() {
      $(this).remove();
   });
   var dropzoneOpties = {
     val1 : 'Moorsele',
     val2 : 'Schaffen',
     val3 : 'Zwartberg'
   };

    $("select[name='res-dropzone']").append('<option value="" selected="selected">- selecteer een dropzone -</option>');
    $.each(dropzoneOpties, function(val, text) {
        $("select[name='res-dropzone']").append('<option value="'+text+'" selected="">'+text+'</option>');
    });
    
    $("select[name='res-dropzone']").val(dropzoneSelected);

	/*
   var startDate = new Date().asString();
   var endDate = new Date().addMonths(6).asString();
 


   $('#res-datum').datePicker({startDate:startDate, endDate:endDate, renderCallback: disableDates});
	*/
	
	// jquery UI datepicker
   		$( "#res-datum" ).datepicker("destroy");
			$( "#res-datum" ).datepicker({
				minDate: new Date(),
				maxDate: '+6m',
				showOn: "button",
				buttonImage: "/images/calendar-blue.png",
				buttonImageOnly: true,
				// called for every date before it is displayed
	//			beforeShowDay: disableDates
				beforeShowDay: disableDaysTandem
			});
	

   if ($(_this).val() == 'AFF Sprong') {
      //change hours //09:00 only for AFF   
     $("select[name='res-uur'] option").each(function() {
        if ($(this).val() != '09:00' && $(this).val() != ''){
          $(this).remove();
        }
     });

   //$('#res-datum').datePicker({startDate:startDate, endDate:endDate, renderCallback: disableDaysAFF});
   
   // jquery UI datepicker
   		$( "#res-datum" ).datepicker("destroy");
   		$( "#res-datum" ).datepicker({
   			minDate: new Date(),
   			maxDate: '+6m',
   			showOn: "button",
   			buttonImage: "/images/calendar-blue.png",
   			buttonImageOnly: true,
   			// called for every date before it is displayed
   			beforeShowDay: disableDaysAFF
	//			beforeShowDay: enableSaturdaysOnly
   		});
   }
   else if($(_this).val() == 'Automatische Opening') {
      //change hours //09:00 only for AFF
     $("select[name='res-uur'] option").each(function() {
        if ($(this).val() != '09:00' && $(this).val() != ''){
          $(this).remove();
        }
     });

     $("select[name='res-dropzone'] option").each(function() {
        if ($(this).val() != 'Moorsele' && $(this).val() != ''){
          $(this).remove();
        }
     });

    //$('#res-datum').datePicker({startDate:startDate, endDate:endDate, renderCallback: enableSaturdaysOnly});
    
    // jquery UI datepicker
	   		$( "#res-datum" ).datepicker("destroy");
    		$( "#res-datum" ).datepicker({
    			minDate: new Date(),
    			maxDate: '+6m',
    			showOn: "button",
    			buttonImage: "/images/calendar-blue.png",
    			buttonImageOnly: true,
    			// called for every date before it is displayed
    			beforeShowDay: disableDaysAFF
	//			beforeShowDay: enableSaturdaysOnly
    		});
   }
   
   
   

   var alertText = '';
  
   if ($("select[name='res-uur']").val() !== uurSelected) {
     alertText = 'Je kan deze jump niet doen op het uur dat je selecteerde. Gelieve een ander uur te kiezen.';
     alertText += "\n\n";
     $("select[name='res-uur']").wrap('<div class="error-wrapper"></div>');
   }
   
   if ($("select[name='res-dropzone']").val() !== dropzoneSelected) {
     alertText += 'Je kan deze jump niet doen in de dropzone die je selecteerde. Gelieve een andere dropzone te kiezen.';
     $("select[name='res-dropzone']").wrap('<div class="error-wrapper"></div>');
   }
   
   if (alertText != '') {
     alert(alertText);
   }
 });




 //reservation popup
 $('#reservationPopup').animate({
   'top': '450px'
 },1500)

 $('#closeReservationPopup').click(function() {
    $('#reservationPopup').animate({
      'top': '-500px'
    },1500, 'linear', function() {
      $('#reservationPopup').css('display','none');
    });

 });
 
 $("select[name='res-soort']").change();
 
});
