var Ajax = new Object(); 
	 
Ajax.Request = function(url, callbackMethod) 
{ 
    Ajax.request = Ajax.createRequestObject(); 
    Ajax.request.onreadystatechange = callbackMethod; 
    Ajax.request.open("POST", url, true); 
    Ajax.request.send(url); 
} 
	 
Ajax.createRequestObject = function() 
{ 
    var obj; 
    if (window.XMLHttpRequest) 
    { 
        obj = new XMLHttpRequest(); 
    } 
    else if (window.ActiveXObject) 
    { 
        obj = new ActiveXObject("MSXML2.XMLHTTP"); 
    } 
    return obj; 
} 

Ajax.CheckReadyState = function() 
{ 
    if (Ajax.request.readyState == 4) 
    	return true;
    else
    	return false;
}


Ajax.updateOptionsCallback = function()
{
	if (Ajax.CheckReadyState())
	{
		items = Ajax.request.responseText.split(";");
		for (i = 0; i < items.length; i++) {
			result = items[i].split(",");
		    if (result.length == 2) {
		        newitem = new Option(result[1], result[0], false, false);
		        Ajax.element.options[Ajax.element.length] = newitem;
		    }
		}
		
	}
}

Ajax.updateOptions = function(elementName, url, refElementName, getName, params)
{
	Ajax.elementName = elementName;
	Ajax.refElementName = refElementName;
	
	if (document.all) {
	    Ajax.refElement = document.all[refElementName];
	    Ajax.element = document.all[elementName];
	} else if (document.getElementById) {
	    Ajax.refElement = document.getElementById(refElementName);
	    Ajax.element = document.getElementById(elementName);
	}   
	
	if (getName == null)
		getName = refElementName;
	
	Ajax.element.length = 0;
	
	url = url + "?" + getName + "=" + Ajax.refElement.value + (params != null ? params : "");
	
	Ajax.Request(url, Ajax.updateOptionsCallback);
}


Ajax.updateOptionsMulti = function(elementName, url, refElementNames, refNames, params)
{
	Ajax.elementName = elementName;
	
	if (document.all) {
	    Ajax.element = document.all[elementName];
	} else if (document.getElementById) {
	    Ajax.element = document.getElementById(elementName);
	}
	
	for (i = 0; i < refElementNames.length; i++) {

		if (document.all) {
		    refelement = document.all[refElementNames[i]];
		} else if (document.getElementById) {
		    refelement = document.getElementById(refElementNames[i]);
		}
		
		url = url + ((i == 0) ? "?" : "&") + refNames[i] + "=" + refelement.value;
	}
	
	url = url + (params != null ? params : "");
	
	Ajax.element.length = 0;
		
	Ajax.Request(url, Ajax.updateOptionsCallback);
}
