String.prototype.trim= function() {//Agrega la función trim al objeto String
   return this.replace(/(^\s*)|(\s*$)/g,""); //elimina espacios a izquierda y derecha
   }



function creaAjax(){
  var objetoAjax=false;
  try {
   /*Para navegadores distintos a internet explorer*/
   objetoAjax = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
   try {
     /*Para explorer*/
     objetoAjax = new ActiveXObject("Microsoft.XMLHTTP");
     } 
     catch (E) {
     objetoAjax = false;
   }
  }

  if (!objetoAjax && typeof XMLHttpRequest!='undefined') {
   objetoAjax = new XMLHttpRequest();
  }
  return objetoAjax;
}


function nuevoDato(str)
{




 var ajax=creaAjax();
   var capaContenedora = document.getElementById("mensaje");
	


    ajax.open ('POST', "enviamail.php", true);

    ajax.onreadystatechange = function() {
         if (ajax.readyState==1) {
                 capaContenedora.innerHTML="Enviando Mensaje.......";
         }
         else if (ajax.readyState==4){
            if(ajax.status==200)
            {		
		document.getElementById("mensaje").innerHTML=ajax.responseText;
limpiaformulario();
		

		
	    }
            else if(ajax.status==404)
                 {

                     capaContenedora.innerHTML = "No se encontro la pagina";
                 }
             else
                 {
                     capaContenedora.innerHTML = "Error: ".ajax.status;
                 }
        }
    }
	
    ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    ajax.send(str);
 
    return;

}







function crearstr() 
{ 
  var getstr = "";
form = document.forms['formulario']  

for (i=0;i <form.elements.length;i++)   
    {   
   if (form.elements[i].type == 'text' || form.elements[i].type == 'hidden' || form.elements[i].type == 'textarea' ) 
		{ 
		getstr += form.elements[i].name + "=+" + form.elements[i].value + "&";
		
		
		}
	if (form.elements[i].type == 'select-one') 
		{ 
		 var sel = form.elements[i];
		getstr += sel.name + "=+" + sel.options[sel.selectedIndex].value + "&";
		
		}
		
	 if (form.elements[i].type == "checkbox") {
               if (form.elements[i].checked) {
                  getstr += form.elements[i].name + "=+" + form.elements[i].value + "&";
               } else {
                  getstr += form.elements[i].name + "=&";
               }
            }
      if (form.elements[i].type == "radio") {
               if (form.elements[i].checked) 
               {
                  getstr += form.elements[i].name + "=+" + form.elements[i].value + "&";
               }
            }
  
    		}   

nuevoDato(getstr);


} 




function valida() 

{

var strnombre=document.getElementById("nombre").value;
var strmail=document.getElementById("e_mail").value;
var strcomentario=document.getElementById("comentarios").value;

if(!validaLongitud(strnombre, 0, 4, 40)) 


			{

			alert("Por favor complete su apellido y nombre.");
			var inputnombre=document.getElementById("nombre");
			inputnombre.focus();
			return(false);
}

if(!validaLongitud(strcomentario, 0, 4, 500)) 

			{

			alert("Envie un comentario (max 500 caracteres).");
			var inputcomentario=document.getElementById("comentarios");
			inputcomentario.focus();
			return(false);

}





if(!validaCorreo(strmail)) 


			{alert("Por favor revise el campo E-Mail");
			var inputmail=document.getElementById("e_mail");
			inputmail.focus();
			return(false);}




crearstr();


}



function validaLongitud(valor, permiteVacio, minimo, maximo)
{
	var cantCar=valor.length;
	if(valor=="")
	{
		if(permiteVacio) return true;
		else return false;
	}
	else
	{
		if(cantCar>=minimo && cantCar<=maximo) return true;
		else return false;
	}
}

function validaCorreo(valor)
{
	var reg=/(^[a-zA-Z0-9._-]{1,30})@([a-zA-Z0-9.-]{1,30}$)/;
	if(reg.test(valor)) return true;
	else return false;
}		

		


function eliminaEspacios(cadena)
{
	var x=0, y=cadena.length-1;
	while(cadena.charAt(x)==" ") x++;	
	while(cadena.charAt(y)==" ") y--;	
	return cadena.substr(x, y-x+1);
}

function validarn(e) {
    tecla = (document.all) ? e.keyCode : e.which;
    if (tecla==8) return true;
    patron =/[0-9-.\s]/;
    te = String.fromCharCode(tecla);
    return patron.test(te);
}


function limpiaformulario()
{

document.all.formulario.reset();
document.getElementById("comentarios").value="";
document.getElementById("nombre").value="";

}
