function clearForm(oForm) {
     
  var elements = oForm.elements;
  var field_type;
  
  oForm.reset();

  
  for(i=0; i<elements.length; i++) {
	  if (elements[i].type != undefined)
	  {
		field_type = elements[i].type.toLowerCase();
		switch(field_type) {
			case "text": 
			case "password": 
			case "textarea":
		        case "hidden":	
		        	elements[i].value = ""; 
				break;
	        
			case "radio":
			case "checkbox":
	  			if (elements[i].checked) {
	   				elements[i].checked = false; 
				}
				break;
	
			case "select-one":
			case "select-multi":
					//if we have first element with text = '----' - we should reset to it
					if (elements[i].options[0].text == '----' )
						elements[i].selectedIndex = 0;
					else
	            		elements[i].selectedIndex = -1;
				break;
	
			default: 
				break;
		}
    }
  }
}