﻿
//#region Image resize block
var backgrImgResize = null;
var resizedImage = null;

var oldResize = window.onresize;
var oldScroll = window.onscroll;

document.observe("dom:loaded", PrepareResizeImages);


function PrepareResizeImages()
{

    

    var imgs = $$(".ResizedImage");
    backgrImgResize = document.createElement("div");
    document.body.appendChild(backgrImgResize);

    backgrImgResize.className = "BackgrImgResize";
    backgrImgResize.id = "backgrImgResize";

    Effect.Fade(backgrImgResize.id, { duration: 0.01, from: 0.0, to: 0.01 });



    for (var i = 0; i < imgs.length; i++)
    {
        imgs[i].id = "ResizeImage_" + i.toString();
        imgs[i].onclick = function()
        {
            var bigSrc = this.getAttribute('srcBig');
            var bigImg = document.createElement("img");
            bigImg.id = this.id + "s";



            bigImg.onload = function()
            {
                resizedImage = this;



                backgrImgResize.style.visibility = "visible";

                this.className = "BigImg";
                document.body.appendChild(this);

                OnWindowResize(1);

                Effect.Fade(backgrImgResize.id, { duration: 0.5, from: 0.0, to: 0.6 });

                Effect.Fade(this.id, { duration: 0.01, from: 0.00, to: 0.01 });
                window.setTimeout("ShowResizeImage('" + this.id + "');", 30);
            }
            bigImg.onclick = function()
            {
                Effect.Fade(resizedImage.id, { duration: 0.5, from: 1, to: 0.0 });
                Effect.Fade(backgrImgResize.id, { duration: 0.5, from: 0.6, to: 0.01 });
                window.setTimeout("RemoveResizeImage('" + resizedImage.id + "');", 500);
            }
            backgrImgResize.onclick = bigImg.onclick;

            bigImg.src = bigSrc;

        }
    }
}

function ShowResizeImage(id)
{
    var bigImg = $(id);
    bigImg.style.visibility = "visible";

    Effect.Fade(bigImg.id, { duration: 0.5, from: 0.0, to: 1.0 });
}

function RemoveResizeImage(id)
{
    var bigImg = $(id);
    bigImg.parentNode.removeChild(bigImg);
    backgrImgResize.style.visibility = "hidden";

    backgrImgResize.style.height = "0px";
    backgrImgResize.style.width = "0px";
}

function GetWindowHeight()
{
    var height = 0;

    if (typeof (window.innerWidth) == 'number')
    {
        // FF, Opera
        height = window.innerHeight;
    }
    else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
    {
        // IE 6+ in 'standards compliant mode'
        height = document.documentElement.clientHeight;
    }
    else if (document.body && (document.body.clientWidth || document.body.clientHeight))
    {
        // IE 5-6 quirks
        height = document.body.clientHeight;
    }

    return height;
}

function GetWindowWidth()
{
    var Width = 0;

    if (typeof (window.innerWidth) == 'number')
    {
        // FF, Opera
        Width = window.innerWidth;
    }
    else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
    {
        // IE 6+ in 'standards compliant mode'
        Width = document.documentElement.clientWidth;
    }
    else if (document.body && (document.body.clientWidth || document.body.clientHeight))
    {
        // IE 5-6 quirks
        Width = document.body.clientWidth;
    }

    return Width;
}
function OnWindowResize(a)
{
   
    if (resizedImage != null && backgrImgResize != null)
    {
        
        //backgrImgResize.style.top = document.body.scrollTop+"px";
        //backgrImgResize.style.left = document.body.scrollLeft + "px";
        var h = GetWindowHeight();
        var w = GetWindowWidth();
        if (a == 1)
        {
            var top = (h - resizedImage.clientHeight) / 2 + document.body.scrollTop;
            if(top < 0) top = 0;
            resizedImage.style.top = top + "px";
            var left = (w - resizedImage.clientWidth) / 2 + document.body.scrollLeft;
            if (left < 0) left = 0;
            resizedImage.style.left = left  + "px";
        }

        var db = document.body;
        var dde = document.documentElement;
        var bodyH = Math.max(db.scrollHeight, dde.scrollHeight, db.offsetHeight, dde.offsetHeight, db.clientHeight, dde.clientHeight);
        var bodyW = Math.max(db.clientWidth, dde.clientWidth, db.clientWidth, dde.clientWidth, db.clientWidth, dde.clientWidth);

        h = Math.max(h, bodyH, resizedImage.scrollHeight);
        w = Math.max(w, bodyW);
        backgrImgResize.style.height = h + "px";  
        backgrImgResize.style.width = w + "px";

    }
}

window.onresize = OnWindowResize;
window.onscroll = OnWindowResize;

//#endregion Image resize block

