// Tennerhof Main JS

/*#############################################################
Toggle Content
#############################################################*/

function HideContent(d) {
if(d.length < 1) { return; }
document.getElementById(d).style.display = "none";
}
function ShowContent(d) {
if(d.length < 1) { return; }
document.getElementById(d).style.display = "block";
}
function ReverseContentDisplay(d) {
if(d.length < 1) { return; }
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "none"; }
}


/*#############################################################
Zimmerpreise Sommer Winter umschaltung
#############################################################*/
function showSummerPrices() {
	document.getElementById('preiseSommer').style.display = "block";	
	document.getElementById('preiseWinter').style.display = "none";
	document.getElementById('sommerPreisTab').className = "preisSwitchActive";	
	document.getElementById('winterPreisTab').className = "preisSwitchInActive";		
	}
function showWinterPrices() {
	document.getElementById('preiseSommer').style.display = "none";	
	document.getElementById('preiseWinter').style.display = "block";
	document.getElementById('sommerPreisTab').className = "preisSwitchInActive";	
	document.getElementById('winterPreisTab').className = "preisSwitchActive";		
	}

/*#############################################################
Toggle Link Color for Mouseover Mainmenu
#############################################################*/
function changeFontColor(tochange,farbe) {
	var zuaendern = document.getElementById(tochange);
	if (zuaendern != null) {
	zuaendern.style.color = farbe;	
	}
    }
	
	



	
	
