//--------------------------------------------------------------------------
//
//--------------------------------------------------------------------------
function _$()
{
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++)
  {
    var element = arguments[i];

    if (typeof element == "string")
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}

//--------------------------------------------------------------------------
//
//--------------------------------------------------------------------------
function HB_SelectCountry(TargetId, Value, RequestURL, RequestPath, Default, Classname)
{
  function CallbackFun(Response)
  {
    if (Response && (Response.readyState == 4) && (Response.status == 200))
		{
			// geänderte Auswahlliste einfügen
			_$(TargetId).innerHTML = Response.responseText;

			// wenn Rückgabe erfolgte, diese ausgeben
			if (Response.responseText.length)
			{
				_$("RegionEmpty").style.display = "none";
				_$("RegionValue").style.display = "block";

//				_$(TargetId).style.display      = "inline";
			}
			else
			{
				_$("RegionValue").style.display = "none";
				_$("RegionEmpty").style.display = "block";

//				_$(TargetId).style.display      = "none";
//				_$("RegionEmpty").style.display = "inline";
			}
		}
  }

	if (_$("Step3")) _$("Step3").style.display = "block";
	if (_$("Step4")) _$("Step4").style.display = "block";
	if (_$("Step5")) _$("Step5").style.display = "none";
	if (_$("Step6")) _$("Step6").style.display = "none";
	if (_$("Step7")) _$("Step7").style.display = "none";
	if (_$("Step8")) _$("Step8").style.display = "none";
	if (_$("Step9")) _$("Step9").style.display = "none";

	if (_$("RegionValue")) _$("RegionValue").style.display = "none";
	if (_$("CityValue"))   _$("CityValue").style.display   = "none";
	if (_$("HotelValue"))  _$("HotelValue").style.display  = "none";

	if (_$("RegionEmpty")) _$("RegionEmpty").style.display = "block";
	if (_$("CityEmpty"))   _$("CityEmpty").style.display   = "block";
	if (_$("HotelEmpty"))  _$("HotelEmpty").style.display  = "block";

// Todo: Inhalt von RegionEmpty-Select entfernen
// Todo: Inhalt von CityEmpty-Select entfernen
// Todo: Inhalt von HotelEmpty-Select entfernen

	if (Value != -1)
	{
		// HTTP-Request erzeugen und absenden
		var CallingURL = "" + RequestURL + RequestPath;
		var Parameter  = "CountryCode=" + escape(Value) + "&Default=" + escape(Default) + "&Classname=" + escape(Classname);

//alert(CallingURL + "?" + Parameter);

		new Ajax.Request(CallingURL, {method: 'get', parameters: Parameter, onComplete: CallbackFun.bind(this)});
	}
}

//--------------------------------------------------------------------------
//
//--------------------------------------------------------------------------
function HB_SelectRegion(TargetId, Value, RequestURL, RequestPath, Default, Classname)
{
  function CallbackFun(Response)
  {
    if (Response && (Response.readyState == 4) && (Response.status == 200))
		{
			// geänderte Auswahlliste einfügen
			_$(TargetId).innerHTML = Response.responseText;

			// wenn Rückgabe erfolgte, diese ausgeben
			if (Response.responseText.length)
			{
				_$("CityEmpty").style.display = "none";
				_$("CityValue").style.display = "block";
//				_$(TargetId).style.display    = "inline";
			}
			else
			{
//				_$(TargetId).style.display    = "none";
				_$("CityValue").style.display = "none";
				_$("CityEmpty").style.display = "block";
			}
		}
  }

	if (_$("CityValue"))  _$("CityValue").style.display   = "none";
	if (_$("HotelValue")) _$("HotelValue").style.display  = "none";

	if (_$("CityEmpty"))  _$("CityEmpty").style.display   = "block";
	if (_$("HotelEmpty")) _$("HotelEmpty").style.display  = "block";


// Todo: Inhalt von CityEmpty-Select entfernen
// Todo: Inhalt von HotelEmpty-Select entfernen

	if (_$("Step6")) _$("Step6").style.display = "none";
	if (_$("Step7")) _$("Step7").style.display = "none";
	if (_$("Step8")) _$("Step8").style.display = "none";
	if (_$("Step9")) _$("Step9").style.display = "none";

	if (Value == -2)
	{
		if (_$("Step3")) _$("Step3").style.display  = "none";
		if (_$("Step4")) _$("Step4").style.display  = "none";
		if (_$("Step5")) _$("Step5").style.display  = "block";
	}
	else
	{
		if (_$("Step5")) _$("Step5").style.display  = "none";
		if (_$("Step3")) _$("Step3").style.display  = "block";
		if (_$("Step4")) _$("Step4").style.display  = "block";

		if (Value != -1)
		{
			// HTTP-Request erzeugen und absenden
			var CallingURL = "" + RequestURL + RequestPath;
			var Parameter  = "RegionId=" + escape(Value) + "&Default=" + escape(Default) + "&Classname=" + escape(Classname);

//alert(CallingURL + "?" + Parameter);

			new Ajax.Request(CallingURL, {method: 'get', parameters: Parameter, onComplete: CallbackFun.bind(this)});
		}
	}
}

