﻿///////////////////////Product Make Transform Image : Author By Reza Mizbani
var tryShow = new Array();
var loadimage = new Array();
var loaded = false;
var LoadJSProd = true;
var isIE = false;
if(window.navigator.appName == "Microsoft Internet Explorer")
    isIE = true;
function Macke_TransformImage(imgSrc,maxW,maxH,id,fixed,IsShowIframe)
{
    var prop = new Array();
    
    if(imgSrc == "")
        return;

    
    if(document.getElementById(id) != null)
    {
//        var bkimage = document.createElement("img");
//        bkimage.src = imgSrc;
//        bkimage.style.display = "none";
//        document.write(bkimage.outerHTML);
        Show_TransformImage(imgSrc,maxW,maxH,id,fixed,IsShowIframe);    
        return false;
    }
    
    prop["imgSrc"] = imgSrc;
    prop["maxW"] = maxW;
    prop["maxH"] = maxH;
    prop["IsShowIframe"] = IsShowIframe;
    
    
    var loadingDiv = document.createElement("div");

    if(id != undefined && id != "")
        loadingDiv.id = id;
    else
    {
        loadingDiv.id = loadingDiv.uniqueID;
        if(!isIE)
        {
            var dat = new Date();
            loadingDiv.id = "RZ_" + dat.getMinutes() + dat.getSeconds() + dat.getMilliseconds() + dat.getTime();
        }
        var bkimage = document.createElement("img");
        bkimage.src = imgSrc;
        bkimage.type = id;
        bkimage.style.display = "none";

        //document.write("AS");
        if (bkimage.outerHTML)
            document.write(bkimage.outerHTML);
        else
            document.write(document.GetOuterHTML_element(bkimage));
    }
    prop["id"] = loadingDiv.id;
    loadimage[loadimage.length] = prop;    
    loadingDiv.style.width = maxW;
    loadingDiv.style.height = maxH;
    loadingDiv.style.backgroundImage = "url(images/file/loadinfo.gif)";
    loadingDiv.style.backgroundRepeat = "no-repeat";
    loadingDiv.style.backgroundPosition = "center center";
    
    
    if(document.getElementById(id) == null)
    {
        if(!loaded)
            if(isIE)
                document.write(loadingDiv.outerHTML); 
            else
            {
                //loadingDiv.style.background = "red";
                document.write(document.GetOuterHTML_element(loadingDiv));
                //alert(document.GetOuterHTML_element(loadingDiv));
            }
    }
    else
    {
        Show_TransformImage(imgSrc,maxW,maxH,id,fixed,IsShowIframe);
    }
}

