jQuery.noConflict();

jQuery(document).ready(function($){
	
	var von = new Date(document.getElementById("Feld_AbJahr").value, parseInt(document.getElementById("Feld_AbMonat").value)-1, document.getElementById("Feld_AbTag").value);
	if (document.getElementById("Feld_BisJahr") != null) {var bis = new Date(document.getElementById("Feld_BisJahr").value, parseInt(document.getElementById("Feld_BisMonat").value)-1, document.getElementById("Feld_BisTag").value);}
	$("#datepicker").datepicker({defaultDate:von,onSelect: function(dateText, inst){searchbydate();}});		
	$("#datefrom").datepicker({defaultDate:von,onSelect: function(dateText, inst){changefrom();}});
	$("#dateto").datepicker({defaultDate:bis,onSelect: function(dateText, inst){changeto();}});
	$('input.eventcheck').tooltip({track: true,     delay: 0,     showURL: false,   showBody: " - ", extraClass: "customtooltip", fixPNG: true, top:-75 ,left: -12 });
	
	function searchbydate(){				
	var datum = $('#datepicker').datepicker('getDate');	
	document.getElementById("Feld_Datum").value = datum.getDate() + '.' + (parseInt(datum.getMonth())+1) + '.' + datum.getFullYear() ;
	document.getElementById("Feld_AbTag").value = datum.getDate();
	document.getElementById("Feld_AbMonat").value = parseInt(datum.getMonth())+1;
	document.getElementById("Feld_AbJahr").value = datum.getFullYear();						
	form_datepicker.submit();			
	}
	
	function changefrom()
	{
		var datum = new Date(Date.parse($("#datefrom").datepicker('getDate')));
		document.getElementById("Feld_AbJahr").value = datum.getFullYear();
		document.getElementById("Feld_AbMonat").value = datum.getMonth() + 1;
		document.getElementById("Feld_AbTag").value = datum.getDate();		
		document.getElementById("datefromtext").innerHTML = datum.getDate() + "." + 	(datum.getMonth() + 1) + "." + datum.getFullYear();
	}	
	
	function changeto()
	{
		var datum = new Date(Date.parse($("#dateto").datepicker('getDate')));
		document.getElementById("Feld_BisJahr").value = datum.getFullYear();
		document.getElementById("Feld_BisMonat").value = datum.getMonth() + 1;
		document.getElementById("Feld_BisTag").value = datum.getDate();	
		document.getElementById("datetotext").innerHTML = datum.getDate() + "." + 	(datum.getMonth() + 1) + "." + datum.getFullYear();
				
	}	

		
});
			

// Initialisiere 
var map, eventbounds, markers, lastpolyline;
var eventicons = new Array();
var points = new Array();

//Suche - Warten, Progress
function showProgress()
{	
	
	hideblock("block_criteria");
	hideblock("block_region");
	hideblock("block_category");
	
	document.getElementById("event_wait").style.display = "block";
	document.getElementById("waitimage").innerHTML = "<img src='images/events/loading.gif' border='0'>"; 
	window.scroll(0,0)
}

// Suche - Block anzeigen
function showblock(name)
{	
	document.getElementById(name + "_titleopen").style.display="block";
	document.getElementById(name + "_titleclosed").style.display="none";
	document.getElementById(name + "_content").style.display="block";
}

// Suche - Block verbergen
function hideblock(name)
{	
	document.getElementById(name + "_titleopen").style.display="none";
	document.getElementById(name + "_titleclosed").style.display="block";
	document.getElementById(name + "_content").style.display="none";
}

// Suche - Karte anzeigen
function showmap()
{
	document.getElementById("event_map").style.display="block";
	document.getElementById("page_showmap").style.display="none";
    document.getElementById("page_hidemap").style.display="block";
}

// Suche - Karte verbergen 
function hidemap()
{
	document.getElementById("event_map").style.display="none";
	document.getElementById("page_showmap").style.display="block";
    document.getElementById("page_hidemap").style.display="none";
}

//Liste - Lade Hotelliste 
function loadlist(){
	
	//anzahl gemerkte Betriebe
	updateEventcounter();
	
	//checkboxes deativieren
	var checkboxes = document.getElementsByName("Feld_Eventcheck");
	for (var i=0; i < checkboxes.length; i++) {
		checkboxes[i].checked = false;
		document.getElementById("event_item_" + checkboxes[i].value).style.backgroundColor = "";	
	}
	
	//checkboxes aktivieren
	var eventlist = readCookie();
	
	if (eventlist != null) {
		var liste = eventlist.split("|");
		if (liste != null){		
			for (var i=0; i < checkboxes.length; i++) {
				for (var j=0; j < liste.length; j++) {
					if (liste[j] == checkboxes[i].value) {
						checkboxes[i].checked = true;
						document.getElementById("event_item_" + checkboxes[i].value).style.backgroundColor = "#F8EFD5";	
					}
				}
			}
		}		
	}
	
}


//Eventliste - hinzufügen
function updateEvent(checked,id)
{
	
	var eventlist = readCookie();
	
	// Hinzufügen oder löschen
	if (checked == true) {
		eventlist = eventlist + id + "|"
		createCookie(eventlist,1);
		document.getElementById("event_item_" + id).style.backgroundColor = "#F8EFD5";		
	}
	else {
		deleteEvent(id);
		document.getElementById("event_item_" + id).style.backgroundColor = "";	
	}
	
	updateEventcounter();

}

//Eventliste - hinzfügen
function checkEvent(id){
	updateEvent(true,id);
	loadlist();
}