//--------------------------------------------------------------------------
//
//--------------------------------------------------------------------------
function HB_SelectCity(TargetId, Value, RequestURL, RequestPath, Classname)
{
  function CallbackFun(Response)
  {
    if (Response && (Response.readyState == 4) && (Response.status == 200))
		{
			// geänderte Auswahlliste einfügen
			_$(TargetId).innerHTML = Response.responseText;

			// wenn Rückgabe erfolgte, diese ausgeben
			if (Response.responseText.length)
			{
				_$("HotelEmpty").style.display = "none";
				_$("HotelValue").style.display = "block";
//				_$(TargetId).style.display     = "block";
			}
			else
			{
				_$("HotelValue").style.display = "none";
				_$("HotelEmpty").style.display = "block";

//				_$(TargetId).style.display     = "none";
//				_$("HotelEmpty").style.display = "block";
			}
		}
  }

	if (_$("HotelValue")) _$("HotelValue").style.display  = "none";
	if (_$("HotelEmpty")) _$("HotelEmpty").style.display  = "block";

	if (_$("Step6")) _$("Step6").style.display = "none";
	if (_$("Step7")) _$("Step7").style.display = "none";
	if (_$("Step8")) _$("Step8").style.display = "none";
	if (_$("Step9")) _$("Step9").style.display = "none";

//	if (Value == -4)
	{
//		_$("Step5").style.display  = "block";
	}
//	else
	{
		if (Value == -3)
		{
			if (_$("Step4")) _$("Step4").style.display  = "none";
			if (_$("Step5")) _$("Step5").style.display  = "block";
		}
		else
		{
			if (_$("Step5")) _$("Step5").style.display  = "none";
			if (_$("Step4")) _$("Step4").style.display  = "block";

	// Todo: Inhalt von HotelEmpty-Select entfernen

			if (Value != -1)
			{
				// HTTP-Request erzeugen und absenden
				var CallingURL = "" + RequestURL + RequestPath;
				var Parameter  = "CityId=" + escape(Value) + "&Classname=" + escape(Classname);

//alert(CallingURL + "?" + Parameter);

				new Ajax.Request(CallingURL, {method: 'get', parameters: Parameter, onComplete: CallbackFun.bind(this)});
			}
		}
	}
}

//--------------------------------------------------------------------------
//
//--------------------------------------------------------------------------
function HB_SelectHotel(Value)
{
	_$("EmpfehlungJ").checked = false;
	_$("EmpfehlungN").checked = false;

	_$("Step5").style.display = "none";
	_$("Step6").style.display = "none";
	_$("Step7").style.display = "none";
	_$("Step8").style.display = "none";
	_$("Step9").style.display = "none";

	if (Value == -4)
	{
		_$("Step5").style.display  = "block";
	}
	else
	{
		if (Value != -1)
		{
			_$("Step8").style.display = "block";
			_$("Step9").style.display = "block";

			var Hotel       = _$("HotelId");
			var Sterne      = _$("Sterne");

			var HotelValues = Hotel.value.split("|");
			var HotelSterne = HotelValues[1];

			// Standard: Keine Sterne
			Sterne.selectedIndex = 0;

			// Sternauswahl
			for (var i = (Sterne.length - 1); i >= 0; --i)
			{
				if (Sterne.options[i].value == HotelSterne)
				{
					Sterne.selectedIndex = i;
					break;
				}
			}
		}
	}
}