// Mouseover Functions based on jQuery for Startpages
$(document).ready(function(){
// Main Menu Hover Functions
	$("#nav li").mouseover(function() {
		//alert(this);
		$(this).find(".level2hover").show();
	});
	$("#nav li").mouseleave(function() {
		//alert(this);
		$(this).find(".level2hover").hide();
	});
	$(".level2hover").mouseleave(function() {
		//alert(this);
		$(this).hide();
	});


/*#############################################################
Semi Active Boxes Rollover
#############################################################*/
	$(".arrList").mouseenter(function() {
	$(".arrList").addClass("semiActive");
	$(this).removeClass("semiActive");
	});
	
	$("#sommerListe").mouseenter(function() {
	$(".winterArrOverview").stop(true,true);
	$(".summerArrOverview").stop(true,true);
	$(".summerArrOverview").fadeIn(500);
	$(".winterArrOverview").hide();
	});
	
	$("#winterListe").mouseenter(function() {
	$(".winterArrOverview").stop(true,true);
	$(".summerArrOverview").stop(true,true);
	$(".winterArrOverview").fadeIn(500);
	$(".summerArrOverview").hide();
	});




// Mouseover Functions based on jQuery for Startpages						   
	$("#slideUpBox1").mouseover(function() {							 
		$("#slideUpBox1 .slideUpContent").stop(true,true);
		$("#slideUpBox1 .slideUpContent").slideDown(200);
		$("#slideUpBox1").addClass("slideBoxOpen");
	});

	$("#slideUpBox1").mouseleave(function() {
		$("#slideUpBox1 .slideUpContent").stop(true,true);
		$("#slideUpBox1 .slideUpContent").slideUp(200);
		$("#slideUpBox1").removeClass("slideBoxOpen");		
	});
	
	$("#slideUpBox2").mouseover(function() {							 
		$("#slideUpBox2 .slideUpContent").stop(true,true);
		$("#slideUpBox2 .slideUpContent").slideDown(200);
		$("#slideUpBox2").addClass("slideBoxOpen");		
	});
	$("#slideUpBox2").mouseleave(function() {
		$("#slideUpBox2 .slideUpContent").stop(true,true);
		$("#slideUpBox2 .slideUpContent").slideUp(200);
		$("#slideUpBox2").removeClass("slideBoxOpen");			
	});
	
	$("#slideUpBox3").mouseover(function() {							 
		$("#slideUpBox3 .slideUpContent").stop(true,true);
		$("#slideUpBox3 .slideUpContent").slideDown(200);
		$("#slideUpBox3").addClass("slideBoxOpen");		
	});
	$("#slideUpBox3").mouseleave(function() {
		$("#slideUpBox3 .slideUpContent").stop(true,true);
		$("#slideUpBox3 .slideUpContent").slideUp(200);
		$("#slideUpBox3").removeClass("slideBoxOpen");			
	});	
	
	$("#slideUpBox4").mouseover(function() {							 
		$("#slideUpBox4 .slideUpContent").stop(true,true);
		$("#slideUpBox4 .slideUpContent").slideDown(200);
		$("#slideUpBox4").addClass("slideBoxOpen");		
	});
	$("#slideUpBox4").mouseleave(function() {
		$("#slideUpBox4 .slideUpContent").stop(true,true);
		$("#slideUpBox4 .slideUpContent").slideUp(200);
		$("#slideUpBox4").removeClass("slideBoxOpen");			
	});						   	



	///// Datepicker

$.datepicker.regional['de'] = {
		closeText: 'schlie&szlig;en',
		prevText: '&#x3c;zur&uuml;ck',
		nextText: 'Vor&#x3e;',
		currentText: 'heute',
		monthNames: ['J&auml;nner','Februar','M&auml;rz','April','Mai','Juni',
		'Juli','August','September','Oktober','November','Dezember'],
		monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
		'Jul','Aug','Sep','Okt','Nov','Dez'],
		dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
		dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		weekHeader: 'Wo',
		dateFormat: 'dd.mm.yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''
	};

	$.datepicker.regional['ru'] = {
		closeText: 'schlie&szlig;en',
		prevText: '&#x3c;zur&uuml;ck',
		nextText: 'Vor&#x3e;',
		currentText: 'heute',
		monthNames: ['J&auml;nner','Februar','M&auml;rz','April','Mai','Juni',
		'Juli','August','September','Oktober','November','Dezember'],
		monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
		'Jul','Aug','Sep','Okt','Nov','Dez'],
		dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
		dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		weekHeader: 'Wo',
		dateFormat: 'dd.mm.yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''
	};

	$.datepicker.regional['it'] = {
		closeText: 'schlie&szlig;en',
		prevText: '&#x3c;zur&uuml;ck',
		nextText: 'Vor&#x3e;',
		currentText: 'heute',
		monthNames: ['J&auml;nner','Februar','M&auml;rz','April','Mai','Juni',
		'Juli','August','September','Oktober','November','Dezember'],
		monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
		'Jul','Aug','Sep','Okt','Nov','Dez'],
		dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
		dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
		weekHeader: 'Wo',
		dateFormat: 'dd.mm.yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''
	};

	switch (top.P_LANG)
	{
		case 'de':
		$.datepicker.setDefaults($.datepicker.regional['de']);
		break;
		case 'ru':
		$.datepicker.setDefaults($.datepicker.regional['ru']);
		break;
		case 'it':
		$.datepicker.setDefaults($.datepicker.regional['it']);
		case 'en':
		default:
		//$.datepicker.setDefaults($.datepicker.regional['en']);
	}

	var dates = $( "#DateInPicker, #DateOutPicker" ).datepicker({
		minDate : 0,
		maxDate : "+1Y",
		defaultDate: "+1",
		changeMonth: false,
		numberOfMonths: 1,
		onSelect: function( selectedDate ) {
			var option = this.id == "DateInPicker" ? "minDate" : "maxDate",
			instance = $( this ).data( "datepicker" ),
			date = $.datepicker.parseDate(
			instance.settings.dateFormat ||
			$.datepicker._defaults.dateFormat,
			selectedDate, instance.settings );
			dates.not( this ).datepicker( "option", option, date );
		}
	});


	var now = new Date();
	var d1 = new Date(now.getYear(),now.getMonth(),now.getDay()).getDate();
	var d2 = new Date(now.getYear(),now.getMonth(),now.getDay()+1).getDate();



	$( "#DateInPicker" ).datepicker('setDate',d1);
	$( "#DateOutPicker" ).datepicker('setDate',d2);	


	/// Nachladen Kalender CSS
	//$.get("/xstorage/template/styles/themes/calender/calender.css", function(css) {
	//    $("head").append("<style>"+css+"</style>");
	//  });
	/// Nachladen Kalender CSS



	setTimeout(function(){
		jsFormValidation('wz_form');
	},1);

});						   




