// JavaScript Document
function initGallery(bolShowLightBox){
	if (bolShowLightBox==null) bolShowLightBox=false;
	//$('mainModal').setStyles({display:"none"});
	/*
	$$('.galleryElementMain').each(function(element){
		element.addEvent('mouseenter',function(event){
			
			var effect2 = new Fx.Tween(element.getElement('img'), {duration:550, link:'chain'});
			var effect = new Fx.Tween(element.getElement('img'), {duration:65, link:'chain', onComplete:function(){effect2.start('opacity',1);} });
			
			effect.start('opacity',0.2);
			
		});
		
	});
	*/
	$$('.galleryText a').each(function(element){
		element.addEvent('mouseover',function(event){
			event.stop();
		});
		
	});
	
	if (!bolShowLightBox){
		$$('.galleryElement').each(function(element){
			element.addEvent('click', function(event){
				var url = element.getElement('a').get('href');
				window.location=url;
			});
		});
	}
	
	if (bolShowLightBox){
		$$('.galleryImage').each(function(element){
			element.getParent().addEvent('click', function(event){
	
				// detect ie7 on windows Vista for ie7 BUG: opacity on layers taller than 4096px !!!!!!
				var height;
				var agent = navigator.userAgent;
				if (agent.indexOf("MSIE 7.") > -1 && agent.indexOf("Windows NT 6.") ){
					height = 4096;
				}
				else {
					height = parseInt( $('docBody').getScrollSize().y )
				}
				
				//$('mainModal').setStyles({height:$('docBody').getScrollSize().y+"px", display: "block"});			
				$('mainModal').setStyles({height: height, opacity:0, display:"block"});
				
				var productZoom = $('productZoom');
				var screenHeight = $('docBody').getSize().y;
				var scroll = $('docBody').getScroll().y;
				var newPosition = scroll + (screenHeight / 2) - 299;
				productZoom.setStyles({top: newPosition, opacity:0, display:"block"});
				
				var productZoomFX = new Fx.Morph($('productZoom'), {duration:300});
				var mainModalFX = new Fx.Morph($('mainModal'), {duration:300});
				productZoomFX.start({'opacity': [0, 1]});
				mainModalFX.start({'opacity': [0, 0.7]});
				
				var src = element.getElement('img').get('src');
				var arr = src.split("/");
				var img = arr[arr.length-1];
				var largeSrc = "";
				for(var i=0; i<arr.length-1; i++){
					largeSrc += arr[i]+"/";
				}
				largeSrc += "large/"+img;
				
				var imgElement = new Element('img', {
					src: largeSrc
				});
				var productZoomImage = $('productZoomImage');
				productZoomImage.set('html', "");
				imgElement.inject(productZoomImage);
				
			});
		});
	}
	
	$('mainModal').addEvent('click', function(event){
		closeProductZoom();
	});
	
	$('btnClose').addEvent('click', function(event){
		closeProductZoom();
	});
	
}

function closeProductZoom(){
	var productZoomFX = new Fx.Morph($('productZoom'), {duration:300, onComplete:function(){
		$('productZoom').setStyles({display:"none"});
		$('mainModal').setStyles({display:"none"});
	} });
	
	var mainModalFX = new Fx.Morph($('mainModal'), {duration:300});
	
	productZoomFX.start({'opacity': 0});
	mainModalFX.start({'opacity': 0});
}
