document.observe('dom:loaded', function()
{
	if ($('arrival_day'))
	{
		initDatePicker();

		$('arrival_day').onchange = changeArrival;
		$('arrival_month').onchange = changeArrival;
		$('arrival_year').onchange = changeArrival;

		$('departure_day').onchange = changeDeparture;
		$('departure_month').onchange = changeDeparture;
		$('departure_year').onchange = changeDeparture;

		var today = new Date();
		$('fecha_entrada').value = today.toStrDate();
		$('fecha_salida').value = today.addDays(7).toStrDate();
		setNewArrival($F('fecha_entrada'));
		setNewDeparture($F('fecha_salida'));
	}
});

//Inicializar los inputs de fechas
function initDatePicker()
{
	$$("input.datepicker").each(function(elemento,indx)
	{
		var options =
		{
			clickCallback		: function()
			{
				document.observe('click', function(event)
				{
					if (event.target != elemento && event.target != elemento.next('img') && !$(event.target).descendantOf($("datepicker-" + elemento.id)))
					{
						this.close();
					}
				}.bind(this));

			},
			cellCallback		: function()
			{
				switch(elemento.id)
				{
					case 'fecha_entrada':
						setNewArrival($F(elemento));
						break;

					case 'fecha_salida':
						setNewDeparture($F(elemento));
						break;
				}
				document.stopObserving('click');
			},
			relative			: elemento.id,
			language			: elemento.lang,
			keepFieldEmpty		: true,
			enableShowEffect	: false,
			enableCloseEffect	: false,
			topOffset			: 25,
			disableFutureDate	: false,
			disablePastDate		: true,
			topOffset			: elemento.offsetHeight + 1
		}

		var obj = new DatePicker(options);
		
		$(elemento).next('img').onclick = obj.click.bind(obj);

	});
}

function setNewArrival(date)
{
	$('arrival_day').value = date.split('/')[0].pad('0',2);
	$('arrival_month').value = date.split('/')[1].pad('0',2);
	$('arrival_year').value = date.split('/')[2];
}

function setNewDeparture(date)
{
	$('departure_day').value = date.split('/')[0].pad(0,2);
	$('departure_month').value = date.split('/')[1].pad(0,2);
	$('departure_year').value = date.split('/')[2];
}

function changeArrival()
{
	$('fecha_entrada').value = $F('arrival_day') + '/' + $F('arrival_month') + '/' + $F('arrival_year');
}

function changeDeparture()
{
	$('fecha_salida').value = $F('departure_day') + '/' + $F('departure_month') + '/' + $F('departure_year');
}

function initializeMap()
{
	if (GBrowserIsCompatible())
	{
		var latitude = 38.9840960;
		var longitude = 1.3031290;
		var zoom = 16;

		var map = new GMap2($("map"));
		map.setCenter(new GLatLng(latitude, longitude), zoom);
		map.setMapType(G_HYBRID_MAP);
		map.setUIToDefault();

		function createMarker(point) {
		  // Create a lettered icon for this point using our icon class
		  //var icon = new GIcon(baseIcon);

		  // Set up our GMarkerOptions object
		  //markerOptions = {icon: icon};
		  //var marker = new GMarker(point, markerOptions);
		  var marker = new GMarker(point);

		  GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml("Hostal Adelino");
		  });
		  return marker;
		}

		var point = new GLatLng(latitude, longitude);
		map.addOverlay(createMarker(point));
  	}
}

