
$(document).ready(function() {
	fixMetaLine();
	initFrmRent();
	observeImageSlider();
	observeCityDescSEO();
	observeParkinglotDescSEO();
	observeFormRequestSent();
	observeNavteqIFrame();
	observeTicketTooltips();
	observeBookmarkLink();
	observeFormTicketRequest();
});

function fixMetaLine() {

	if ($.browser.msie) {
		$('.MENU_LEFT, .LANGUAGE').css('margin-top', '1px');
	}
	if ($.browser.safari) {
		$('.MENU_LEFT, .LANGUAGE').css('margin-top', '3px');
	}
}

function initFrmRent() {

	if ($('#frmRent')) {

		if ($('.frmRentType')) {
			$('.frmRentType').change(function() {
				selType();
			});
			selType();
        }
	}
}

var slideshow;
var activeimg = 1;
var numberimg = 3;
function observeImageSlider() {

	if ($('.ce_imageslider_wrapper_all').length > 0) {

		$('.IS_BTN_1').addClass('IS_BTN_SEL');
	
		$('.IS_BTN_1, .IS_BTN_2, .IS_BTN_3').mouseenter(function() {

			window.clearInterval(slideshow);

			var arImgClass = $(this).prev().attr('class').split('_');
			var newimg = arImgClass[1];

			if (activeimg != newimg) {

				$('.ce_imageslider_wrapper_all .IMG_1, .ce_imageslider_wrapper_all .IMG_2, .ce_imageslider_wrapper_all .IMG_3').fadeOut();
				$('.ce_imageslider_wrapper_all .IMG_' + newimg).fadeIn();

				$('.IS_BTN_1, .IS_BTN_2, .IS_BTN_3').removeClass('IS_BTN_SEL');
				$(this).addClass('IS_BTN_SEL');
				
				activeimg = newimg;
			}
		});
		/*$('.ce_imageslider_wrapper_all').mouseleave(function() {

			activeimg = 1;
			slideshow = window.setInterval("doTheSlideshow()", 7500);
		});*/

		slideshow = window.setInterval("doTheSlideshow()", 3000);
	}
}
function doTheSlideshow () {

	$('.ce_imageslider_wrapper_all .IMG_1, .ce_imageslider_wrapper_all .IMG_2, .ce_imageslider_wrapper_all .IMG_3').fadeOut();

	activeimg++;
	if (activeimg > numberimg) {
		activeimg = 1;
	}

	$('.IS_BTN_1, .IS_BTN_2, .IS_BTN_3').removeClass('IS_BTN_SEL');
	$('.IS_BTN_' + activeimg).addClass('IS_BTN_SEL');

	$('.ce_imageslider_wrapper_all .IMG_' + activeimg).fadeIn();
}

function selType() {

	if ($('.frmRentType:checked').attr('id') == 'selPrivate') {
		$('.private').css('display', 'block');
		$('.company').css('display', 'none');
		selSingleTotalPrice();
	}
	else if ($('.frmRentType:checked').attr('id') == 'selCompany') {
		$('.company').css('display', 'block');
		$('.private').css('display', 'none');
		formCalcPriceTotal();
	}

}


function observeFormRequestSent() {

	if ($('#apcoaParkingThankYouForSendingRequest').length > 0) {
		$('.SINGLE_VIEW_LEFT, .SINGLE_VIEW_RIGHT').remove();
	}
}


function observeCityDescSEO() {

	if ($('.LIST_VIEW_DESC').length > 0) {
		if ($('.LIST_VIEW_DESC').html() == '') {
			$('.LIST_VIEW_DESC').remove();
		}
		else {
			$('.CONTENT').after($('.LIST_VIEW_DESC'));
			$('.LIST_VIEW_DESC').css('display', 'block');
		}
	}
}


function observeParkinglotDescSEO() {

	if ($('.SINGLE_VIEW_DESC').length > 0) {
		if ($('.SINGLE_VIEW_DESC').html() == '') {
			$('.SINGLE_VIEW_DESC').remove();
		}
		else {
			$('.CONTENT').after($('.SINGLE_VIEW_DESC'));
			$('.SINGLE_VIEW_DESC').css('display', 'block');
		}
	}
}


