var opacity;
var obj_op;
var change_code;
var step = 10;
var speed = 30;

function changeTo( id, gallery ) {
    x = document.getElementById(id);

    opacity = 50;
    obj_op = x;
	obj_op.style.opacity = opacity/100;
	obj_op.style.filter = 'alpha(opacity=' + opacity + ')';

	try{
	      clearInterval( eval('timer_'+gallery+'_hide') );
	}catch(e){	}
	try{
	      clearInterval( eval('timer_'+gallery+'_show') );
	}catch(e){	}

    eval( 'timer_'+gallery+'_hide = setInterval("hide('+gallery+');", speed)' );
}

function hide( gallery ) {
	obj_op.style.opacity = opacity/100;
	obj_op.style.filter = 'alpha(opacity=' + opacity + ')';
    opacity -= step;
    if ( opacity <= 0 ) {
        clearInterval( eval('timer_'+gallery+'_hide') );
        obj_op.innerHTML = change_code;
		obj_op.style.opacity = 0.5;
		obj_op.style.filter = 'alpha(opacity=50)';
		eval( 'timer_'+gallery+'_show = setInterval("show('+gallery+');", speed)' );
    }
}

function show( gallery ) {
	obj_op.style.opacity = opacity/100;
	obj_op.style.filter = 'alpha(opacity=' + opacity + ')';
    opacity += step;
    if ( opacity >= 100 ) {
        clearInterval( eval('timer_'+gallery+'_show') );
		obj_op.style.opacity = 1;
		obj_op.style.filter = 'alpha(opacity=100)';
    }
}

function showGalleryPic( act_pic, gallery, noFade ) {

	showFullPic(act_pic, gallery);

}

function showFullWebstorePic( pic_src ) {
	
	document.getElementById('GalleryFullPic').style.display = 'block';
	document.getElementById('GalleryPicLayer').style.display = 'block';
	document.getElementById('GalleryPicLayer').innerHTML = '<img src="'+pic_src+'" id="GalleryTheFullPic"/>';
	
	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			winW = window.innerWidth;
			winH = window.innerHeight;
			_offsetY = window.pageYOffset;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			winW = document.body.offsetWidth;
			winH = document.documentElement.clientHeight;
			winH = document.body.offsetHeight;
			_offsetY = document.documentElement.scrollTop;
		}
	}
	
	set_height = Math.max( document.getElementById('main').offsetHeight +150, winH );
	document.getElementById('GalleryFullPic').style.height = set_height+'px';

	layer = document.getElementById('GalleryPicLayer');
	image = document.getElementById('GalleryTheFullPic');
	
	vInterval = setInterval(function()
			{
				if(image.width > 0){
					image.style.maxWidth = (winW - 160) + "px"; 
					image.style.maxHeight = (winH - 100) + "px"; 
					layer.style.left = ( (winW/2) - Math.max( (image.width/2), 0 ) )+'px';
					clearInterval(vInterval);
				}
			},1);
			
	layer.style.top = "150px";
	
}

function showFullPic( pic_id, gallery ) {
	try {
		document.getElementById('GalleryFullPic').style.display = 'block';
		document.getElementById('GalleryPicLayer').style.display = 'block';
	} catch(e) {
		body_obj = document.getElementById('body');
		body_obj.innerHTML = '<div id="GalleryFullPic"><div id="GalleryLayer" onClick="hideFullPic()"></div><div id="GalleryPicLayer" onClick="hideFullPic()"></div></div>'+body_obj.innerHTML;
	}
	
	document.getElementById('GalleryPicLayer').innerHTML = '<div class="close" onclick="hideFullPic()">bezárás</div><img src="'+eval('gallery_'+gallery+'_images[pic_id]')+'" id="GalleryTheFullPic"/>';

	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			winW = window.innerWidth;
			winH = window.innerHeight;
			_offsetY = window.pageYOffset;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			winW = document.body.offsetWidth;
			winH = document.documentElement.clientHeight;
			winH = document.body.offsetHeight;
			_offsetY = document.documentElement.scrollTop;
		}
	}
	
	set_height = Math.max( document.getElementById('main').offsetHeight +100, winH );
	document.getElementById('GalleryFullPic').style.height = set_height+'px';

	layer = document.getElementById('GalleryPicLayer');
	image = document.getElementById('GalleryTheFullPic');
	
	vInterval = setInterval(function()
			{
				if(image.width > 0){
					image.style.maxWidth = (winW - 160) + "px"; 
					image.style.maxHeight = (winH - 100) + "px"; 
					layer.style.left = ( (winW/2) - Math.max( (image.width/2), 0 ) )+'px';
					clearInterval(vInterval);
				}
			},1);
			
	layer.style.top = "50px"; //( (winH/2) - Math.max( (image.height/2), 100 ) + _offsetY )+'px';

