/*-----------------------------------------
 
 copyright 2009 by mmc
 
 Version: 1.0
 
 Author: Georg Paul
 
 Author URI: http://www.mmc-agentur.at
 
 -------------------------------------------*/

var map = null;
var geocoder = null;
var stopFade = false;

$(document).ready(function(){
	

	$("#sidebar select, #search_leisure_company select, .filter_box select").uniform({
		selectClass: 'category'
	});
	$("#report_event_interface select").uniform({
		selectClass: 'category'
	});
	$('#form_newsletter select').uniform({
		selectClass: 'category'
	});
	
	
	$('#date_start').change(function(){
		var dateStartValue = $(this).val();		
		$('#date_end').val(dateStartValue);
	})
	
	
	if ($('#detail_date_from').val()) {
		$('#date_start').datePicker().val($('#detail_date_from').val()).trigger('change');
		$('#date_end').datePicker().val($('#detail_date_to').val()).trigger('change');
	} else {	
		
		$('#date_start').datePicker().val(new Date().asString()).trigger('change');
		$('#date_end').datePicker().val(new Date().asString()).trigger('change');	
	}

	$('#event_date_start').datePicker().val(new Date().asString()).trigger('change');
	$('#event_date_end').datePicker().val(new Date().asString()).trigger('change');
	
	 $('#slideshow').innerfade({
		 animationtype: 'fade',
		 speed: 3000,
		 timeout: 8000,
		 type: 'sequence',
		 containerheight: '287px'
	 }); 	
	
	
	 
	$('#search_leisure_company input.type_text, #newsletter_subscription input.type_text, #event_search input.type_text').mmcFormDefaults();

	$('#filter_category').bind('change', function() {
		$('#filter_search').trigger('submit');
	});
	
	changeLocationName()
	bindShowMap();

	// führt zu einem JS Fehler im date.js, wenn die Input Tags Default Values bekommen
		//	var heute = new Date();
		//	$('#date_start, #date_end').val(heute.getDate()+'.'+(heute.getMonth()+1)+'.'+heute.getFullYear());
		
	$('#report_event_interface #bildupload').bind('change', function() {
		$('#report_event_interface #bildupload_wrapper span').remove();
		$('#report_event_interface #bildupload_wrapper').append($('<span>'+$(this).val()+'</span>'));
	});
});

function bindShowMap() {
	$('#location_gmap a').unbind('click');
	$('#location_gmap a').bind('click', function(event) {
		stopFade = true;
		showMap();
		event.preventDefault();
		
		// umkehr funktion binden
		
		bindHideMap();
		
	});
}

function bindHideMap() {
	$('#location_gmap a').unbind('click');
	$('#location_gmap a').bind('click', function(event) {
		
		panelID = location.hash.substr(1,location.hash.length-1);
		panelID = (!(parseInt(panelID)>0)) ? 1 : panelID;
		
		$("#slideMap"+panelID).empty();
		
		stopFade = false;
		
		event.preventDefault();
		
		// wieder das richtige event binden
		
		bindShowMap();
	});
}

function changeLocationName() {
	panelID = location.hash.substr(1,location.hash.length-1);
	if (!(parseInt(panelID)>0)) {
		panelID = 1;
	} else {
		panelID = parseInt(panelID);
	}
	
		$('#location_single_view').html('<em>Sie sehen:</em> '+$("#slidePanel"+panelID).find('.locationTitle').text()).fadeIn();
	

}

function showMap() {
	if (GBrowserIsCompatible()) {
	
		panelID = location.hash.substr(1,location.hash.length-1);
		panelID = (!(parseInt(panelID)>0)) ? 1 : panelID;
		
		
		var mapContainer = $("#slideMap"+panelID);
		mapContainer.css('width',mapContainer.parent().css('width')).css('height',mapContainer.parent().css('height'));
		
        map = new GMap2(document.getElementById("slideMap"+panelID));
        //map.setCenter(new GLatLng(37.4419, -122.1419), 13);
        geocoder = new GClientGeocoder();
		
		$("#slidePanel"+panelID+' .events').find('a').each(function() {
			showAddress($(this).prev().prev().text(),$(this).parent().html());
		});
		
		
    }
}

function showAddress(address, text) {
	//alert(text);
      if (geocoder) {
	  	//alert(address);
        geocoder.getLatLng(
          address,
          function(point) {
            if (!point) {
              //alert(address + " not found");
            } else {
              map.setCenter(point, 10);
              var marker = new GMarker(point);
              map.addOverlay(marker);
              marker.openInfoWindowHtml(text);
			  marker.bindInfoWindowHtml(text);
            }
          }
        );
      }
    }

function changeLocationNav(){

	changeLocationName();

}



