
var thumbnailsArr = new Array();

$.pictureGallery = {
    thumbnail: function(m) {
        if (!m) {
            return null;
        } else if (m.idImg == null && m.img == null && m.titImg == null) {
            return $.pictureGallery.thumbnail($.pictureGallery.readFromThumbnail(m));
        } else {
            thumbnailsArr.push(m);
            return m;
        }
    },
    readFromThumbnail: function(elem) {
        var idImagen = $(".idFoto", elem)[0];
        var titImagen = $(".tituloFoto", elem)[0];
        var imagen = $(".foto", elem)[0];
        var numeroImagen = $(".contadorFoto", elem)[0];

        if (idImagen && titImagen && imagen && numeroImagen) {
            return { idImg:$(idImagen).attr("title"), titImg:$(titImagen).attr("title"), img:$(imagen).attr("title"), numImg:$(numeroImagen).attr("title") };
        } else {
            return null;
        }
    }
};

$.fn.pictureGallery = function (options) {
    if (!options || typeof options != 'object')	options = {};
	options.thumbnails = options.thumbnails || [];

    return this.each(function() {
        var i = 0;
        for (i; i < options.thumbnails.length; i++) {
            $.pictureGallery.thumbnail(options.thumbnails[i]);
        }
    });
};

function cambiarImagen(thumbnailInfo) {
    var picture = $.pictureGallery.readFromThumbnail(thumbnailInfo);
    cambiarThumbnail($(".imagen"+picture.idImg));
    cambiarPrincipal(picture);
}


function cambiarThumbnail(elem) {
    $(".fotoActual").addClass("thumbImg");
    $(".fotoActual").removeClass("fotoActual");
    elem.addClass("fotoActual");
    elem.removeClass("thumbImg");
}

function cambiarPrincipal(elem) {

	if (elem.titImg != '') {
        $("#fotoDesc").html(elem.titImg);
    }
    else {
        $("#fotoDesc").html("");
    }

    $("#imgFoto").attr("src", elem.img);
    changeImgTotal(elem)
    cambiarIndiceImg(elem);
}

function cambiarIndiceImg(elem){
    $("#fotoCount").html(elem.numImg);
    $(".imgCont").val(elem.numImg);
}

function anteriorImg(elemName) {

    var id = new Number($(elemName).val()) - 1;
    if (id > 0) {
        prevNextImg(id, elemName);
    }
    else {
        id = thumbnailsArr.length - 1;
        prevNextImg(id, elemName);
    }
}

function siguienteImg(elemName) {

    var id = new Number($(elemName).val()) + 1;

    if (id < thumbnailsArr.length) {
        prevNextImg(id, elemName);
    }
    else {
        id = 1;
        prevNextImg(id, elemName);
    }
}

function prevNextImg(id, elemName) {
    var idPos = id - 1;
    picture = thumbnailsArr[idPos];

    cambiarThumbnail($(".imagen"+picture.idImg));
    cambiarPrincipal(picture);
    $(elemName).val(id);
}

function changeImgTotal(elem) {

    if (elem.titImg != '') {
        $("#fotoCant").html("/" + $(".imgCant").val() + ":");
    }
    else {
       $("#fotoCant").html("/" + $(".imgCant").val());
    }
}

