//----------------------------------------------------------------------
function enviar(form, opcion){//opcion: 1=insertar 
 var i;             i=0;
 var datos_enviar;  datos_enviar="";//Datos a enviar
 var numericos;     numericos="";
 var isnumeric;     isnumeric="";
 var caracteres;    caracteres="";
 var iscaracter;    iscaracter="";
 var ismail;        ismail="";
 var input_vacios;  input_vacios = "";
/*----------------------------------------------------------------------------*/
 while(i<form.elements.length){//Numero de elementos para un formulario en particular
  if(form.elements[i].type!="hidden"&&form.elements[i].type!="button"){//Si requiere los datos tipo hidden se envian: Se puede quitar este IF
   if(form.elements[i].value!=""){//Es diferente de vacio
	if(form.elements[i].name=="mensaje"){//Dato Asunto - Puede ser una Lista Desplegable: Almacenar su contenido no el value
	 if(form.elements[i].type=="textarea")datos_enviar = datos_enviar + form.elements[i].name + "=" + form.elements[i].value+"&";
	    else datos_enviar = datos_enviar + form.elements[i].name + "=" + form.elements[i].options[form.elements[i].selectedIndex].text+"&";
	}else{//Son otros datos
	  datos_enviar = datos_enviar + form.elements[i].name + "=" + form.elements[i].value+"&";	
	}
	
//--------------------------------------------------------------------------    
    if(form.elements[i].name=="ema"){/*e-mail*/
     ismail = isEMailAddr(form.elements[i]);
     ismail = (ismail==false)?("El campo ("+document.getElementById(form.elements[i].name).innerHTML+ 
      ") no cumple con el formato estándar de un correo electrónico."):"";
    }
    if(/*Caracteres*/
      form.elements[i].name=="mensaje"
    ){
//-------------------------------------------------------
	  if(form.elements[i].name=="mensaje"){//Dato Asunto
	   if(form.elements[i].type=="textarea")iscaracter = tipo_caracter(form.elements[i].value);
	  }else iscaracter = tipo_caracter(form.elements[i].value);	
//-------------------------------------------------------
	   if(iscaracter==false){//No es una cadena de caracteres
        caracteres = (caracteres=="")?
         (caracteres + "Los siguientes campos deben ser cadenas de caracteres:\n- "    +
         document.getElementById(form.elements[i].name).innerHTML):(caracteres +"\n- " +
         document.getElementById(form.elements[i].name).innerHTML);
       }
    }
//--------------------------------------------------------------------------
   }
   else{//Es vacio el input
	 if(input_vacios==""){
	  input_vacios = input_vacios + "Debe ingresar los siguientes datos:"
      + "\n- " + document.getElementById(form.elements[i].name).innerHTML;
     }
     else{
       input_vacios = input_vacios + "\n- " + document.getElementById(form.elements[i].name).innerHTML;
     }
   }
  }
  i++;
 }//endwhile


/*----------------------------------------------------------------------------*/
/*Determinar si todos los datos se han digitado correctamente en el formulario*/
/*----------------------------------------------------------------------------*/

//Resultados de las validaciones
 
 var mensaje_errores;mensaje_errores = "";
 var resultados_validaciones = new Array(
  caracteres, numericos, ismail, input_vacios);
  if(caracteres!=""||numericos!=""||input_vacios!=""||ismail!=""){
//Este for se hace con el fin de controlar los mensajes de error que aparecen en la interfaz
   for(i=0;i<resultados_validaciones.length;i++){
    mensaje_errores = (resultados_validaciones[i]!="")?
     (mensaje_errores+resultados_validaciones[i]+"\n"):mensaje_errores;
   }
    alert(mensaje_errores);//Errores del usuario que digito los datos en el formulario
  }
  else{//Se pueden enviar los datos al servidor
    datos_enviar=datos_enviar+"opcion="+opcion;
	//alert(datos_enviar);
	document.getElementById("loadding").style.display = "block";
    envio_datos(datos_enviar);//Envio de datos a traves de AJAX
  }
}