function observeNavteqIFrame() {

	if (($('#maparea').length > 0) && ($('#mapUrl').length > 0) && ($('#mapDomain').length > 0)) {

		if ($('#mapUrl').attr('value') && $('#mapDomain').attr('value')) {

			var if_height,
			src = $('#mapUrl').attr('value') + '#' + encodeURIComponent(document.location.href),
			iframe = $('<iframe src="' + src + '" width="734" height="513" scrolling="no" frameborder="0"><\/iframe>').appendTo('#maparea');

			$.receiveMessage(function(e) {

				var h = Number(e.data.replace(/.*if_height=(\d+)(?:&|$)/, '$1'));

				if (!isNaN(h) && h > 0 && h !== if_height) {
					iframe.height(if_height = h);
				}

			}, 'http://' + $('#mapDomain').attr('value'));
		}
	}
}

function observeTicketTooltips() {

	if ($('.tickettypeActive, .pathTicketTypeInfo, .forminfo').length > 0) {

		$('.tickettypeActive, .pathTicketTypeInfo, .forminfo').tooltip({
			effect: 'slide',
			position: 'top right',
			offset: [0, -25]
		});
	}
}

function observeBookmarkLink() {

	if (window.opera) {
		if ($('a.jqbookmark').attr('rel') != '') {
			$('a.jqbookmark').attr('rel', 'sidebar');
		}
	}

	$('a.jqbookmark').click(function(event) {

		event.preventDefault();
		var url = this.href;
		var title = this.title;

		if (window.sidebar) {
			window.sidebar.addPanel(title, url, '');
		}
		else if (window.external) {
			window.external.AddFavorite(url, title);
		}
		else if (window.opera) {
			return false;
		}
		else {
			alert('Dieser Browser unterstützt leider keine automatische Bookmark-Funktion. Bitte fügen Sie diese Seite manuell Ihren Favoriten hinzu.');
		}
	});
}

function observeDatePickerFields() {

	$.tools.dateinput.localize('de', {
	   months:        'Januar,Februar,M&auml;rz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember',
	   shortMonths:   'Jan,Feb,M&auml;r,Apr,Mai,Jun,Jul,Aug,Sep,Okt,Nov,Dez',
	   days:          'Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag',
	   shortDays:     'So,Mo,Di,Mi,Do,Fr,Sa'
	});

	if ($('#frmDatum').length > 0) {
		$('#frmDatum').dateinput({
			lang: 'de',
			format: 'dd.mm.yyyy',
			min: 3,
			offset: [10, 20],
			speed: 'fast',
			firstDay: 1
		});
	}

	if ($('#frmDatum1, #frmDatum2').length > 0) {
		$('#frmDatum1, #frmDatum2').dateinput({
			lang: 'de',
			trigger: true,
			format: 'dd.mm.yyyy',
			min: 3,
			offset: [10, 20],
			speed: 'fast',
			firstDay: 1
		});
	
		$('#frmDatum1').data('dateinput').change(function() {
			$('#frmDatum2').data('dateinput').setMin(this.getValue(), true);
			checkDatePickerThreeMonth();
			$('#frmTicketRequest').validator({ lang: 'de'} );
		});
		$('#frmDatum2').data('dateinput').change(function() {
			checkDatePickerThreeMonth();
			$('#frmTicketRequest').validator({ lang: 'de'} );
		});
	}
}
function checkDatePickerThreeMonth() {

	var date1 = new Date($('#frmDatum1').data('dateinput').getValue());
	var date2 = new Date($('#frmDatum2').data('dateinput').getValue());

	if ((date2.getTime() - date1.getTime()) > (86400000 * 90)) {
		$('.dauerparker').css('display', 'block');
	}
	else {
		$('.dauerparker').css('display', 'none');
	}
}

