if (!window.Makolab) window.Makolab=new Object(); window.Makolab.__namespace=true;
if (!window.Makolab.KPBP) window.Makolab.KPBP=new Object(); window.Makolab.KPBP.__namespace=true;
if (!window.Makolab.KPBP.Web) window.Makolab.KPBP.Web=new Object(); window.Makolab.KPBP.Web.__namespace=true;
if (!window.Makolab.KPBP.Web.UI) window.Makolab.KPBP.Web.UI=new Object(); window.Makolab.KPBP.Web.UI.__namespace=true;
if (!window.Makolab.KPBP.Web.UI.UserControls) window.Makolab.KPBP.Web.UI.UserControls=new Object(); window.Makolab.KPBP.Web.UI.UserControls.__namespace=true;
if (!window.Makolab.KPBP.Web.UI.UserControls.Search) window.Makolab.KPBP.Web.UI.UserControls.Search=new Object();

Makolab.KPBP.Web.UI.UserControls.Search.OnCheckOutDateValidate=function(sender,e)
{
	var CheckIn=document.getElementById(sender.controltovalidate.replace("_CheckOut","_CheckIn"));
	var CheckOut=document.getElementById(sender.controltovalidate);
	CheckIn=Spark.DateTime.parse(CheckIn.value,CheckIn.getAttribute("format"));
	CheckOut=Spark.DateTime.parse(CheckOut.value,CheckOut.getAttribute("format"));
	if ((CheckIn!=null)&&(CheckOut!=null))
		e.IsValid=(Math.floor((CheckOut-CheckIn)/60/60/24/1000)<31?true:false);
	else
		e.IsValid=false;
}

Makolab.KPBP.Web.UI.UserControls.Search.OnRoomsChanged=function(evt,MaxRooms)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	if ((Source.id!=undefined)&&(Source.id!=null)&&(Source.id!="")&&(Source.value!="")&&(Source.value!="0"))
	{
		var Rooms=parseInt(Source.value);
		for (var Index=0; Index<MaxRooms; Index++)
		{
			var PersonsContainer=document.getElementById(Source.id.replace("_Rooms","_PersonsContainer"+Index.toString()));
			if (PersonsContainer!=null)
			{
				PersonsContainer.style.display=(Index<Rooms?"":"none");
				var Validators=PersonsContainer.getElementsByTagName("span");
				for (var Count=0; Count<Validators.length; Count++)
				{
					if (Validators[Count].controltovalidate!=undefined)
						ValidatorEnable(Validators[Count],(Index<Rooms?true:false));
				}
			}
		}
	}
}

Makolab.KPBP.Web.UI.UserControls.Search.OnKeyUp=function(evt,SearchResultUrl,ValidationGroup,City,Locations,CheckIn,CheckOut,PersonsContainer,Rooms,Hotel,Brand,Quality)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	var KeyCode=(evt.keyCode?evt.keyCode:evt.which);
	if (KeyCode==13)
		Makolab.KPBP.Web.UI.UserControls.Search.OnClick({target:Source},SearchResultUrl,ValidationGroup,City,Locations,CheckIn,CheckOut,PersonsContainer,Rooms,Hotel,Brand,Quality);
}

Makolab.KPBP.Web.UI.UserControls.Search.OnClick=function(evt,SearchResultUrl,ValidationGroup,City,Locations,CheckIn,CheckOut,PersonsContainer,Rooms,Hotel,Brand,Quality,MaxRooms)
{
	if (Page_ClientValidate(ValidationGroup))
	{
		if (!evt) evt=window.event;
		var Source=(evt.srcElement?evt.srcElement:evt.target);
		if (SearchResultUrl=="")
			SearchResultUrl=window.location.href;
		if ((City!=null)&&(document.getElementById(City).value!=""))
			City="&City="+escape(document.getElementById(City).value);
		else
			City="";
		if ((Locations!=null)&&(document.getElementById(Locations)!=null))
		{
			Locations=document.getElementById(Locations);
			var Inputs=Locations.getElementsByTagName("input");
			Locations="";
			var Item=0;
			for (var Index=0; Index<Inputs.length; Index++)
			{
				if (Inputs[Index].checked==true)
				{
					Locations+="&Location"+Item+"="+escape(Inputs[Index].parentNode.getElementsByTagName("label")[0].innerHTML);
					Item++;
				}
			}
		}
		else
			Locations="";
		if ((CheckIn!=null)&&(document.getElementById(CheckIn).value!=""))
			CheckIn="&CheckIn="+escape(document.getElementById(CheckIn).value);
		else
			CheckIn="";
		if ((CheckOut!=null)&&(document.getElementById(CheckOut).value!=""))
			CheckOut="&CheckOut="+escape(document.getElementById(CheckOut).value);
		else
			CheckOut="";
		if ((Rooms!=null)&&(document.getElementById(Rooms).value!=""))
			Rooms="&Rooms="+document.getElementById(Rooms).value;
		else
			Rooms="";
		if ((Brand!=null)&&(document.getElementById(Brand).value!=""))
			Brand="&Brand="+document.getElementById(Brand).value;
		else
			Brand="";
		if ((Hotel!=null)&&(document.getElementById(Hotel).value!=""))
			Hotel="&Hotel="+document.getElementById(Hotel).value;
		else
			Hotel="";
		if ((Quality!=null)&&(document.getElementById(Quality).value!=""))
			Quality="&Quality="+document.getElementById(Quality).value;
		else
			Quality="";
		var Adults="";
		var Children="";
		for (var Index=0; Index<MaxRooms; Index++)
		{
			var Container=document.getElementById(PersonsContainer+Index.toString());
			if ((Container!=null)&&(Container.style.display!="none"))
			{
				var AdultsValue=Container.getElementsByTagName("input")[0];
				if ((AdultsValue!=null)&&(AdultsValue.value!=""))
					Adults+="&Adults"+(Index+1).toString()+"="+AdultsValue.value;
				var ChildrenValue=Container.getElementsByTagName("input")[1];
				if ((ChildrenValue!=null)&&(ChildrenValue.value!=""))
					Children+="&Children"+(Index+1).toString()+"="+ChildrenValue.value;
			}
		}
		window.location.href=SearchResultUrl+(SearchResultUrl.indexOf("?")==-1?"?":"&")+"Search"+City+Locations+CheckIn+CheckOut+Adults+Children+Rooms+Hotel+Brand+Quality;
	}
	evt.cancelBubble=true;
	return false;
}