//function to update the style class of an item
function updateStyle(item, newstyle){
	item.className = newstyle;
}

//set the appropriate toplevel menu to selected
function setToplevelMenu(menu){
	document.getElementById("MENU_"+menu).className = "TOPMENU_selected";
}

//function to update the SRC of an item
function updateImageSrc(item, src){
	var it = document.getElementById(item);
	it.src = "images/" + item + src + ".gif";
}

/*
	AJAX Submission
*/
function retrieveURL(url, parameters) {
	var req;
    if(window.XMLHttpRequest){      
	    //Non-IE browsers
	    req = new XMLHttpRequest();
	    if (req.overrideMimeType) {
            req.overrideMimeType('text/html');
         }
	} else if(window.ActiveXObject){
	    //IE	   
	    try {
            req = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               req = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
 	}
 	if(!req){
    	alert('Cannot create XMLHTTP instance');
        return false;
	}
    req.open('POST', url, true);
    req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-length", parameters.length);
    req.setRequestHeader("Connection", "close");
    req.send(parameters);    
}

/**
	Converts a form to a string for use in a GET/POST request
	@param formName	form to be processed	
*/
function getFormAsString(formName){        
	//Setup the return String
	returnString ="";	       
	//Get the form values
	formElements=document.forms[formName].elements;	        
	//loop through the array, building up the url
	//in the format '/strutsaction.do&name=value' 
	for(var i=formElements.length-1;i>=0; --i ){
		  //handle checkboxes
		  if(formElements[i].type == 'checkbox'){
		  	  returnString+="&" 
		      +escape(formElements[i].name)+"=" 
		      +escape(formElements[i].checked);
		  } 
		  else if(formElements[i].type == 'radio'){
		  	  if(formElements[i].checked){		
			  	  returnString+="&" 
			      +escape(formElements[i].name)+"=" 
			      +escape(formElements[i].value);
		      }
		  }
		  else {
		      //we escape (encode) each value
		      returnString+="&" 
		      +escape(formElements[i].name)+"=" 
		      +escape(formElements[i].value);
		  }
	}	      
	//return the values
	return returnString; 
}