function observeFormTicketRequest() {

	if ($('#frmTicketRequest, #frmTicketConfirmation').length > 0) {

		$.tools.validator.localize('de', {
			'*'  			: 'Bitte f&uuml;llen Sie dieses Feld aus',
			':email'  		: 'Bitte korrigieren Sie Ihre E-Mail',
			':number' 		: 'Geben Sie bitte nur Zahlen ein',
			'[max]'	 		: 'Bitte geben Sie eine Zahl kleiner oder gleich $1 ein',
			'[min]'	 		: 'Bitte geben Sie eine Zahl gr&ouml;&szlig;er oder gleich $1 ein',
			'[required]' 	: 'Bitte f&uuml;llen Sie dieses Pflichtfeld aus'
		});

		if ($('#frmTicketRequest').length > 0) {
	
			$('.anfrageTyp').click(function() {
				checkAnrede($('.anfrageTyp'));
			});
			$('.zahlungsart').click(function() {
				checkZahlungsart($('.zahlungsart'), true);
			});
	
			checkAnrede($('.anfrageTyp'));
	
			if ($('.saisonTyp').length > 0) {
	
				observeDatePickerFields();
	
				$('.saisonTyp').click(function() {
					checkSaisonTyp($('.saisonTyp'), true);
				});
			}

			if ($('#frmWert').length > 0 && $('#frmWertCent').length > 0) {
				checkWertFields();

				$('#frmWert, #frmWertCent').change(function() {
					checkWertFields();
				});
			}
			
		}

		if ($('#frmTicketConfirmation').length > 0) {
			$('#frmTicketConfirmation').validator({ lang: 'de'} );
		}
	}
}

function checkWertFields() {

	if ($('#frmWert').val() == '30') {
		$('#frmWertCent').val('00');
	}
}

function checkAnrede(obj) {

	checkZahlungsart($('.zahlungsart'), false);

	if ($('.saisonTyp').length > 0) {
		checkSaisonTyp($('.saisonTyp'), false);
	}

	if (obj[1].checked) {
		$('.frmFirma').css('display', 'none');
		$('.frmFirma #frmFirma').removeAttr('required');
	}
	else {
		$('.frmFirma').css('display', 'block');
		$('.frmFirma #frmFirma').attr('required', 'required');
	}

	$('#frmTicketRequest').validator({ lang: 'de'} );
}

function checkZahlungsart(obj, bValidator) {

	if (obj[0].checked) {
		$('.frmZahlart').css('display', 'block');
		$('.frmTicketRow #frmKontoinhaber').attr('required', 'required');
		$('.frmTicketRow #frmBankName').attr('required', 'required');
		$('.frmTicketRow #frmKontonummer').attr('required', 'required');
		$('.frmTicketRow #frmBankleitzahl').attr('required', 'required');
	}
	else {
		$('.frmZahlart').css('display', 'none');
		$('.frmTicketRow #frmKontoinhaber').removeAttr('required');
		$('.frmTicketRow #frmBankName').removeAttr('required');
		$('.frmTicketRow #frmKontonummer').removeAttr('required');
		$('.frmTicketRow #frmBankleitzahl').removeAttr('required');
	}

	if (bValidator) {
		$('#frmTicketRequest').validator({ lang: 'de'} );
	}
}

function checkSaisonTyp(obj, bValidator) {

	if (obj[0].checked) {
		$('.calDay').css('display', 'block');
		$('.calDates').css('display', 'none');
		$('.frmTicketRow #frmDatum').attr('required', 'required');
		$('.frmTicketRow #frmDatum1').removeAttr('required');
		$('.frmTicketRow #frmDatum2').removeAttr('required');
	}
	else {
		$('.calDay').css('display', 'none');
		$('.calDates').css('display', 'block');
		$('.frmTicketRow #frmDatum').removeAttr('required');
		$('.frmTicketRow #frmDatum1').attr('required', 'required');
		$('.frmTicketRow #frmDatum2').attr('required', 'required');
	}

	if (bValidator) {
		$('#frmTicketRequest').validator({ lang: 'de'} );
	}
}
