// ------------------------------------
// coded by freak
// http://www.craftwerk-design.com
// ------------------------------------

//*** some globals ***
var language			= readCookie("language") != "" ? readCookie("language") : "en";
if (geonamesUserIpCountryCode == "")
{
	var usercountry = readCookie("UserCountry");
	var geonamesPostalCodeCountries	= ["LU","LT","ZA","RE","HR","HU","DO","MK","VA","DE","MC","MD","DK","AT","MX","AR","US","MY","IN","AU","IS","IT","MQ","PT","AD","ES","NL","YT","JP","NZ","GF","BR","GB","TH","CA","TR","NO","BG","FR","FO","BD","BE","FI","CZ","SE","SI","SK","SM","PL","PM","GT","CH","RU","PH","GP","WF","PK","LI","LK","GL","GR"];
}
else
{
	var usercountry = geonamesUserIpCountryCode;
	createCookie("UserCountry", usercountry, 1);
}
var postalcodes;

window.defaultStatus = "Hotel San Antonio";


//*** set cookie ***
function createCookie (name, 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 = name + "=" + value + expires + "; path=/";
}


//*** get cookie ***
function readCookie(name)
{
	var nameEQ = name + "=";
	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;
}


//*** delete cookie ***
function eraseCookie(name)
{
	createCookie(name, "", -1);
}


//*** language select ***
function langSwitch(x)
{
	top.location.href = x;
}


//*** pagination ***
function goPage(form, p)
{
	frm = document.forms[form];
	frm.action = frm.action + "&p=" + p;
	document.getElementById(form).submit();
}


//*** check for selected room ***
function booking_validate()
{
	if (document.getElementById('validate').value==0)
	{
		alert(please_choose_room)
		return false
	}		
}


//*** geocodes ***
function JSONscriptRequest(fullUrl)
{
	this.fullUrl	= fullUrl; 
	this.noCacheIE	= '&noCacheIE=' + (new Date()).getTime();
	this.headLoc	= document.getElementsByTagName("head").item(0);
	this.scriptId	= 'YJscriptId' + JSONscriptRequest.scriptCounter++;
}

JSONscriptRequest.scriptCounter = 1;
JSONscriptRequest.prototype.buildScriptTag = function ()
{
	this.scriptObj = document.createElement("script");
	this.scriptObj.setAttribute("type", "text/javascript");
	this.scriptObj.setAttribute("src", this.fullUrl + this.noCacheIE);
	this.scriptObj.setAttribute("id", this.scriptId);
}

JSONscriptRequest.prototype.removeScriptTag = function ()
{
	this.headLoc.removeChild(this.scriptObj);  
}

JSONscriptRequest.prototype.addScriptTag = function ()
{
	this.headLoc.appendChild(this.scriptObj);
}

function getLocation(jData)
{
	if (jData == null)
	{
		return;
	}
	postalcodes = jData.postalcodes;
	
	if (postalcodes.length > 1)
	{
		document.getElementById('suggestBoxElement').style.visibility = 'visible';
		var suggestBoxHTML  = '';
		for (i = 0; i < jData.postalcodes.length; i++)
		{
			suggestBoxHTML += "<div class='suggestions' id=pcId" + i + " onmousedown='suggestBoxMouseDown(" + i +")' onmouseover='suggestBoxMouseOver(" +  i +")' onmouseout='suggestBoxMouseOut(" + i +")'> " + postalcodes[i].countryCode + ' ' + postalcodes[i].postalcode + '    ' + postalcodes[i].placeName  +'</div>';
		}
		document.getElementById('suggestBoxElement').innerHTML = suggestBoxHTML;
	}
	else
	{
		if (postalcodes.length == 1)
		{
			var placeInput = document.getElementById("placeInput");
			placeInput.value = postalcodes[0].placeName;
		}
		closeSuggestBox();
	}
}

function closeSuggestBox()
{
	document.getElementById('suggestBoxElement').innerHTML = '';
	document.getElementById('suggestBoxElement').style.visibility = 'hidden';
}

