﻿var zoomPanelId = 'pd_zoom';
var infoPanelId = 'idcont';
var pzoombuttID ='pzoombutts';
var zoomPanelClientID = 'flashzoom';
var swfObjectUrl;
var isZoomOpen = false;

Event.observe(window,'load',LoadZoomOnPageLoad,false);

function recurseFindControl(oelm,srchid){
    var i;
    var obj;
    for(i=0;i<oelm.childNodes.length-1;i++){        
        if (oelm.childNodes[i].id==srchid) {            
            obj =oelm.childNodes[i];
            return obj;
        }else{
            obj = recurseFindControl(oelm.childNodes[i],srchid);        
        }        
    }    
    return obj;
}
var oldtitle = document.title;
function launchZoom(){
    try{
        var zoomPanel = MM_findObj(zoomPanelId);
        var infoPanel = MM_findObj(infoPanelId); 
        var controlPanel = MM_findObj(pzoombuttID);              
        if ((zoomPanel) && (infoPanel)) { 
            var so = new SWFObject(swfObjectUrl, zoomPanelClientID, "633","459","8","#FAFBFC");
		    so.addParam("scale", "noscale");
		    so.addParam("wmode", "transparent");
		    so.setAttribute("style", "float:left; display:inline;");
		    so.write("flashzoom");		    		                
            /** Zoom title ie7/8 fix, set attribute doesn't work for some reason **/
            embedobj = recurseFindControl(zoomPanel,"flashzoom");
            if(embedobj){                       
               embedobj.innerHTML = embedobj.innerHTML.replace("style","onfocus='document.title=oldtitle;' style")
            }
		    if (!(isZoomOpen)) {
		    	isZoomOpen = true;
		        toggleeffect(pzoombuttID, 'slide', 5);
		        Effect.Fade(infoPanel,{duration: 0.5, afterFinish: function(){                     
                    Effect.Appear(zoomPanel,{duration: 0.5,from:0.0,to:1.001});
                }});  		
		        document.location.hash ="#zoom";                		                
            }
        }
    }catch(e){   
       alert(e.message);
    }
    return false;
}
function closeZoom(){
    var zoomPanel = MM_findObj(zoomPanelId);
    var infoPanel = MM_findObj(infoPanelId);    
    if ((zoomPanel) && (infoPanel)) {
        isZoomOpen = false; 
        Effect.Fade(zoomPanel,{duration: 0.5, afterFinish: function(){                       
            Effect.Appear(infoPanel,{duration: 0.5});
            toggleeffect(pzoombuttID, 'slide', 5); 
        }});
    }
    document.location.hash ="productdetails";
}


function LoadZoomOnPageLoad() {
    if ((document.location.hash =='#zoom') || (document.location.hash =='zoom')) {
        launchZoom();
    }
}