//Eventliste - entfernen
function deleteEvent(id){
	var eventlist = readCookie();
	eventlist = eventlist.replace(id + "|", "");
	createCookie(eventlist,1);
}

//Eventliste - löschen 
function clearlist(){
	eraseCookie();
	loadlist();
}


//Eventliste - zähler
function updateEventcounter(){
	
	var eventlist = readCookie();
	var eventcounter = document.getElementById("eventlist_counter");
	
	if (eventlist != null) {
		var liste = eventlist.split("|");
		if (liste != null) {var counter = liste.length-1;}
		if (document.getElementById("options") !=null) {document.getElementById("options").style.display="block";}
	}
	else {
		var counter = 0;
		if (document.getElementById("options") !=null) {document.getElementById("options").style.display="none";}
	}
	
	if (eventcounter != null) {eventcounter.innerHTML = counter;}
	
}


//Cookie erstellen
function createCookie(value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = "BRIXEN_EVENTLISTE="+value+expires+"; path=/";
}

//Cookie lesen
function readCookie() {
	var nameEQ = "BRIXEN_EVENTLISTE=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

//Cookie löschen
function eraseCookie() {
	createCookie("",-1);
}

// Suche - Änderung Anreise
function changedate(){

	document.getElementById("Feld_BisJahr").value = document.getElementById("Feld_AbJahr").value
	document.getElementById("Feld_BisMonat").value = document.getElementById("Feld_AbMonat").value
	document.getElementById("Feld_BisTag").value = document.getElementById("Feld_AbTag").value
	
}

// Suche - Änderung Anreise Jahr
function changeyear(){
	
	if (document.getElementById("Feld_AbJahr").value != "" && document.getElementById("Feld_AbMonat").value != "" && document.getElementById("Feld_AbTag").value != ""){
		
		var date_now = new Date();
		var date_start = new Date(document.getElementById("Feld_AbJahr").value, parseInt(document.getElementById("Feld_AbMonat").value)-1, document.getElementById("Feld_AbTag").value);
		
		if (date_start.getTime() < date_now.getTime()) {
			document.getElementById("Feld_AbJahr").value = date_now.getFullYear();
			document.getElementById("Feld_AbMonat").value = date_now.getMonth() + 1;
			document.getElementById("Feld_AbTag").value = date_now.getDate();
		}
	
	}

}

function loadeventmap() {
				
	 if (GBrowserIsCompatible()) {
	
	       // Google Karte - Basiseinstellungen
	       map = new GMap2(document.getElementById("map"));
	       map.setCenter(new GLatLng(47.440628,12.276535), 11);	       
	       map.setMapType(G_PHYSICAL_MAP); 	
	       
	       //Bounds
	       eventbounds = new GLatLngBounds();
	       
	       // Controls
	    		map.addControl(new GLargeMapControl());
	   		map.addControl(new GMapTypeControl());	
	   		
	   		// Icons definieren
	     	eventicon = new GIcon();
			eventicon.iconSize = new GSize(12, 12);
			eventicon.iconAnchor = new GPoint(5, 5);
			eventicon.image = "/de/images/vermieter/button_point_low.png";	
			eventicon.infoWindowAnchor = new GPoint(5, 5); 		
		
			// Events
			loadeventlist();
	   		
	   	}
	}	

 function addeventmarker(feratelid, lat, lon, titel, html){

	// Marker
	var point = new GLatLng(lat,lon);
	var marker = new GMarker(point,{icon:eventicon,title:titel});
	map.addOverlay(marker); 
	
	// Infowindow Mouseover
	GEvent.addListener(marker, "mouseover", function() {
	    marker.openInfoWindowHtml(html);
	 });
	 
	 // Action für Teaserbild
	document.getElementById("eventmaplink_" + feratelid).onclick = function() { showeventmarker(marker); };

	// Bounds erweitern
	eventbounds.extend(point);
		
}	

function showeventmarker(marker){								
	GEvent.trigger(marker, "mouseover");	
	document.getElementById("event_map").style.display = "block";
	window.scrollTo(0, document.getElementById("map").offsetTop);						
}  	

	// Suche - Regionsblock löschen 
function clearRegionBlock()
{
	
	var checkboxes = document.getElementsByName("Feld_Ort");
	for (var j=0; j < checkboxes.length; j++) {
		checkboxes[j].checked = false;
	}
	

}

// Suche - Datumsblock löschen 
function clearDateBlock()
{
	
	document.getElementById("Feld_TopEvents").checked = false;
	document.getElementById("Feld_WeekEvents").checked = false;
	
}

// Suche - Datumsblock löschen 
function clearCategoryBlock()
{
	
	var checkboxes = document.getElementsByName("Feld_Rubrik");
	for (var j=0; j < checkboxes.length; j++) {
		checkboxes[j].checked = false;
	}
	
}		

function DateAdd(timeU,byMany,dateObj) {
	var millisecond=1;
	var second=millisecond*1000;
	var minute=second*60;
	var hour=minute*60;
	var day=hour*24;
	var year=day*365;

	var newDate;
	var dVal=dateObj.valueOf();
	switch(timeU) {
		case "ms": newDate=new Date(dVal+millisecond*byMany); break;
		case "s": newDate=new Date(dVal+second*byMany); break;
		case "mi": newDate=new Date(dVal+minute*byMany); break;
		case "h": newDate=new Date(dVal+hour*byMany); break;
		case "d": newDate=new Date(dVal+day*byMany); break;
		case "y": newDate=new Date(dVal+year*byMany); break;
	}
	return newDate;
}
	    
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}
	    