function suggestBoxMouseOut(obj)
{
	document.getElementById('pcId'+ obj).className = 'suggestions';
}

function suggestBoxMouseDown(obj)
{
	closeSuggestBox();
	var placeInput = document.getElementById("placeInput");
	placeInput.value = postalcodes[obj].placeName;
}

function suggestBoxMouseOver(obj)
{
	document.getElementById('pcId'+ obj).className = 'suggestionMouseOver';
}

function postalCodeLookup()
{
	var country = document.getElementById("countrySelect").value;
	
	if (geonamesPostalCodeCountries.toString().search(country) == -1)
	{
		return;
	}
	document.getElementById('suggestBoxElement').style.visibility = 'visible';
	document.getElementById('suggestBoxElement').innerHTML = '<small><i>loading ...</i></small>';
	
	var postalcode = document.getElementById("postalcodeInput").value;
	
	request = 'http://www.geonames.org/postalCodeLookupJSON?postalcode=' + postalcode  + '&country=' + country  + '&callback=getLocation';
	
	aObj = new JSONscriptRequest(request);
	aObj.buildScriptTag();
	aObj.addScriptTag();
}

function setDefaultCountry()
{
	var countrySelect = document.getElementById("countrySelect");
	for (i = 0; i < countrySelect.length; i++)
	{
		if (countrySelect[i].value == usercountry)
		{
			countrySelect.selectedIndex = i;
		}
	}
}


//*** menu color fader ***
function colorFade(id, start, end, steps, speed)
{
	var startrgb, endrgb, er, eg, eb, step, rint, gint, bint, step;
	var target = document.getElementById(id);
	steps = steps || 20;
	speed = speed || 20;
	clearInterval(target.timer);
	endrgb = colorConv(end);
	er = endrgb[0];
	eg = endrgb[1];
	eb = endrgb[2];
	if (!target.r)
	{
		startrgb = colorConv(start);
		r = startrgb[0];
		g = startrgb[1];
		b = startrgb[2];
		target.r = r;
		target.g = g;
		target.b = b;
	}
	rint = Math.round(Math.abs(target.r-er) / steps);
	gint = Math.round(Math.abs(target.g-eg) / steps);
	bint = Math.round(Math.abs(target.b-eb) / steps);
	if (rint == 0) { rint = 1 }
	if (gint == 0) { gint = 1 }
	if (bint == 0) { bint = 1 }
	target.step = 1;
	target.timer = setInterval(function() { animateColor(id,steps,er,eg,eb,rint,gint,bint) }, speed);
}

function animateColor(id, steps, er, eg, eb, rint, gint, bint)
{
	var target = document.getElementById(id);
	var color;
	if (target.step <= steps)
	{
		var r = target.r;
		var g = target.g;
		var b = target.b;
		if (r >= er)
		{
			r = r - rint;
		}
		else
		{
			r = parseInt(r) + parseInt(rint);
		}
		if (g >= eg)
		{
			g = g - gint;
		}
		else
		{
			g = parseInt(g) + parseInt(gint);
		}
		if (b >= eb)
		{
			b = b - bint;
		}
		else
		{
			b = parseInt(b) + parseInt(bint);
		}
		color = 'rgb(' + r + ',' + g + ',' + b + ')';
		target.style.backgroundColor = color;

		target.r = r;
		target.g = g;
		target.b = b;
		target.step = target.step + 1;
	}
	else
	{
		clearInterval(target.timer);
		color = 'rgb(' + er + ',' + eg + ',' + eb + ')';
		target.style.backgroundColor = color;
	}
}

function colorConv(color)
{
	var rgb = [parseInt(color.substring(0, 2), 16), 
	parseInt(color.substring(2, 4), 16), 
	parseInt(color.substring(4, 6), 16)];
	return rgb;
}