function Show_TransformImage(imgSrc,maxW,maxH,id,fixed,IsShowIframe)
{
    //  var image = document.createElement("img");
    //  image.src = imgSrc;
    //  alert(image.outerHTML);
//    var bkimage = document.createElement("img");
//    bkimage.src = imgSrc;
//    bkimage.style.display = "none";
//    
//    if(id==undefined)
//        document.write(bkimage.outerHTML);
    //var img = new Image();
    var img ;
    var size = new Array() ;
    //alert(document.getElementById(id).dsfsd);
    var xmlhttp = null;
  
    if (window.XMLHttpRequest)
    {
        xmlhttp = new XMLHttpRequest();
    }
    else if (window.ActiveXObject)
    {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    //var url = "/kpss/ProdImage.aspx?I="+imgSrc;
    var url = "/ProdImage.aspx?I="+imgSrc;
    function GetSize()
    {
        xmlhttp.open("GET",url,false);
        xmlhttp.send(null);
        result = xmlhttp.responseText;
        size = result.split(';');
    }  
//    alert(size[0]);
//    alert(size[1]);
    img = document.createElement("img");
    img.src = imgSrc;
    
    //alert(img.width);

    if(size[0] == undefined && img.width == 0 || size[0] == undefined && img.width == 28)
    {
        GetSize();
        img.width = size[0];

    }
    if(size[1] == undefined && img.height == 0 || size[1] == undefined && img.height == 30)
    {
        GetSize();
        img.height = size[1];
    }
    
    
    if(size[0] == "-1")
    {
        //document.write("404")
        if(document.getElementById(id).offsetWidth > 35) 
        {
            document.getElementById(id).innerHTML = "404 <br> تصویر یافت نشد";
            document.getElementById(id).style.paddingTop = ((document.getElementById(id).offsetHeight / 2) - 10) + "px" ;
        }
        else
        {
            document.getElementById(id).innerHTML = "404";
            document.getElementById(id).style.paddingTop = ((document.getElementById(id).offsetHeight / 2) - 5) + "px" ;
        }
        //alert(((document.getElementById(id).offsetHeight)));
        document.getElementById(id).style.filter = "";
        document.getElementById(id).style.background = "";
        document.getElementById(id).style.backgroundImage = "";
        setTimeout("imageLoad()", 50);
        
        return false;
    }
    
    if(img.width == 0 && img.height == 0)
    {
       // alert(img.width + "--" + img.height);
       if(tryShow[imgSrc] == undefined)
            tryShow[imgSrc] = 0;
       if(tryShow[imgSrc] < 1)
       {
            //alert(tryShow[imgSrc]);
           tryShow[imgSrc] = tryShow[imgSrc] + 1;
           Show_TransformImage(imgSrc, maxW, maxH)
       }
       else
       {
            //document.write("404")
            if(id != undefined)
            {
            if(document.getElementById(id).offsetWidth > 35) 
            {
                document.getElementById(id).innerHTML = "404 <br> تصویر یافت نشد";
                document.getElementById(id).style.paddingTop = ((document.getElementById(id).offsetHeight / 2) - 10) + "px" ;
            }
            else
            {
                document.getElementById(id).innerHTML = "404";
                document.getElementById(id).style.paddingTop = ((document.getElementById(id).offsetHeight / 2) - 5) + "px" ;
            }
            }
            //alert(((document.getElementById(id).offsetHeight)));
            if(id != undefined)
            {
                document.getElementById(id).style.filter = "";
                document.getElementById(id).style.background = "";
                document.getElementById(id).style.backgroundImage = "";
            }
            setTimeout("imageLoad()",50);
            return false;
       }
    }
    else
    {
        var Resize = false;
        if(img.width > maxW)
        {
            var setH = ((img.height * maxW) / img.width);
            img.width = maxW;
            img.height = Math.round(setH);
            Resize = true;
        }
        if(img.height > maxH)
        {
            var setW = ((img.width * maxH) / img.height);
            img.height = Math.round(maxH);
            img.width = setW;
            Resize = true;
        }
        var div;
        //alert(document.getElementById(id));
        if(id == undefined || document.getElementById(id) == null)
        {
            div = document.createElement("div");
            div.id = id;
        }
        else
        {
            div = document.getElementById(id)  
            div.innerHTML = "";  
            div.style.backgroundImage = "";
        }

        div.style.width = img.width + "px";
        div.style.height = img.height + "px";
        //if(img.width - maxW > 0
        div.style.cursor = "pointer";
        div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + imgSrc + "', sizingMethod='scale')";
        
        if(id == undefined || document.getElementById(id) == undefined)
        {
            if(isIE)
            {
                if(IsShowIframe)
                    return  div.outerHTML;
//                else
//                    document.write(div.outerHTML); 
            }
            else
            {
                var divstr = "";
                img.id = id;
                alert("sa");
                //div.appendChild(img);
                //alert(div.innerHTML);
                //document.write(div.innerHTML);
            }
        }

        
        if(id != undefined && document.getElementById(id) != undefined && !isIE)
        {
            document.getElementById(id).appendChild(img); //img.src;
            //document.getElementById(id) = img;
            
        }
        
    }
    setTimeout("imageLoad()", 500);

}
function error()
{
    errorr
}
var curload = 0;
function imageLoad() {
    var len = loadimage.length;
    loaded = true;
    if(len != 0 && curload < len)
    {
        var prop = loadimage[curload];
        
        var imgSrc = prop["imgSrc"];
        var maxW = prop["maxW"];
        var maxH = prop["maxH"];
        var IsShowIframe = prop["IsShowIframe"];
        var id = prop["id"];
        
        loadimage[curload] = null;
        curload++;
        
        Show_TransformImage(imgSrc,maxW,maxH,id,false,IsShowIframe);
     }   
}
document.GetOuterHTML_element = function(obj)
{   
    var ped = document.createElement("div");
    ped.appendChild(obj);
    return ped.innerHTML;
}
