// JavaScript Document
function cargar(capa1, pagina1, capa2, pagina2, inicio) {
	if(inicio==true) { aumentarMenu(); } else { reducirMenu(); }
	new Effect.ScrollTo('encabezado');
	
	if(capa1!=null&&pagina1!=null) {
		$(capa1).innerHTML='<div style="text-align:center; padding:50px 0 50px 0;"><img src="/imagenes/lightbox/loading.gif"></div>';
		var myAjax = new Ajax.Updater(capa1, pagina1, {asynchronous:true, encoding:'LATIN-1'});
	}
	
//	if( (capa2!=null&&pagina2!=null) || (capa2!=""&&pagina2!="") ) {
	if(capa2.length!=0) {
		$(capa2).innerHTML='<div style="text-align:center; padding:50px 0 50px 0;"><img src="/imagenes/lightbox/loading.gif"></div>';
		var myAjax2 = new Ajax.Updater(capa2, pagina2, {asynchronous:true, encoding:'LATIN-1'});
		}
	
	initLightbox();
	window.acInit=false;
}

function cargarForma(capa1, pagina1, variables) {
//	FCKeditorAPI.GetInstance('HiddenInputName'').GetXHTML();
	//<form action="prueba.php" method="post" onsubmit="new Ajax.Updater('contenido', 'archivo.php', {asynchronous:true, parameters:Form.serialize(this)}); return false;">
	new Ajax.Updater(capa1, pagina1, {asynchronous:true, encoding:'LATIN-1', parameters:variables});
	initLightbox();
	window.acInit=false;
}

function sendFormUpdate(idformulario,url,divupdate)
{
	parametros = Form.serialize(idformulario);
	$(divupdate).innerHTML='<ul><li><span class="rojo">Enviando sus datos por favor espere...</span></li></ul>';
	var opt = {
		   parameters : parametros,
		   method: 'post'
	}		
	
	var myAjax = new Ajax.Updater(divupdate, url, opt);
	initLightbox();
	window.acInit=false;
}

/*------------------------------------------------------------------------------------------*/
// Validacion de distintos tipos de campos de formulario:
// - Texto no nulo
// - Direccion de correo electronico (e-mail): alfanum@alfanum.alfanum[.alfanum], donde alfanum son caracteres alfanumericos u otros (pasados como parametro)
// - Direccion en Internet (URL)
// Para ello no se utilizan expresiones regulares.
/* dice si cadena es texto no vacio o no                                     */
function vacio(cadena)
  {                                    // DECLARACION DE CONSTANTES
    var blanco = " \n\t" + String.fromCharCode(13); // blancos
                                       // DECLARACION DE VARIABLES
    var i;                             // indice en cadena
    var es_vacio;                      // cadena es vacio o no
    for(i = 0, es_vacio = true; (i < cadena.length) && es_vacio; i++) // INICIO
      es_vacio = blanco.indexOf(cadena.charAt(i)) != - 1;
    return(es_vacio);
  }


/* dice si cadena es un email (alfanum@alfanum.alfanum[.alfanum]) o no, don- */
/* de alfanum son caracteres alfanumericos u otros                           */
function email(cadena, otros)
  {                                    // DECLARACION-INICIALIZACION VARIABLES
    var i, j;                          // indice en cadena
    var es_email = 0 < cadena.length;  // cadena es email o no
    i = salta_alfanumerico(cadena, 0, otros); // INICIO
    if(es_email = 0 < i)               // lee "alfanum*"
      if(es_email = (i < cadena.length))
        if(es_email = cadena.charAt(i) == '@') // lee "alfanum@*"
          {
            i++;
            j = salta_alfanumerico(cadena, i, otros);
            if(es_email = i < j)       // lee "alfanum@alfanum*"
              if(es_email = j < cadena.length)
                if(es_email = cadena.charAt(j) == '\.')
                  {                    // lee "alfanum@alfanum.*"
                    j++;
                    i = salta_alfanumerico(cadena, j, otros);
                    if(es_email = j < i) // lee "alfanum@alfanum.alfanum*"
                      while(es_email && (i < cadena.length))
                        if(es_email = cadena.charAt(i) == '\.')
                          {
                            i++;
                            j = salta_alfanumerico(cadena, i, otros);
                            if(es_email = i < j) // lee "alfanum@alfanum.alfanum[.alfanum]*"
                              i = j;
                          }
                  }
          }
    return(es_email);
  }


/* dice si cadena es url (http://... ) o no                                     */
function url(cadena)
  {                                    // DECLARACION DE CONSTANTES
    var http = "http://";              // protocolo HTTP
                                       // DECLARACION DE VARIABLES
    var es_url;                        // cadena es url o no
    if(cadena.length <= 7)             // INICIO
      es_url = false;                  // no cabe "http://*"
    else
      es_url = http.indexOf(cadena.substring(0, 7)) != - 1; // lee "http://*"
    return(es_url);
  }


/* salta caracteres alfanumericos y otros a partir de  cadena[i]  y  da  si- */
/* guiente posicion                                                          */
function salta_alfanumerico(cadena, i, otros)
  {                                    // DECLARACION DE VARIABLES
    var j;                             // indice en cadena
    var car;                           // caracter de cadena
    var alfanum;                       // cadena[j] es alfanumerico u otros
    for(j = i, alfanum = true; (j < cadena.length) && alfanum; j++) // INICIO
      {
        car = cadena.charAt(j);
        alfanum = alfanumerico(car) || (otros.indexOf(car) != -1);
      }
    if(!alfanum)                       // lee "alfanumX"
      j--;
    return(j);
  }
  
/* dice si car es alfanumerico                                               */
function alfanumerico(car)
  {
    return(alfabetico(car) || numerico(car));
  }


/* dice si car es alfabetico                                                 */
function alfabetico(car)               // DECLARACION DE CONSTANTES
  {                                    // caracteres alfabeticos
    var alfa = "ABCDEFGHIJKLMNOPQRSTUWXYZabcdefghijklmnopqrstuvxyz";
    return(alfa.indexOf(car) != - 1);  // INICIO
  }


/* dice si car es numerico                                                   */
function numerico(car)
  {                                    // DECLARACION DE CONSTANTES
    var num = "0123456789";            // caracteres numericos
    return(num.indexOf(car) != - 1);   // INICIO
  }


function ValidaCampos(form)
  {
    if(vacio(form.nombre.value))
    	alert("No ha escrito ningun Nombre.");
    else 
		if(!email(form.email.value, "-_"))
      		alert("Direccion de correo electronico incorrecta.");
    	else 
			if(vacio(form.mensaje.value))
      			alert("No ha escrito ningun Mensaje.");
			else//sustituir esta linea por return(true) para hacer el submit de un formulario real
				{
				//alert("Los datos son correctos");
				return (true);
				}
    return(false);
  }
/*--------------------------------------------------------------------------------------------------------------------*/

function MM_openBrWindow(theURL,winName,features) { //v2.0
	window.open(theURL,winName,features);
}