//*** message lenght counter / limiter ***
function textCounter(field, max)
{
	cntfield	= document.getElementById("len");

	if (field.value.length > max)
	{
		field.value = field.value.substring(0, max);
	}
	else
	{
		cntfield.innerHTML = max - field.value.length;
	}
}


//*** form validation ***
function validatePdata()
{
	var firstname	= document.getElementById("firstname");
	var lastname	= document.getElementById("lastname");
	var address	= document.getElementById("address");
	var postalcode	= document.getElementById("postalcode");
	var city	= document.getElementById("place");
	var email	= document.getElementById("email");
	var cc_number	= document.getElementById("cc_number");
	var cc_name	= document.getElementById("cc_name");
	var cvc		= document.getElementById("cvc");
	var terms	= document.getElementById("terms");
	var whitespace	= " \t\n\r";
	var regex_email	= new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)([\\.])([a-zA-Z]{2,4})$');
	
	if (isEmpty(firstname.value))
	{
		firstname.className += " formerror";
		alert(enter_firstname);
		firstname.focus();
		return false;
	}
	if (isEmpty(lastname.value))
	{
		lastname.className += " formerror";
		alert(enter_lastname);
		lastname.focus();
		return false;
	}
	if (isEmpty(address.value))
	{
		address.className += " formerror";
		alert(enter_address);
		address.focus();
		return false;
	}
	if (isEmpty(postalcode.value))
	{
		postalcode.className += " formerror";
		alert(enter_postalcode);
		postalcode.focus();
		return false;
	}
	if (isEmpty(city.value))
	{
		city.className += " formerror";
		alert(enter_city);
		city.focus();
		return false;
	}
	if (isEmpty(email.value))
	{
		email.className += " formerror";
		alert(enter_email);
		email.focus();
		return false;
	}
	if (!regex_email.test(email.value))
	{
		email.className += " formerror";
		alert(enter_valid_email);
		email.focus();
		return false;
	}

	if (document.booking.pm[0].checked == true)
	{
		if (isEmpty(cc_number.value))
		{
			cc_number.className += " formerror";
			alert(enter_cc_number);
			cc_number.focus();
			return false;
		}
		if (!(lunCheck(stripWhitespace(cc_number.value))))
		{
			cc_number.className += " formerror";
			alert(enter_valid_cc);
			cc_number.focus();
			return false;
		}
		if (isEmpty(cc_name.value))
		{
			cc_name.className += " formerror";
			alert(enter_cc_name);
			cc_name.focus();
			return false;
		}
		if (isEmpty(cvc.value))
		{
			cvc.className += " formerror";
			alert(enter_cvc);
			cvc.focus();
			return false;
		}
		digits = "0123456789";   
		for (i = 0; i < cvc.value.length; i++) 
		{
			if (digits.indexOf(cvc.value.charAt(i)) < 0)
			{
				cvc.className += " formerror";
				alert(enter_valid_cvc);
				cvc.focus();
				return false;
			}
		}
	}
	else if (document.booking.pm[1].checked == true)
	{

	}
	else
	{

	}

	if (!terms.checked)
	{
      		terms.className += " formerror";
      		alert(read_accept);
      		terms.focus();
      		return false;
	}

	return true;
}

