// JavaScript Document
<!--
var cellStyle='';
var childHelp="Please provide the ages of the children in each room. Children's ages should be their age at the time of travel.";
var adultHelp="";
var textRooms='<font size="1">Rooms:</font>';
var textAdults="Adults:<BR>(age 18+ )";
var textChildren="Children:<BR>(age 0-18)";
var textChildError="Indique las edades de los niņos.";
var pad='<img src="/images/p.gif" width="10" height="1">';
var textRoomX="Room ?:";
var textChildX="Children ?";
var childrenPerRoom=new Array();
var adultsPerRoom=new Array();
var childAgesPerRoom=new Array();
var numRooms=0;
var maxChildren=0;
adultsPerRoom[0]=2;
childrenPerRoom[0]=0;
numRooms=1;
if (numRooms < 1){
	numRooms = 1;
}
										
refresh();

										
function setChildAge(room, child, age){
	if (childAgesPerRoom[room] == null){
		childAgesPerRoom[room] = new Array();
	}
	childAgesPerRoom[room][child] = age;
}
										
function setNumAdults(room, numAdults){
	adultsPerRoom[room] = numAdults;
}
										
function setNumChildren(room, numChildren){
	childrenPerRoom[room] = numChildren;
	refresh();
}
										
function setNumRooms(x){
	numRooms = x;
	for (i = 0; i < x; i++){
		if (adultsPerRoom[i] == null){
			adultsPerRoom[i] = 2;
		}
												
		if (childrenPerRoom[i] == null){
			childrenPerRoom[i] = 0;
		}
	}
	refresh();
}
										
function renderRoomSelect(){
	var x = '';
	x += '<select name="numberOfRooms" onchange="setNumRooms(this.options[this.selectedIndex].value);">';
	for (var i = 1; i < 9; i++){
		x += '<option value="'+i+'"'+(numRooms == i ? ' selected' : '')+'>' + i;
	}
	x += '<option value="9"'+(numRooms == 9 ? ' selected' : '')+'>9+';
	x += '</select>';
	return x;
}
										
function refresh(){
	maxChildren = 0;
	
	for (var i = 0; i < numRooms; i++){
		if (childrenPerRoom[i] > maxChildren){
			maxChildren = childrenPerRoom[i];
		}
	}
	
	var x = '';
	
	if (adultHelp.length > 0){
		x = adultHelp + "<p>\n";
	}
	
	if (numRooms > 8){
		x += textRooms;
		x += renderRoomSelect();
	}else{
		x += '<table border="0" cellspacing="2" cellpadding="0">\n';
		x += '<tr><td'+cellStyle+'><FONT SIZE="1">'+textRooms+pad+'</FONT></td><td'+cellStyle+'>'+renderRoomSelect()+'</td><td'+cellStyle+'>&nbsp;</td></tr>';
		x += '<tr><tr><td'+cellStyle+'>&nbsp;</td><td'+cellStyle+'><FONT SIZE="1">'+textAdults+'</FONT></td><td'+cellStyle+'><FONT SIZE="1">'+textChildren+'</FONT></td></tr>\n';
		for (var i = 0; i < numRooms; i++){
			x += '<td'+cellStyle+'><FONT SIZE="1">'+getValue(textRoomX, i+1)+pad + '</FONT></td>';
			x += '<td'+cellStyle+'>';
			x += buildSelect('room-' + i + '-adult-total', 'setNumAdults(' + i + ', this.options[this.selectedIndex].value)', 1, 4, adultsPerRoom[i]);
			x += '</td><td'+cellStyle+'>';
			x += buildSelect('room-' + i + '-child-total', 'setNumChildren(' + i + ', this.options[this.selectedIndex].value)', 0, 6, childrenPerRoom[i]);
			x += '</td></tr>\n';

			// Check for Children ages
			if (childrenPerRoom[i] > 0){
				for (var j = 0; j < maxChildren; j++){
					for (var j = 0; j < childrenPerRoom[i]; j++){
						x += '<tr><td'+cellStyle+'><FONT SIZE="1">'+getValue(textChildX, j+1)+pad+'\'s age:</FONT></td>';
						x += '<td'+cellStyle+'>';
						var def = -1;
								
						if (childAgesPerRoom[i] != null){
							if (childAgesPerRoom[i][j] != null){
								def = childAgesPerRoom[i][j];
							}
						}
				
						x += '<select name="room-'+i+'-child-'+j+'-age" onchange="setChildAge('+i+', '+j+', this.options[this.selectedIndex].value);">';
						x += '<option value="-1"'+(def == -1 ? ' selected' : '')+'>-?-';
						x += '<option value="0"'+(def == 0 ? ' selected' : '')+'>&lt;1';
					
						for (var k = 1; k < 18; k++){
							x += '<option value="'+k+'"'+(def == k ? ' selected' : '')+'>'+k;
						}
					
						x += '</td></tr>';
					}
				}
			}
		}
		x += '</table>\n';
	}
	
	document.getElementById("hot-search-params").innerHTML = x;
}
										
function buildSelect(name, onchange, min, max, selected){
	var x = '<select name="' + name + '"';
	if (onchange != null){
		x += ' onchange="' + onchange + '"';
	}
	x +='>\n';
	for (var i = min; i <= max; i++){
		x += '<option value="' + i + '"';
		if (i == selected){
			x += ' selected';
		}
		x += '>' + i + '\n';
	}
	x += '</select>';
	return x;
}

function validateGuests(form){
	if (numRooms < 9){
		var missingAge = false;
		for (var i = 0; i < numRooms; i++){
			var numChildren = childrenPerRoom[i];
			if (numChildren != null && numChildren > 0){
				for (var j = 0; j < numChildren; j++){
					if (childAgesPerRoom[i] == null || childAgesPerRoom[i][j] == null || childAgesPerRoom[i][j] == -1){
						missingAge = true;
					}
				}
			}
		}
		if (missingAge){
			alert(textChildError);
			return false;
		}else{
			return true;
		}
	}else{
		return true;
	}
}
										
function submitGuestInfoForm(form){
	if (!validateGuests(form)){
		return false;
	}
	return true;
}

function getValue(str, val){
	return str.replace(/\?/g, val);
}
//-->