﻿var oXML = getHTTPObject(); // Creamos el objeto XMLHttpRequest
var idContenedor;
var idLenguaje;
var idHost;
var descripciones = new Array;
var indice;
var archvoActual;
var urlArcihvoActual;
var totalArchivos;

$(function() {
	var descripcion;
	var miScroll;

    var titulo = '<strong>Modificación de la imagen</strong>';
    var alto = 275;
    if($('.edicionGaleria').length>0){
        if ($('.edicionGaleria input:file').length>0){
            $('.edicionGaleria input:file').parent().height("24")
            alto=325;
            titulo='<strong>Nueva imagen</strong>';
        };
        
        $('body').append('<div id="bgTrabajando"></div>');
        $('body').append('<div id="trabajando"></div>');
        $('#bgTrabajando').hide();
        $('#trabajando').hide();
        $('#trabajando').css({backgroundImage:'url(modulos/Galeria/Img/trabajando.gif)',backgroundRepeat:'no-repeat'});
        $('.edicionGaleria input.bto:first').bind('click',function(){
            $('#bgTrabajando').css({position:'absolute',top:$(document).scrollTop(),left:$(document).scrollLeft(),height:$('body').height(),width:$('body').width()+22,backgroundColor:'#000'}).show().fadeTo('fast',0.65);
            $('#trabajando').css({position:'absolute',width:'220',height:'19',top:$(document).scrollTop()+($('body').height()/2)-10,left:$(document).scrollLeft()+($('body').width()/2)-110}).show();
            $('body').css('overflow','hidden');
        })
    }
    $.nyroModalSettings({
	    processHandler: function(settings) {
		    miScroll=$(document).scrollTop();
		    $(document).scrollTop(0);
            $('body').css('overflow','hidden');
		    $.nyroModalSettings({
		        type: 'manual',
		        minWidth: 100,
		        minHeight: 100
		    });
		    urlArchivoActual = settings.url;
		    $.ajax({
			    url: settings.url,
			    success: function(data){
					    $.nyroModalSettings({
						    content: data
					    });				
				    },
			    async:false
		    });
	    },
	    endShowContent: function(){
	        $('embed').hide();
	        $('#nyroModalWrapper embed').show();
	    },
	    endFillContent: function(elts,settings){		    
		    //obtengo el archivo actual de la lista de archivos
	        if ($('a.nyroModalPrev').length==1){
	            $('div#nyroModalWrapper').append('<img id="prevExterior" src="js/img/prev.gif">');
	            $('#prevExterior').click(function(){
	                $('a.nyroModalPrev').trigger('click');
	            });
	        };
	        if ($('a.nyroModalNext').length==1){
	            $('div#nyroModalWrapper').append('<img id="nextExterior" src="js/img/next.gif">');
	            $('#nextExterior').click(function(){
	                $('a.nyroModalNext').trigger('click');
	            });
	        };
	        //calculo el archivo actual
	        archivoActual=$('#'+idContenedor+' a').index($('a[href="'+urlArchivoActual+'"]'));
	        if (descripciones[archivoActual]!=''){
                $('div#nyroModalWrapper').append('<div id="nyroDescripcion">'+descripciones[archivoActual]+'</div>');	        
	        }
            $('div#nyroModalWrapper').append('<div id="nyroArchivoActual">'+(archivoActual+1)+' / '+totalArchivos+'</div>');
	    },
      endRemove: function(){
        $('embed').show();
        $(document).scrollTop(miScroll);
        $('body').css('overflow','scroll');
      }
    });
});

function preloadImg(image) {
	var img = new Image();
	img.src = image;
}

preloadImg('img/ajaxLoader.gif');
preloadImg('img/prev.gif');
preloadImg('img/next.gif');


function getHTTPObject(){
  var obj;
  if(window.XMLHttpRequest) { // no es IE
    obj = new XMLHttpRequest();
  } else { // Es IE o no tiene el objeto
     try {
       obj = new ActiveXObject("Microsoft.XMLHTTP");
    }  catch (e) {
      //alert('El navegador no soporta AJAX');
    }
  }
  return obj;
} 

function cargarGaleria(host,contenedor,lenguaje,galeria) {
    if (oXML) {
       idContenedor=contenedor;
       idLenguaje=lenguaje;
       idHost="http://" + host.replace(':80','');
       oXML.open("GET",idHost + "/Modulos/Galeria/Xml.aspx?lng="+lenguaje+"&gal="+galeria, false);
       oXML.send(null);
       pintarGaleria();
       //cuando hagan click en una foto calculo el indice que le corresponde en la colección.
       $('#'+contenedor).children('a').click(function(){archivoActual=$('#'+contenedor+' a').index($('#'+this.id));})
    }
}

$(document).ready(function(){
       var arrUrl = document.URL.split("#");
       if ($('a#arch'+arrUrl[1]).length>0){
            $('a#arch'+arrUrl[1]).trigger('click');
       }
});

function pintarGaleria() {
    var xml;
    var miDiv;
    var nombre;
    var descripcion;
    var propietario;
    var item;
    var cod;
    var imagen;
    var html;
    
    if (oXML.readyState == 4) {
       if (oXML.status == 200) {
            // Accedemos al XML recibido
            xml = oXML.responseXML.documentElement;
            // Accedemos al DIV
            miDiv =document.getElementById(idContenedor)
            // Vaciamos el DIV
            miDiv.innerHTML = '';
            // Recorro todos los archivos de la galeria
            for (i = 0; i < xml.getElementsByTagName('item').length; i++){
                // Accedemos al objeto XML usuario
                item = xml.getElementsByTagName('item')[i];                       
                cod = item.getElementsByTagName('cod')[0].firstChild.data;
                nombre = '';
                alt='';    
                if(item.getElementsByTagName('nombre')[0].firstChild) {
                    nombre = item.getElementsByTagName('nombre')[0].firstChild.data;
                    }
                if (item.getElementsByTagName('descrip')[0].firstChild){
                    descripciones[i]= item.getElementsByTagName('descrip')[0].firstChild.data;
                }else{
                    descripciones[i] = '';
                }        
                propietario = '';
                if (item.getElementsByTagName('usuario')[0].firstChild)
                    if(item.getElementsByTagName('usuario')[0].firstChild.data!=' ')
                        propietario = '<strong>[' + item.getElementsByTagName('usuario')[0].firstChild.data + ']</strong> ';
                html = "<a id=\"arch" + cod + "\" href=\"" + idHost + "/modulos/galeria/archivo.aspx?lng="+idLenguaje+"&cod=" + cod + "&width="+($(window).width()-100)+"&height="+($(window).height()-100)+"\" class=\"nyroModal\" rel=\"galeria\" title=\""+propietario+nombre+"\"></a>";
                miDiv.innerHTML +=html;
            }
            //obtengo el total de archivos
            totalArchivos = $('#'+idContenedor+' a').length;
       }
    }
}

$(window).bind('resize', function() {
    jQuery.each($('#'+idContenedor+' a'), function(){
        $(this).attr('href',$(this).attr('href').substring(0,$(this).attr('href').indexOf('&width='))+'&width='+($(window).width()-100)+"&height="+($(window).height()-100));
    });
    $('#'+idContenedor+' a').attr('width',($(window).width()-100));
    $('#'+idContenedor+' a').attr('height',($(window).height()-100));
});