function validateCdata(gfxcode)
{
	var name	= document.getElementById("name");
	var email	= document.getElementById("email");
	var subject	= document.getElementById("subject");
	var message	= document.getElementById("message");
	var gfx		= document.getElementById("gfx_check");
	var whitespace	= " \t\n\r";
	var regex_email	= new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)([\\.])([a-zA-Z]{2,4})$');
	
	if (isEmpty(name.value))
	{
		name.className += " formerror";
		alert(enter_name);
		name.focus();
		return false;
	}
	if (isEmpty(email.value))
	{
		email.className += " formerror";
		alert(enter_email);
		email.focus();
		return false;
	}
	if (!regex_email.test(email.value))
	{
		email.className += " formerror";
		alert(enter_valid_email);
		email.focus();
		return false;
	}
	if (isEmpty(subject.value))
	{
		subject.className += " formerror";
		alert(enter_subject);
		subject.focus();
		return false;
	}
	if (isEmpty(message.value))
	{
		message.className += " formerror";
		alert(enter_message);
		message.focus();
		return false;
	}
	if (message.value.length < 5)
	{
		message.className += " formerror";
		alert(msg_too_short);
		message.focus();
		return false;
	}
	if (message.value.length > 500)
	{
		message.className += " formerror";
		alert(msg_too_long);
		message.focus();
		return false;
	}
	if (isEmpty(gfx.value))
	{
		gfx.className += " formerror";
		alert(enter_gfx);
		gfx.focus();
		return false;
	}
	if (gfx.value != gfxcode)
	{
		gfx.className += " formerror";
		alert(wrong_gfx);
		gfx.focus();
		return false;
	}

	return true;
}

function validateGdata(gfxcode)
{
	var name	= document.getElementById("name");
	var email	= document.getElementById("email");
	var hp		= document.getElementById("homepage");
	var message	= document.getElementById("message");
	var gfx		= document.getElementById("gfx_check");
	var whitespace	= " \t\n\r";
	var regex_email	= new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)([\\.])([a-zA-Z]{2,4})$');
	var regex_hp	= new RegExp('^(http\\:\\/\\/|www\\.)([a-zA-Z0-9\\-\\.]+)([\\.])([a-zA-Z]{2,4})$');
	
	if (isEmpty(name.value))
	{
		name.className += " formerror";
		alert(enter_name);
		name.focus();
		return false;
	}
	if (!isEmpty(email.value) && !regex_email.test(email.value))
	{
		email.className += " formerror";
		alert(enter_valid_email);
		email.focus();
		return false;
	}
	if (!isEmpty(hp.value) && hp.value != "http://")
	{
		if (!regex_hp.test(hp.value))
		{
			hp.className += " formerror";
			alert(enter_valid_hp);
			hp.focus();
			return false;
		}
	}
	if (isEmpty(message.value))
	{
		message.className += " formerror";
		alert(enter_message);
		message.focus();
		return false;
	}
	if (message.value.length < 5)
	{
		message.className += " formerror";
		alert(msg_too_short);
		message.focus();
		return false;
	}
	if (message.value.length > 500)
	{
		message.className += " formerror";
		alert(msg_too_long);
		message.focus();
		return false;
	}
	if (isEmpty(gfx.value))
	{
		gfx.className += " formerror";
		alert(enter_gfx);
		gfx.focus();
		return false;
	}
	if (gfx.value != gfxcode)
	{
		gfx.className += " formerror";
		alert(wrong_gfx);
		gfx.focus();
		return false;
	}

	return true;
}

// check if empty
function isEmpty(s)
{
	return ((s == null) || (s.length == 0));
}

// check cc number
function lunCheck(number)
{
	var i, sum, weight;
	sum = 0;
	for (i = 0; i < number.length - 1; i++)
	{
		weight = number.substr(number.length - (i + 2), 1) * (2 - (i % 2));
		sum += ((weight < 10) ? weight : (weight - 9));
	}
	
	if (parseInt(number.substr(number.length - 1)) == ((10 - sum % 10) % 10))
	{
		return (true);
	}
	else
	{
		return (false);
	}
}


// strip whitespace
function stripWhitespace(s)
{   
	return stripCharsInBag(s, " \t\n\r");
}


// strip chars in bag
function stripCharsInBag(s, bag)
{
	var i;
	var returnString = "";
	for (i = 0; i < s.length; i++)
	{   
		var c = s.charAt(i);
		if (bag.indexOf(c) == -1)
		{
			returnString += c;
		}
	}
	
	return returnString;
}


