String.prototype.trim = function(){
	return	this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');	
}

String.prototype.isFloat = function () {
	return /^\d+\.?\d*$/.test (this);
}

Number.prototype.isFloat = function () {
	return /^\d+\.?\d*$/.test (this);
}
//#######################################################################################################

function createXMLHTTPObject(){
	var requestObject;

	try{
		requestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}catch(e){
		try{
			requestObject = new ActiveXObject("Msxml2.XMLHTTP");		
		}catch(e){
			try{
				requestObject = new XMLHttpRequest();
			}catch(e){
				alert("Erro!! Browser sem AJAX.")
				return null;
			}
		}
	}
	
	return requestObject;

}
//#######################################################################################################

function processXML_model(obj){

	var xmlObj = obj.responseXML;

	if( !xmlObj.hasChildNodes() ) {
		try {
			// Load XML using responseText (for Internet Explorer).
			xmlObj.loadXML( obj.responseText );			
		} catch( e ) {
			alert('Can not parse XML.');
			return false;
		}//try to keep Internet Explorer alive
	}
	var dataArray = xmlObj.getElementsByTagName("modelo");
	var num_results = dataArray.length;
	if(num_results >= 1){
		
		document.formBarco.modelo.options[0].text = "Selecione";
		for(i=0;i<num_results;i++){
			var item = dataArray[i];
			var id_modelo = item.getElementsByTagName("id_modelo")[0].firstChild.data;
			var nome = item.getElementsByTagName("nome")[0].firstChild.data;
			var newModelo = new Option(nome,id_modelo);
			document.formBarco.modelo.options.add(newModelo);
		}
	}
}

//#######################################################################################################
function reload_models(marca_id){

	if(marca_id == ""){
		document.formBarco.modelo.options.length = 1;
		return false;
	}
	
	var ajax = createXMLHTTPObject();
	
	if(ajax != null){
	
		document.formBarco.modelo.options.length = 1;
		if( ajax.overrideMimeType ) {
			ajax.overrideMimeType( 'text/xml' );
		}
		ajax.open("GET","barcos/bin/get_model.php?id_marca="+marca_id,true);
		
		var http_handler = function (ajaxObj){
			
			if(ajaxObj.readyState == 1)
				window.status = "Aguarde um momento por favor...";
			
			if(ajaxObj.readyState == 4){
				if(ajaxObj.status == 200) {
					processXML_model(ajax);
            		window.status = "";
        		}
				else{
					alert("Erro ao receber dados");
					document.formBarco.modelo.options[0].text = "Selecione";
				}
					
			}

		}

		ajax.onreadystatechange = function(){http_handler(ajax)};
		ajax.send("");
      
	}
    else {
          alert("Objecto HTTP não criado");
		}

}
