$(window).ready(function() {
	var intervals_in_booking = $('#value_intervals_in_booking').text();
	
	$('#date')
		.click(function() {
			$(this)
				.datepicker('dialog',$('#value_datestamp').text(),function(text,data) {location.href = '?date=' + text},{
					changeMonth		: true,
					changeYear		: true,
					dateFormat		: 'yy-mm-dd',
					dayNames		: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
					dayNamesMin		: ['Sø','Ma','Ti','On','To','Fr','Lø'],
					dayNamesShort	: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
					monthNames		: ['Januar','Februar','Marts','April','Maj','Juni','Juli','August','September','Oktober','November','December'],
					monthNamesShort	: ['Jan','Feb','Mar','Apr','Maj','Jun','Jul','Aug','Sep','Okt','Nov','Dec'],
					showWeek		: false,
					hideIfNoPrevNext: true,
					minDate			: '-0 d',
					maxDate			: '+12 m',
					weekHeader		: ''
				});
				
			$('#ui-datepicker-div').css('z-index',100);
		});
		
	$('#confirm_more')
		.click(function() {
			$(this)
				.parent()
				.attr('action','reserve.php?date=' + $('#value_datestamp').text())
				.submit();
		});
		
	$('#password_new')
		.click(function() {
			location.href = 'forgotten.php';
		});
		
	$('.interval')
		.click(function() {
			if ($(this).hasClass('interval_free')) {
				// fjern tidligere markering
				clear_booking();
				
				// marker påbegyndelsestidspunkt
				$(this)
					.addClass('interval_selected_top');
					
				// gem banevalg og påbegyndelsestidspunkt
				$('#input_sheet').val($(this).parent().attr('sheet'));
				$('#input_from').val($(this).attr('interval_time'));
					
				var elm		= $(this);
				
				// kør efterfølgende perioder igennem for at tjekke om de er ledige
				for(i=0;i<intervals_in_booking - 1;i++) {
					// ikke flere tider denne dag
					if ($(elm).next().length == 0) {
						// der ønskes at bookes så længe muligt
						if (confirm('Der kan ikke bookes så længe, ønsker du at booke så længe muligt?')) {
							// marker forrige som sluttidspunkt
							$(elm)
								.addClass('interval_selected_to');
							
								// gem forrige som sluttidspunkt
							$('#input_to').val($(elm).attr('interval_time'));
						}
						// der ønskes ikke at bookes
						else clear_booking();
						
						break;
					}
					// flere tider
					else {
						elm = $(elm).next();
						
						// intervallet er ledigt
						if ($(elm).hasClass('interval_free')) {
							// hvis sidste interval
							if (i == (intervals_in_booking - 2)) {
								// marker afslutning
								elm.addClass('interval_selected_to');
								
								// gem sluttidspunkt
								$('#input_to').val($(elm).attr('interval_time'));
							}
						}
						// intervallet er ikke ledigt
						else {
							// der ønskes at bookes så længe muligt
							if (confirm('Det valgte tidsrum er ikke fuld tid, ønsker du stadig at booke?')) {
								elm = $(elm).prev();
								
								// marker forrige som sluttidspunkt
								$(elm)
									.addClass('interval_selected_to');
								
									// gem forrige som sluttidspunkt
								$('#input_to').val($(elm).attr('interval_time'));
							}
							// der ønskes ikke at bookes
							else clear_booking();
							
							//kør kun denne og ikke flere perioder
							break;
						}
					}
				}
				
				start_booking();
			}
			else alert('Det valgte tidspunkt er ikke ledig');
		})
		.mouseover(function() {
			if ($(this).hasClass('interval_free')) {
				$(this)
					.addClass('interval_top');
					
				var elm		= $(this);
					
				for(i=0;i<intervals_in_booking - 1;i++) {
					elm = $(elm).next();
					
					var free = $(elm).hasClass('interval_free');
					
					if (free == true) {
						if (i == (intervals_in_booking - 2)) elm.addClass('interval_to');
					}
					else {
						$(elm)
							.prev()
							.addClass('interval_to');
						
						break;
					}
				}
			}
		})
		.mouseout(function() {
			$('.interval')
				.removeClass('interval_top')
				.removeClass('interval_to');
		});
});

function start_booking() {
	$('#confirm')
		.show();
		
	var sheet = $('#input_sheet').val();
	if (sheet == 5) sheet = 'Klublokalet';
		
	$('#confirm_sheet')
		.text(sheet);
		
	$('#confirm_more')
		.show();
		
	var to = $('#input_to').val().split(':');
	
	to[1] = parseInt(to[1]) + parseInt($('#value_interval').text()) - $('#value_overhead').text();
	
	var diff = Math.floor(to[1]/60);
	
	to[0] = parseInt(to[0]) + diff;
		
	$('#confirm_time')
		.text($('#input_from').val() + ' - ' + to[0] + ':' + ((to[1] < 10)? ('0' + to[1]) : to[1]));
}

function clear_booking() {
	$('#input_sheet')
		.val(0);
		
	$('#input_from')
		.val(0);
		
	$('#input_to')
		.val(0);
	
	$('.interval_selected_top')
		.removeClass('interval_selected_top');
		
	$('.interval_selected_to')
		.removeClass('interval_selected_to');
	
	$('#confirm')
		.hide();
}
