/**
* @fileoverview Libreria con funciones de utilidad
*
* @author dapda.com
* @version 0.1
*/




/**
* Realiza una precarga de las imágenes almacenadas en el vector pasado como parámetro
* @param {Array} imagenesACargar array con las url de las imágenes de las cuales queremos hacer la precarga
*/
function PrecargaImagenes(imagenesACargar) {
    
	imagenesCargadas = new Array();
	
	for (i in imagenesACargar) {
		imagenesCargadas[i] = new Image();
		imagenesCargadas[i].src = imagenesACargar[i];
	}
}




/**
* Cambiar la imagen de la celda de una tabla
* @param {String} identificadorCelda identificador de la celda en el documento
* @param {String} rutaNuevaImagen ruta de la imagen que queremos poner como nuevo fondo
*/
function CambiaFondoCelda(identificadorCelda, rutaNuevaImagen) {
	document.getElementById(identificadorCelda).style.backgroundImage="url("+rutaNuevaImagen+")";
}




/**
* Función que simula un enlace (nos lleva a la página indicada como parámetro
* @param {String} destino url a la que queremos ir
*/
function IrAURL(destino) {
	location.href = destino;
}



/**
* Función que simula un enlace (abre en otra ventana la página indicada como parámetro
* @param {String} destino url a la que queremos ir
*/
function IrAURLBlank(destino) {
	window.open(destino);
}



/**
* Función que envía el un formulario al destino indicado
* @param {String} formulario nombre del formulario que queremos enviar
* @param {String} destino url al que enviaremos el formulario
*/
function enviaFormulario(formulario, destino) {
    document.getElementById(formulario).action = destino;
    document.getElementById(formulario).submit();
}





/**
* Función activa o desactiva un botón mediante la activación o desactivación de un checkbox respectivamente.
* @param {String} idCheckbox identificador del checkbox que activa o desactiva el botón
* @param {String} idBoton identificador del botón que será activado o desactivado por la pulsación en el checkbox
*/
function ActivaDesactivaBotonPorCheckbox(idCheckbox, idBoton) {
	if (idCheckbox.checked)
		idBoton.disabled = false;
	else
		idBoton.disabled = true;
}



/**
* Realiza el cambio de las diapositivas de la publicidad cada cierto Tiempo (Jquery)
*/
function RelizaCambioDiapositivaPublicidad() {
	
    var $active = $('#slideshow DIV.active');

    if ( $active.length == 0 ) $active = $('#slideshow DIV:last');

    var $next =  $active.next().length ? $active.next()
        : $('#slideshow DIV:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}
/**
* Realiza el cambio de las diapositivas de la publicidad cada cierto Tiempo (Jquery)
*/
function RelizaCambioDiapositivaPublicidad2() {
	
    var $active = $('#slideshow2 DIV.active');

    if ( $active.length == 0 ) $active = $('#slideshow2 DIV:last');

    var $next =  $active.next().length ? $active.next()
        : $('#slideshow2 DIV:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}
/**
* Realiza el cambio de las diapositivas de la publicidad cada cierto Tiempo (Jquery)
*/
function RelizaCambioDiapositivaPublicidad3() {
	
    var $active = $('#slideshow3 DIV.active');

    if ( $active.length == 0 ) $active = $('#slideshow3 DIV:last');

    var $next =  $active.next().length ? $active.next()
        : $('#slideshow3 DIV:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}


/**
* Funciones para el intercambio de imágenes
*/
/**
* Funcion que restaura una imagen cambiada por su original
*/
function IntercabioImagenRestaura() { 
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
/**
* Funcion que realiza la precarga de las imagenes a intercambiar
*/
function IntercambioImagenPrecarga() {
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=IntercambioImagenPrecarga.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
/**
* Funcion que busca el objeto (imagen a intercambiar)
*/
function IntercambioImagenEncuentraObjeto(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=IntercambioImagenEncuentraObjeto(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
/**
* Funcion que intercambia una imagen por otra
*/
function IntercambioImagenCambia() { //v3.0
  var i,j=0,x,a=IntercambioImagenCambia.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=IntercambioImagenEncuentraObjeto(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}