/* ################################################################################################
#################################################### JS FORM VALIDATION
*/

function jsFormValidation(formIdName)
{

	function isValidEmailAddress(emailAddress) {
		var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
		return pattern.test(emailAddress);
	};

	function checkVal(id,val)
	{
		var div_error = $('#'+id+"_error");
		if (val.split(' ').join('') == "")
		{
			div_error.show();
			return true;
		} else {
			div_error.hide();
			return false;
		}
	}

	function checkCheck(id,val)
	{
		var div_error = $('#'+id+"_error");
		if (val != "checked")
		{
			div_error.show();
			return true;
		} else {
			div_error.hide();
			return false;
		}
	}

	function checkEMail(id,val)
	{
		var div_error = $('#'+id+"_error");
		if (!isValidEmailAddress(val))
		{
			div_error.show();
			return true;
		} else {
			div_error.hide();
			return false;
		}
	}

	$('#'+formIdName).submit(function(){

		var error = false;

		$('#'+formIdName+' [rel|=required]').each(function(){

			var id 	= this.id;
			var val = $(this).val();
			if (checkVal(id,val))
			{
				error = true;
			}
		});

		$('#'+formIdName+' [rel|=required_check]').each(function(){

			var id 	= this.id;
			var val = $(this).attr('checked');
			if (checkCheck(id,val))
			{
				error = true;
			}
		});

		$('#'+formIdName+' [rel|=required_email]').each(function(){
			var id 	= this.id;
			var val = $(this).val();
			if (checkEMail(id,val))
			{
				error = true;
			}
		});

		//return false;

		return !error;
	});

	$('#'+formIdName+' [rel|=required_check]').click(function(){
		var id 	= this.id;
		var val = $(this).attr('checked');
		checkCheck(id,val);
	});

	$('#'+formIdName+' [rel|=required]').blur(function(){
		console.info('bluer');
		var id 	= this.id;
		var val = $(this).val();
		checkVal(id,val);
	});

	$('#'+formIdName+' [rel|=required_email]').blur(function(){
		var id 	= this.id;
		var val = $(this).val();
		checkEMail(id,val);
	});

	try {
		if ($('#wzActionInvisibleCaptcha'))
		{
			$('#wzActionInvisibleCaptcha').attr('name','wzActionInvisibleCaptchaNOW');
		}
	} catch(e){}



	//	console.info('---',formIdName,$('#'+formIdName+''));

}


function filtersChanged(cfg)
{
	var fields = cfg.fields;
	var vals = [];

	var url = cfg.url;

	if (url.indexOf('?') == -1)
	{
		url += "?";
	} else
	{
		url +="&"
	}

	url += "_c=" + Math.round((new Date()).getTime() / 1000);

	$.each(fields, function(index, id) {
		var val = $('#'+id).val();
		if (val == -1) return;
		url += "&"+id+"="+val;
	});

	if (cfg.mode != 'ajax')
	{
		window.location = url;
	} else
	{

		$('#'+cfg.div).load(url+' #'+cfg.div+' > * ',function(){

		});

	}
}

function regFilters(cfg)
{
	var fields = cfg.fields;
	$.each(fields, function(index, id) {
		if (typeof cfg.values[id] != "undefined")
		{
			$('#'+id).val(cfg.values[id]);
		} else
		{
			$('#'+id).val(-1);
		}
		$('#'+id).change(function() {
			filtersChanged(cfg);
		});
	});
}