//*** jquery on load ***
$(function()
{
	// front page container
	$(".containerPlus").buildContainers(
	{
		containment:	"document",
		elementsPath:	"/images/elements/",
		onClose:	function(o){},
		effectDuration:	500
	});
	$('#dockedcontainer').mb_bringToFront();

	// thumbnail container
	$("#thumbs").zAccordion(
	{
		slideWidth:	125
	});

	//*** pirobox ***
	$().piroBox_ext(
	{
		piro_speed:	700,
		bg_alpha:	0.8,
		piro_scroll:	true
	});

	// toggle container
	$(".toggle-container").hide();
	$(".blackbar span").html(show);
	$(".blackbar").addClass("normal");
	$(".blackbar.closed").toggleClass("normal active");
	$(".blackbar").click(function()
	{
		$(this).toggleClass("normal active").next().slideToggle("slow");

		if ($(this).hasClass("active"))
		{
			$("span", this).html(hide);
		}
		else
		{
			$("span", this).html(show);
		}
	});

	// toggle container 2
	$(".toggle-container2").show();
	$(".blackbar2 span").html(hide);
	$(".blackbar2").addClass("active");
	$(".blackbar2").click(function()
	{
		$(this).toggleClass("normal active").next().slideToggle("slow");

		if ($(this).hasClass("active"))
		{
			$("span", this).html(hide);
		}
		else
		{
			$("span", this).html(show);
		}
	});
	
	// cc / paypal
      	$("div.pp").hide();
      	$("h2.cc").addClass("active");
      	$("h2.pp").addClass("normal");
	if ($("h2.pp").hasClass("ppenabled"))
	{
	      	$("h2").click(function()
	      	{
	      		var $nextDiv = $(this).next(".boxx");
	      		var $visibleSiblings = $nextDiv.siblings("div.boxx:visible");
	      		var $hiddenSiblings = $nextDiv.siblings("div.boxx:hidden");
	      		
	      		if ($visibleSiblings.length )
	      		{
	      			$visibleSiblings.slideUp("fast", function()
	      			{
	      				$nextDiv.slideToggle("fast");
	      				$("h2.cc").toggleClass("normal active");
	      				$("h2.pp").toggleClass("normal active");
	      			});
	      		}
	      		else
	      		{
	      			$hiddenSiblings.slideDown("fast", function()
	      			{
	      				$nextDiv.slideToggle("fast");
	      				$("h2.cc").toggleClass("normal active");
	      				$("h2.pp").toggleClass("normal active");
	      			});
	      		}
	
			if ($("h2.pp").hasClass("active"))
			{
				document.booking.pm[0].checked = true;
			}
			else
			{
				document.booking.pm[1].checked = true;
			}
	      	});
	}

	// halfboard package
      	$("#halfboard").change(function()
      	{
      		if ($("#halfboard").is(":checked"))
      		{
      			$("input[name=addhalfboard]").val("1");
			$(".halfboardinfo").show("slow", function()
      			{
      				if ($.browser.msie)
      				{
      					this.style.removeAttribute("filter");
      				}
      			});
      		}
      		else
      		{
      			$("input[name=addhalfboard]").val("0");
			$(".halfboardinfo").hide("slow");
      		}
      	});

	// early booker / best flexible
	if (document.booking)
	{
		if (document.booking.ebo)
		{
      			if ($("input[name=ebo]:checked").val() == "earlybooker")
      			{
      				$(".price1").hide();
      				$(".price2").show();
				$(".eb").removeClass("fgray");
				$(".bf").addClass("fgray");
      			}
      			else
      			{
      				$(".price2").hide();
      				$(".price1").show();
				$(".bf").removeClass("fgray");
				$(".eb").addClass("fgray");
      			}

			$("#option").change(function()
			{
				if ($("input[name=ebo]:checked").val() == "earlybooker")
				{
					$(".price1").hide();
					$(".price2").fadeIn("slow", function()
		      			{
						if ($.browser.msie)
						{
							this.style.removeAttribute("filter");
						}
		      			});
					$(".eb").removeClass("fgray");
					$(".bf").addClass("fgray");
				}
				else
				{
					$(".price2").hide();
					$(".price1").fadeIn("slow", function()
		      			{
						if ($.browser.msie)
						{
							this.style.removeAttribute("filter");
						}
		      			});
					$(".bf").removeClass("fgray");
					$(".eb").addClass("fgray");
				}
			});
		}
      		else
      		{
      			$(".price2").hide();
      			$(".price1").show();
      		}
	}
});


