function selectModels(formfield,searchmakedesc,modelfield,stylecode,condenselevel,loader){
	var src = document[formfield];
	var srcModel = src[modelfield];
	for(i = srcModel.length - 1; i >= 1; i--) {srcModel.options[i] = null;}
	var req = (window.XMLHttpRequest) ? new XMLHttpRequest() : ((window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : false);
	if(typeof(loader) != 'undefined'){
	// get element position
	var coord = GetElementAbsolutePos(document.getElementById(modelfield));
	loaderPic = document.getElementById(loader);
	loaderPic.style.display='block';
	loaderPic.style.left=(coord.x + 2) + 'px';
	loaderPic.style.top=(coord.y + 2 )+ 'px';}
	searchmakedesc = encodeURI(searchmakedesc);
	req.open ("GET","/customtags/ct_json_models.cfm?make=" + searchmakedesc + "&stylecode=" + stylecode + "&condenselevel=" + condenselevel,true);
	req.onreadystatechange = function(){
		if(req.readyState == 4){
			if(req.status == 200){
				var models = eval('(' + req.responseText + ')');
				for(i=0;i<models.data.modeldesc.length;i++){
					var fm = srcModel.options;
					fm[fm.length] = new Option(models.data.modeldesc[i], models.data.modeldesc[i]);
				}
				if(typeof(loader) != 'undefined'){
					loaderPic.style.display='none';
				}
			}
		}
	}
	req.send(null)
}
function GetElementAbsolutePos(element) {
	var res = new Object();
	res.x = 0; res.y = 0;
	if (element !== null) {
		res.x = element.offsetLeft;
		res.y = element.offsetTop;
		var offsetParent = element.offsetParent;
		var parentNode = element.parentNode;
		while (offsetParent !== null) {
			res.x += offsetParent.offsetLeft;
			res.y += offsetParent.offsetTop;
			if (offsetParent != document.body && offsetParent != document.documentElement) {
				res.x -= offsetParent.scrollLeft;
				res.y -= offsetParent.scrollTop;
			}
			//next lines are necessary to support FireFox problem with offsetParent
			if(navigator.family == 'gecko') {
				while (offsetParent != parentNode && parentNode !== null) {
					res.x -= parentNode.scrollLeft;
					res.y -= parentNode.scrollTop;
					parentNode = parentNode.parentNode;
				}
			}
			parentNode = offsetParent.parentNode;
			offsetParent = offsetParent.offsetParent;
		}
	}
	return res;
}