//	layer.style.top = '100px';

}

function SetFullImagePos(){
	layer = document.getElementById('GalleryPicLayer');
	image = document.getElementById('GalleryTheFullPic');
	layer.style.left = ( (winW/2) - Math.max( (image.offsetWidth/2), 100 ) )+'px';
	layer.style.top = ( (winH/2) - Math.max( (image.offsetHeight/2), 100 ) + _offsetY )+'px';
}

function hideFullPic() {
	document.getElementById('GalleryFullPic').style.display = 'none';
	document.getElementById('GalleryPicLayer').style.display = 'none';
}

var timer = null;
var scroll_time = 20;

function gallery_prew() {
	
	if ( top < 0 ) {
	
		top += div_height;
		$('gallery_thumb_pics_2').style.top = top+'px';
		$('gallery_scrolldiv_2').style.top = -1*top*scrollHanyados+'px';

		if ( timer ) clearTimeout(timer);
		timer = setTimeout( 'gallery_prew()', scroll_time );
		csuszka();
	}
}

function gallery_next() {
	top -= div_height;
	
	galleryHeight = $('gallery_thumb_pics_2').offsetHeight;
	
	if ( top > -1*(galleryHeight-(295-div_height)) ) {
		$('gallery_thumb_pics_2').style.top = top+'px';
		if ( timer ) clearTimeout(timer);
		timer = setTimeout( 'gallery_next()', scroll_time );

		$('gallery_scrolldiv_2').style.top = -1*top*scrollHanyados+'px';
	} else {
		top += div_height;
	}
	csuszka();

}

function csuszka() {
	layerH = $('gallery_bottom_2').offsetHeight;
	contentH = $('gallery_thumb_pics_2').offsetHeight;

	if ( contentH <= layerH ) {
		scrollDivH = '100%';
	} else {
		scrollDivH = ((layerH/contentH)*100) + '%';
	}
	$('gallery_scrolldiv_2').style.height = scrollDivH;
	scrollMove = $('gallery_scrollbar_2').offsetHeight-$('gallery_scrolldiv_2').offsetHeight;
	//alert(scrollMove);
	scrollHanyados = $('gallery_scrollbar_2').offsetHeight/contentH;
}

function grabScroll() {
	grabX = tempX;
	grabY = tempY;
	grabedScroll = true;
}

function dropScroll() {
	grabX = -1;
	grabY = -1;
	grabedScroll = false;
}

var grabX = grabY = -1;
var grabedScroll = false;

var galleryHeight = 0;
var act_img = 1;
var top = 0;
var count = 9;
var count_step = 12;
var div_height = 2;	//32
var scrollMove = 0;
var scrollTop = 0;
var scrollHanyados = 0;

function complateGallery() {
	new Ajax.Request( '?l1=gallery&l2=plug_gallery&l3=main&dir='+gallery+'&start='+count+'&limit='+count_step, {
			method: 'get',
			onSuccess: function(resp) {
				if ( resp.responseText.length > 1 ) {
					div = document.createElement('DIV');
					div.innerHTML = resp.responseText;
					$('gallery_thumb_pics_2').appendChild(div);
					count += count_step;
					count_step += count_step;
					complateGallery();
				}
				galleryHeight = $('gallery_thumb_pics_2').offsetHeight;
				$('gallery_scrolldiv_2').style.top = -1*top*scrollHanyados+'px';
			}
		}
	);
}



function initGallery() {
	//complateGallery();
	if ( gallery_1_pic_count >= 9 ) {
		document.onmousemove = getMouseXY;
	}
	addEvent( $('gallery_scrolldiv_2'), 'mousedown', grabScroll );
	addEvent( $('gallery_scrolldiv_2'), 'mouseup', dropScroll );
	addEvent( $('gallery_scrolldiv_2'), 'mouseout', dropScroll );
	
	layerH = $('gallery_bottom_2').offsetHeight;
	contentH = $('gallery_thumb_pics_2').offsetHeight;

	if ( contentH <= layerH ) {
		scrollDivH = '100%';
	} else {
		scrollDivH = ((layerH/contentH)*100) + '%';
	}
	$('gallery_scrolldiv_2').style.height = scrollDivH;
	scrollHanyados = $('gallery_scrollbar_2').offsetHeight/contentH;
	
}

function addEvent(obj, evType, fn){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, false);
		return true;
	} else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