//*** mini calendar input ***
function miniCal(name1, name2, ad, ld)
{
	var min_date	= Calendar.dateToInt(new Date());
	var today	= new Date();
	var tomorrow	= new Date(today.getFullYear(), today.getMonth(), (today.getDate() + 1));
	var one_more	= new Date((today.getFullYear() + 1), today.getMonth(), today.getDate());
	var max_date	= Calendar.dateToInt(one_more);
	var cal_td	= Calendar.dateToInt(today);
	var cal_tm	= Calendar.dateToInt(tomorrow);

	document.getElementById(name1).value = (ad != "") ? ad : Calendar.printDate(today, "%Y-%m-%d");
	document.getElementById(name2).value = (ld != "") ? ld : Calendar.printDate(tomorrow, "%Y-%m-%d");
	
	var cal1 = Calendar.setup(
	{
	      	inputField:	name1,
	      	trigger:	name1,
	      	min:		min_date,
	      	max:		max_date,
		selection:	cal_td,
	      	onSelect:	function()
		{
			var d1 = Calendar.intToDate(this.selection.get());
			var d2 = new Date(d1.getFullYear(), d1.getMonth(), (d1.getDate() + 1));
			var date2 = Calendar.intToDate(d2);
		
			cal2.args.min = date2;
			cal2.redraw();
			this.hide();
		
			if (cal1.selection.get() >= cal2.selection.get())
			{
				cal2.selection.reset(d2);
				document.getElementById(name2).value = Calendar.printDate(date2, "%Y-%m-%d");
			}
		}
	});
	
	var cal2 = Calendar.setup(
	{
	      	inputField:	name2,
	      	trigger:	name2,
	      	min:		tomorrow,
	      	max:		max_date,
		selection:	cal_tm,
	      	onSelect:	function()
		{
			this.hide();
		}
	});
	      	
	return cal1, cal2;
}


//*** ajax ***
function do_ajax(filename, params)
{
	$.ajax(
	{
		type: "POST",
		url: filename,
		data: params,
		success: function(msg)
		{
			processResponse(msg);
		}
	})
}


//*** ajax calculate price ***
function ajax_calculate(room_type_id)
{
	arrival_date	= document.getElementById('arrival_date').value;
	leaving_date	= document.getElementById('leaving_date').value;
	do_ajax('../includes/get_price.php', 'room_type_id=' + room_type_id + '&arrival_date=' + arrival_date + '&leaving_date=' + leaving_date);
}

var subtotal = 0;

