var selectedSize = "";
var selectedShape = "";
var selectedModel = "";
var shapereq = "";
var modelreq = "";

function buildLists() {
	buildShapes(0);
	buildModels(0, 0);
}

function createRequestObject() {
	var ro;
	try {
		ro = new XMLHttpRequest();
	}
	catch (tryms) {
		try {
			ro = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (otherms) {
			ro = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return ro;
}

function buildShapes(size) {
	shapereq = createRequestObject();
	shapereq.open('get','/getshapes.py/size='+size, true);
	shapereq.onreadystatechange = buildShapesHandler;
	shapereq.send(null);
}

function buildShapesHandler() {
	if (shapereq.readyState == 4) { 
		// zap old select menu
		document.forms["searchform"].mshape.options.length = 0;
		document.forms["searchform"].mshape.options[0] = new Option('And/Or Shape', '0'); 
		var opts = shapereq.responseXML.getElementsByTagName('option'); 
		for (var i = 0; i < opts.length; i++) { 
			var op = new Option( 
				unescape(opts[i].getElementsByTagName('mshape').item(0).firstChild.data), 
				unescape(opts[i].getElementsByTagName('id').item(0).firstChild.data), 
				false, false); 
			document.forms["searchform"].mshape.options[document.forms["searchform"].mshape.length] = op;
		} 
	} 
}

function buildModels(size, shape) {
	modelreq = createRequestObject();
	modelreq.open('get','/getmodels.py/size=' + size + '/shape=' + shape, true);
	modelreq.onreadystatechange = buildModelsHandler;
	modelreq.send(null);
}

function buildModelsHandler() {
	if (modelreq.readyState == 4) { 
		// zap old select menu
		document.forms["searchform"].mmodel.options.length = 0;
		document.forms["searchform"].mmodel.options[0] = new Option('And/Or Model', '0'); 
		var opts = modelreq.responseXML.getElementsByTagName('option'); 
		for (var i = 0; i < opts.length; i++) { 
			var op = new Option( 
				unescape(opts[i].getElementsByTagName('mmodel').item(0).firstChild.data), 
				unescape(opts[i].getElementsByTagName('id').item(0).firstChild.data), 
				false, false); 
			document.forms["searchform"].mmodel.options[document.forms["searchform"].mmodel.length] = op;
		} 
	} 
}

function buildUrl() {
	var url = "http://www.aquaticwhirlpools.com/products.py";
	var ok = 0;
	if(selectedSize != "") {
		url += "/sizeSearch=" + selectedSize;
		ok = 1;
	}
	if(selectedShape != "") {
		url += "/shapeSearch=" + selectedShape;
		ok = 1;
	}
	if(selectedModel != "") {
		url += "/startModel=" + selectedModel;
		ok = 1;
	}
	// if(ok == 0) {
	//	return true;
	// }
	// alert("url is " + url);
	x = url;
	document.location.href = url;
	return false;
}

function sizeSelected(size) {
	sizelen = size.length ;
	selectedSize = 0;
	for ( i=0; i<sizelen ; i++){
		if (size.options[i].selected == true ) {
			selectedSize = size.options[i].value;
		}
	}
	buildShapes(selectedSize);
	buildModels(selectedSize, 0);
}

function shapeSelected(shape) {
	shapelen = shape.length ;
	selectedShape = 0;
	for ( i=0; i<shapelen ; i++){
		if (shape.options[i].selected == true ) {
			selectedShape = shape.options[i].value;
		}
	}
	if(selectedSize < 1) {
		selectedSize = 0;
	}
	buildModels(selectedSize, selectedShape);
}

function modelSelected(model) {
	modellen = model.length ;
	selectedModel = 0;
	for ( i=0; i<modellen ; i++){
		if (model.options[i].selected == true ) {
			selectedModel = model.options[i].value;
		}
	}
}
