var enableWide = true;

var imgLeft = 0;
var imgTop = 0;
var loaded = false;
var opacity = 0;

var i = 0;
var imgObj;
var tmpImgObj;
imgs = new Array();

var bigImageObj;
var scrollY;
var ext; var extIndex;
var myWidth = 0, myHeight = 0; 

var bImgWidth;
var bImgHeight;

/*Browser initialization*/
var isOpera=self.opera
var ie=document.all&&document.getElementById&&!isOpera
var ns6=document.getElementById&&!document.all


/*Event initialization*/
function initGallery_popup(){
   
  
   if (!parent.document.getElementById('templateframe')){
    	if(ie||isOpera){
    		document.attachEvent("onmouseover",ieEvent);
    		document.onclick=ieEvent;
           
    	}else{
    		document.addEventListener("mouseover", imgOver, true)
    		document.addEventListener("click", imgClick, true)
    	}
    }
}

/*IE event initialization*/
function ieEvent(){
    if(event.type == 'click' && enableWide)
	imgClick(event);	

	if(event.type == 'mouseover' && enableWide)
	imgOver(event);	

}

function imgClick(pEv){
    initScreen();
      
   if(enableWide){ 
        if(pEv.srcElement) 
            lEl=pEv.srcElement;
    	else 
    	    lEl=pEv.target;
    	    
        if(lEl && lEl.tagName) {	    
        	if(lEl.tagName == "IMG" && lEl.src.indexOf("ourGallery") > 0 && document.getElementById("innerWideDiv").style.display == 'none'){
        	    tmpImgObj = lEl;
        	    openWide(lEl);
        	}
        }
        
        if(lEl && lEl.tagName) {	    
        	if((lEl.tagName == "DIV" || lEl.tagName == "IMG") &&
        	     (lEl.id == "closeImg" || lEl.id == "wideDiv" || lEl.id == "innerWideDiv" || lEl.id == "wideImg")){
        	    if(loaded) {
        	       closeWide();
        	       loaded = false;
        	    }
        	}
        }   
    } 
}

function setBImgSize(h,w) {
	bImgHeight=h;
	bImgWidth=w;
}

function imgOver(pEv){
	
    if(pEv.srcElement) 
        lEl=pEv.srcElement;
	else 
	    lEl=pEv.target;
	 
	if(lEl && lEl.tagName) {	    
    	if(lEl.tagName == "IMG" && lEl.src.indexOf("ourGallery") > 0 && document.getElementById("innerWideDiv").style.display == 'none'){
    	    if(ie) lEl.style.cursor = 'hand';
    	    if(ns6 || isOpera) lEl.style.cursor = 'pointer';
    	    imgObj = lEl;
        	extIndex = imgObj.src.lastIndexOf(".");
        	ext = imgObj.src.substr(extIndex);
    	}
    }
}


function initScreen(){

    if( typeof( window.innerWidth ) == 'number' ){
         //Non-IE 
         myWidth = parent.window.innerWidth; 
         myHeight = parent.window.innerHeight; 
    } else if( parent.document.documentElement && 
             ( parent.document.documentElement.clientWidth || 
               parent.document.documentElement.clientHeight ) ) {
                //IE 6+ in 'standards compliant mode' 
                
                myWidth = parent.document.documentElement.clientWidth; 
                myHeight = parent.document.documentElement.clientHeight;
    } else if( parent.document.body && 
             ( parent.document.body.clientWidth || 
               parent.document.body.clientHeight ) ) {
               
                //IE 4 compatible 
                myWidth = parent.document.body.clientWidth; 
                myHeight = parent.document.body.clientHeight; 
    } 
} 



//
//
//
//
//  bigImg functions
//
//
//

function cashBigImg(){
    
    bigImageObj = new Image();
    
    bigImageObj.src = tmpImgObj.src.substr(0, extIndex) + "_big" + ext;
    bigImageObj.width = bImgWidth;
    bigImageObj.height = bImgHeight;

    document.getElementById("wideImg").src = bigImageObj.src;
	document.getElementById("wideImg").style.width = bigImageObj.width;
	document.getElementById("wideImg").style.height = bigImageObj.height;
    
    detectImgParam();
}

function detectImgParam(){

    imgTop = myHeight/2 - bigImageObj.height/2;
    imgLeft = myWidth/2 - bigImageObj.width/2;
	
	setTimeout("showWideBlock()", 1000);

}




function openWide(pElem) {
	
    detectScroll();
	divElem = document.getElementById('wideDiv');
	divElem.style.height = "0px";
	divElem.style.width = "0px";
	divElem.style.display = 'block';
		    
	doWide();
	setTimeout("showLoading()", 500);
	cashBigImg();

}

function showWideBlock(){
   hideLoading();
   document.getElementById("innerWideDiv").style.display = 'block'; 
   loaded = true;	   
}

function doWide(){
        	
	divElem = document.getElementById("wideDiv");
	documentHeight = document.documentElement.clientHeight; // FF, Safari
    if(documentHeight < document.body.scrollHeight) // Opera, IE
        documentHeight = document.body.scrollHeight

    documentWidth = document.documentElement.clientWidth;
    if(documentWidth < document.body.clientWidth) // Opera, IE
        documentWidth = document.body.clientWidth 
                            
	if(i <= documentHeight ){
		
		divElem.style.height = i;
		divElem.style.width = documentWidth;
		i += 150;
		setTimeout("doWide()", 1);
		
	}else{
		divElem.style.height = documentHeight;	        
		if(ie){
			var oAlpha = divElem.filters['DXImageTransform.Microsoft.alpha'] || divElem.filters.alpha;
			oAlpha.opacity = 80;
		}else{
			divElem.style.opacity = 0.80;
		}
   		
   		
   		document.getElementById("innerWideDiv").style.left = imgLeft;
    	document.getElementById("innerWideDiv").style.top = imgTop+scrollY;
	}
}

function closeWide() {
	
	if(ie){
		divElem = document.getElementById("wideDiv");
		var oAlpha = divElem.filters['DXImageTransform.Microsoft.alpha'] || divElem.filters.alpha;
		oAlpha.opacity = 100;
	}else{
		document.getElementById("wideDiv").style.opacity = 1;
	}	
		
	i=0;
	document.getElementById("innerWideDiv").style.display = 'none';
	document.getElementById("wideDiv").style.display = 'none';

    document.getElementById("wideImg").src = "img_0/1px.gif";
	document.getElementById("wideImg").style.width = 1;
	document.getElementById("wideImg").style.height = 1;    
   
}

function detectScroll(){
    if(ns6){
        scrollY = window.pageYOffset;
    }else{
        scrollY = document.body.scrollTop;    
    }
}

function showLoading() {
	var processLoadingObj = document.getElementById('loadProcessBlock');

       
	processLoadingObj.style.top = myHeight/2 + scrollY-100;
	processLoadingObj.style.left = myWidth/2-100;
	processLoadingObj.style.display = 'block';

}


function hideLoading() {
	var processLoadingObj = document.getElementById('loadProcessBlock');
	processLoadingObj.style.display = 'none';
}


window.onresize = function (){
    if(document.getElementById('wideDiv') && document.getElementById('wideDiv').style.display == 'block'){
        closeWide();
        initScreen();
        openWide();
    }
}
window.onload = initGallery_popup;