// Dependências: Nipotech_Event_Handler, find_pos.js, window_size.js

Jumboshop_thumbs_loaded = false;

function Jumboshop_load_thumbs()
{
    var has_thumbs = false;
    var divThumbPlus;

    for (var i in document.images)
    {
        if (
            document.images[i].src
            && document.images[i].src.substring(0, 45) == "http://www.pinezi.com/data/arquivos/produtos/"
            && /\/([0-9]+)_([pm])(\.[^\.]+)$/.test(document.images[i].src)
        )
        {
            if (Jumboshop_thumbs_loaded)
                divThumbPlus = document.getElementById("JS-thumb-" + RegExp.$1 + RegExp.$2);
            else
                divThumbPlus = document.createElement("img");

            divThumbPlus.style.left = findPosX(document.images[i]) + "px";
            divThumbPlus.style.top = findPosY(document.images[i]) + "px";

            // se os thumbs já foram carregados anteriormente, apenas
            // reposiciona as imagens de ampliação (acima)
            if (Jumboshop_thumbs_loaded)
                continue;

            divThumbPlus.src = "http://www.pinezi.com/images/zoom_img.gif";
            divThumbPlus.id = "JS-thumb-" + RegExp.$1 + RegExp.$2;
            divThumbPlus.style.position = "absolute";
            divThumbPlus.style.backgroundColor = "#FFF";
            divThumbPlus.style.zIndex = "1";
            divThumbPlus.style.cursor = "pointer";

            divThumbPlus.__jumboshop_img_elm = document.images[i];
            divThumbPlus.__jumboshop_img_id = RegExp.$1;
            divThumbPlus.__jumboshop_img_size = RegExp.$2;
            divThumbPlus.__jumboshop_img_ext = RegExp.$3;

            divThumbPlus.onclick = function(e){
                var width = 640;
                var height = 480;
                var x = parseInt((window.screen.width - width) / 2);
                var y = parseInt((window.screen.height - height) / 2);
                window.open(
                    "http://www.pinezi.com/show_img.php?url=http%3A%2F%2Fwww.pinezi.com%2Fdata%2Farquivos%2Fprodutos%2F" + this.__jumboshop_img_id + "_g" + this.__jumboshop_img_ext,
                    "zoomImgProduto", "toolbar=no,menubar=no,personalbar=no,width=" + width
                    + ",height="+height+",left="+x+",top="+y+",scrollbars=no,resizable=yes"
                );
            };

            divThumbPlus.onmouseover = function(e) {
                var targ;
                if (!e) var e = window.event;

                if (e.target) targ = e.target;
                else if (e.srcElement) targ = e.srcElement;

                if (targ.id != this.id)
                    return;

                var eImg = this.__jumboshop_img_elm;
                var id_img = this.__jumboshop_img_id;
                var thumb_size = this.__jumboshop_img_size;

                var zi = document.getElementById("JS-zoom-img");

                zi.onload = function()
                {
                    var imgX_1 = findPosX(eImg) + 10;
                    var imgX_2 = findPosX(eImg) - this.width - 10;

                    if (imgX_1 + this.width <= windowWidth() + NT_GetScrollX())
                        this.style.left = imgX_1 + "px";
                    else if (imgX_2 >= 0 + NT_GetScrollX())
                        this.style.left = imgX_2 + "px";
                    else
                        this.style.left = NT_GetScrollX() + "px";

                    var imgY_1 = findPosY(eImg) + 10;
                    var imgY_2 = findPosY(eImg) - this.height - 10;

                    if (imgY_1 + this.height <= windowHeight() + NT_GetScrollY())
                        this.style.top = imgY_1 + "px";
                    else if (imgY_2 >= 0 + NT_GetScrollY())
                        this.style.top = imgY_2 + "px";
                    else
                        this.style.top = NT_GetScrollY() + "px";

                    this.style.display = "inline";
                }

                zi.onload(); // para mostar a imagem carregando
                zi.__jumboshop_id_img = id_img;
                zi.__jumboshop_thumb_size = thumb_size;
                zi.src = "http://www.pinezi.com/data/arquivos/produtos/" + id_img + "_" + (thumb_size == "p" ? "m" : "g") + this.__jumboshop_img_ext;
            };

            divThumbPlus.onmouseout = function(e) {
                if (!e) var e = window.event;

                var relElm = e.toElement || e.relatedTarget;

                if (relElm && relElm.id != "JS-zoom-img")
                {
                    var zi = document.getElementById("JS-zoom-img");
                    zi.style.display = "none";
                    zi.src = zi.__jumboshop_default_src;
                }
            };

            document.body.appendChild(divThumbPlus);

            has_thumbs = true;
        }
    }

    if (has_thumbs)
    {
        var zoomImg = document.createElement("img");
        zoomImg.id = "JS-zoom-img";
        zoomImg.style.zIndex = "2";
        zoomImg.style.cursor = "pointer";
        zoomImg.style.display = "none";
        zoomImg.style.position = "absolute";
        zoomImg.style.border = "3px solid #666";
        zoomImg.style.backgroundImage = "url(http://www.pinezi.com/images/loading.gif)";
        zoomImg.style.backgroundRepeat = "no-repeat";
        zoomImg.__jumboshop_default_src = "";
        zoomImg.src = zoomImg.__jumboshop_default_src;
        zoomImg.onmouseout = function() {
            var eimg = document.getElementById("JS-zoom-img");
            eimg.style.display = "none";
            eimg.src = eimg.__jumboshop_default_src;
        };
        <!-- Abre imagem em nova janela -->
        /*zoomImg.onclick = function(e) {
            var zi = document.getElementById("JS-zoom-img");
            document.getElementById("JS-thumb-" + zi.__jumboshop_id_img + zi.__jumboshop_thumb_size).onclick(e);
        }*/
        document.body.appendChild(zoomImg);
    }

    Jumboshop_thumbs_loaded = true;
}

Nipotech_Event_Handler.addFunction(function(){setTimeout(Jumboshop_load_thumbs,500);}, window, "onload");
Nipotech_Event_Handler.addFunction(Jumboshop_load_thumbs, window, "onresize");