function processResponse(txt)
{
	var sss = txt.split('-');
	if (sss.length == 3)
	{
		var room_type_id	= sss[0];
		var ppp			= sss[1].split('||')
		var price		= ppp[0];
		var price2		= ppp[1];
		var trt			= sss[2];
	}
	var number		= document.getElementById('number_rooms[' + room_type_id + ']').options[document.getElementById('number_rooms[' + room_type_id + ']').selectedIndex].value;
	var number_adults	= document.getElementById('max_adults[' + room_type_id + ']').value;
	var min_adults		= number;
	var total_adults	= number_adults * number;
	var adultnr		= min_adults;
	var number_childs	= document.getElementById('max_childs[' + room_type_id + ']').value;
	var total_childs	= number_childs * number;
	var childnr		= 0;

	if (number != 0)
	{
		document.getElementById('adults_td[' + room_type_id + ']').style.display = "";
		document.getElementById('adults_td1[' + room_type_id + ']').style.display = "";
		document.getElementById('childs_td[' + room_type_id + ']').style.display = "";
		document.getElementById('childs_td1[' + room_type_id + ']').style.display = "";
		document.getElementById('price_td[' + room_type_id + ']').style.display = "";
		document.getElementById('price_td1[' + room_type_id + ']').style.display = "";
		document.getElementById('tr1_[' + room_type_id + ']').style.display = "";
		document.getElementById('tr2_[' + room_type_id + ']').style.display = "";
		document.getElementById('validate').value = 1;
	}
	else
	{
		document.getElementById('adults_td[' + room_type_id + ']').style.display = 'none';
		document.getElementById('adults_td1[' + room_type_id + ']').style.display = 'none';
		document.getElementById('childs_td[' + room_type_id + ']').style.display = "none";
		document.getElementById('childs_td1[' + room_type_id + ']').style.display = "none";
		document.getElementById('price_td[' + room_type_id + ']').style.display = 'none';
		document.getElementById('price_td1[' + room_type_id + ']').style.display = 'none';
		document.getElementById('tr1_[' + room_type_id + ']').style.display = "none";
		document.getElementById('tr2_[' + room_type_id + ']').style.display = "none";
		document.getElementById('validate').value = 0;
	}

	select_adult = "<select id='adults[" + room_type_id + "]' name='adults[" + room_type_id + "]'  onchange='changeAdultnr(" + room_type_id + ", this.options[this.selectedIndex].value)' />";
	for (var i = min_adults; i <= total_adults; i++)
	{
		select_adult += "<option value=" + i + ">" + i + "</option>";                       
	}
	select_adult += "</select>";

	select_child = "<select id='childs[" + room_type_id + "]' name='childs[" + room_type_id + "]'  onchange='changeChildnr(" + room_type_id + ", this.options[this.selectedIndex].value)' />";
	for (var i = 0; i <= total_childs; i++)
	{
		select_child += "<option value=" + i + ">" + i + "</option>";                       
	}
	select_child += "</select>";
	
	var total_price		= number * price;
	var total_price2	= number * price2;

	document.getElementById('adults_td1[' + room_type_id + ']').innerHTML = select_adult;
	document.getElementById('childs_td1[' + room_type_id + ']').innerHTML = select_child;
	document.getElementById('price[' + room_type_id + ']').innerHTML = total_price.toFixed(2);
	document.getElementById('price2[' + room_type_id + ']').innerHTML = total_price2.toFixed(2);
	document.getElementById('adults_nr[' + room_type_id + ']').innerHTML = adultnr;
	document.getElementById('childs_nr[' + room_type_id + ']').innerHTML = childnr;
	document.getElementById('rooms_nr[' + room_type_id + ']').innerHTML = number;
	document.getElementById('price_nr[' + room_type_id + ']').innerHTML = total_price.toFixed(2);
	document.getElementById('price2_nr[' + room_type_id + ']').innerHTML = total_price2.toFixed(2);

	showInfodiv();
}

function changeAdultnr(rid, nr)
{
	document.getElementById('adults_nr[' + rid + ']').innerHTML = nr;
}

function changeChildnr(rid, nr)
{
	if (nr > 0)
	{
		document.getElementById('childs_[' + rid + ']').style.display = "";
		document.getElementById('childs_nr[' + rid + ']').innerHTML = nr;
		document.getElementById('kidsdisclaimer[' + rid + ']').style.display = "";
	}
	else
	{
		document.getElementById('childs_[' + rid + ']').style.display = "none";
		document.getElementById('kidsdisclaimer[' + rid + ']').style.display = "none";
	}
}

function showInfodiv()
{
	var visible = "none";

	var elmts	= document.getElementById('booking_info').getElementsByTagName('tr');
	var nr		= elmts.length / 2;

	for (var i = 0; i < nr; i++)
	{
		if (elmts[i].style.display != "none");
		{
			visible = "";
		}
	}

	document.getElementById('booking_info').style.display = visible;
}

//*** end ***

