
function Gallery(newName, newId, newTextImage, newTextNext, newTextPrev)
{
	var name = newName;
	var idd='project';
	if(newId!='') { idd = newId; }
	var images=[];
	var index=1;
	var open=0;
	var speed;
	var offset;
	var opacity;
	var cache=[];
	
	var textImage = 'Zdjęcie';
	if(newTextImage) { textImage = newTextImage; }
	var textNext = 'Następne';
	if(newTextNext) { textNext = newTextNext; }
	var textPrev = 'Poprzednie';
	if(newTextPrev) { textPrev = newTextPrev; }
	
	var ua = navigator.userAgent.toLowerCase();
	isIE = (ua.charAt(ua.indexOf('msie')+5) < 7);
	
	function getThumb(nr)
	{
		if(images[nr][1].length==0) { return '' ;}
		return '<img src="'+images[nr][1][0]+'" alt="" style="width:200px;" />';
	}
	this.getThumb = getThumb;
	
	function next()
	{
		index++;
		document.getElementById('next').style.display='none';
		document.getElementById('prev').style.display='none';
		offset=100;
		animacja=true;
		hideImage()
	}
	this.next = next;
	
	function hideImage()
	{
		offset=Math.max(0, offset-5);
		if(offset>0)
		{
			
			try
			{
				document.getElementById(idd).style.opacity=offset/100;
				document.getElementById(idd).style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(offset)+');';
			} catch (e) {}
			setTimeout(name+'.hideImage()', 20);
		}
		else
		{
			offset=0;
			showNumber();
		}
	}
	this.hideImage = hideImage;
	
	function showImage()
	{
		animacja=true;
		x=12;
		try	{
			if(document.getElementById('submenu-div'))
			{
				x=document.getElementById('submenu-div').offsetHeight;
			}
			document.getElementById('project-container').style.top=(220+x)+'px';
		} catch(e) {}
		
		
		offset=Math.min(100, offset+5);
		var wys = document.getElementById('image').offsetHeight;
		document.getElementById('next').style.paddingTop = Math.max(0,Math.floor((wys-102)/2))+'px';
		document.getElementById('next').style.paddingBottom = Math.max(0,Math.floor((wys-102)/2))+'px';
		document.getElementById('prev').style.paddingTop = Math.max(0,Math.floor((wys-102)/2))+'px';
		document.getElementById('number').style.height = (wys)+'px';
		document.getElementById('prev').style.paddingBottom = Math.max(0,Math.floor((wys-102)/2))+'px';
		try
		{
			document.getElementById(idd).style.opacity=offset/100;
			document.getElementById(idd).style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(offset)+');';
		} catch (e) {}
		if(offset<100)
		{
			setTimeout(name+'.showImage()', 20);
		}
		else
		{
			animacja=false;
		}
	}
	this.showImage = showImage;
	
	function prev()
	{
		index--;
		document.getElementById('next').style.display='none';
		document.getElementById('prev').style.display='none';
		offset=100;
		animacja=true;
		hideImage();
	}
	this.prev = prev;
	
	function add(text, newImages, url)
	{
		images[images.length] = [text, newImages, url];
		for(a=0;a<newImages.length;a++)
		{
			//cache[cache.length] = new Image(10, 10);
			//cache[cache.length-1].src=newImages[a];
		}
	}
	this.add = add;
	
	function show(nr)
	{
		var imagesList='';
		index=1;
		open=nr;
		document.getElementById('bg').style.display='block';
		opacity=0;
		try
		{
			document.getElementById('bg').style.opacity='0';
			document.getElementById(idd).style.opacity='0';
			document.getElementById('bg').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=0);';
			document.getElementById(idd).style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=0);';
		} catch (e) {}
		document.getElementById(idd).style.display='block';
		
		cacheText='';
		
		for(a=0;a<images[open][1].length;a++)
		{
			cacheText+='<img src="'+images[open][1][a]+'" alt="" style="width:0;height:0;overflow:hidden;" />'
		}
		document.getElementById('cache').innerHTML=cacheText;
		showNumber();
		showAnimation();
		animacja=true;
	}
	this.show = show;
	
	function showNumber()
	{
		imagesList='<img src="'+images[open][1][index]+'" alt="" style="width:460px;" onload="gallery.showImage();" />';
		document.getElementById(idd).innerHTML='<div class="list" id="image">'+imagesList+'</div><p onmouseover="showToolTip(\'\', true);moznaNapis=false;" onmouseout="hideToolTip(true);moznaNapis=true;">'+images[open][0]+'</p><span onclick="gallery.prev();this.blur();showToolTip(\'\', true);moznaNapis=true;return false;" id="prev" onmouseover="showToolTip(\''+textPrev+'\', true);this.className=\'hover\';moznaNapis=false;" onmouseout="hideToolTip(true);moznaNapis=true;this.className=\'\'"><img src="/images/prev.'+(isIE?'gif':'png')+'" alt="" /></span><span onclick="gallery.next();this.blur();showToolTip(\'\', true);return false;" id="next" onmouseover="showToolTip(\''+textNext+'\', true);this.className=\'hover\';moznaNapis=false;" onmouseout="hideToolTip(true);moznaNapis=true;this.className=\'\'"><img src="/images/next.'+(isIE?'gif':'png')+'" alt="" /></span><span id="number" onmouseover="showToolTip(\''+textImage+' '+index+' / '+(images[open][1].length-1)+'\', true);moznaNapis=false;" onmouseout="hideToolTip(true);moznaNapis=true;"></span>'
		
		try
		{
			document.getElementById('bg').style.height=document.getElementsByTagName('html')[0].scrollHeight+'px';
		}
		catch(e) {}
		if(images[open][1].length<index+2) { document.getElementById('next').style.display='none'; }
		else { document.getElementById('next').style.display='block'; }
		
		if(index<=1) { document.getElementById('prev').style.display='none'; }
		else { document.getElementById('prev').style.display='block'; }
		
		offset=0;
		showImage();
	}
	
	function showAnimation()
	{
		opacity=Math.min(75, opacity+4);
		if(opacity<75)
		{
			
			try
			{
				document.getElementById('bg').style.opacity=opacity/100;
				document.getElementById('bg').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+opacity+');';
			} catch (e) {}
			setTimeout(name+'.showAnimation()', 20);
		}
		else
		{
			animacja=false;
		}
	}
	this.showAnimation = showAnimation;
	
	function hide()
	{
		opacity=75;
		animacja=true;
		hideAnimation();
	}
	this.hide = hide;	
	
	function hideAnimation()
	{
		
		opacity=Math.max(0, opacity-5);
		if(opacity>0)
		{
			try
			{
				document.getElementById('bg').style.opacity=opacity/100;
				document.getElementById(idd).style.opacity=opacity/70;
				document.getElementById('bg').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+opacity+');';
				document.getElementById(idd).style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(opacity*2)+');';
			} catch (e) {}
			setTimeout(name+'.hideAnimation()', 20);
		}
		else
		{
			document.getElementById('bg').style.display='none';
			document.getElementById(idd).style.display='none';
			animacja=false;
		}
	}
	this.hideAnimation = hideAnimation;
	
	function projectShow()
	{
		var imagesList='';
		index=1;
		open=0;
		showNumber();
	}
	this.projectShow = projectShow;
	
	function slideShow()
	{
		
		try
		{
			document.getElementById('slideshow').style.opacity='0';
			document.getElementById('slideshow').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=0);';
		} catch (e) {}
		imagesList='<img src="'+images[open][1][0]+'" alt="" />';
		document.getElementById('slideshow').innerHTML='<div class="list" id="image"><a href="'+images[open][2]+'">'+imagesList+'</a></div><p>'+images[open][0]+'</p>';
		offset=0;
		showShow();
	}
	this.slideShow = slideShow;
	
	
	
	function nextShow()
	{
		open++;
		if(open>=images.length) { open=0; }
		offset=100;
		hideShow()
	}
	this.nextShow = nextShow;
	
	function hideShow()
	{
		offset=Math.max(0, offset-5);
		if(offset>0)
		{
			try
			{
				document.getElementById('slideshow').style.opacity=offset/100;
				document.getElementById('slideshow').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(offset)+');';
			} catch (e) {}
			setTimeout(name+'.hideShow()', 20);
		}
		else
		{
			offset=0;
			slideShow();
		}
	}
	this.hideShow = hideShow;
	
	function showShow()
	{
		offset=Math.min(100, offset+5);
		if(offset<100)
		{
			
			try
			{
				document.getElementById('slideshow').style.opacity=offset/100;
				document.getElementById('slideshow').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(offset)+');';
			} catch (e) {}
			setTimeout(name+'.showShow()', 20);
		}
		else {  setTimeout(name+'.nextShow()', 4000); }
	}
	this.showShow = showShow;
	
	
	
}

tipType=true;

function showToolTipImage(address)
{
	document.getElementById('toolTip').innerHTML='<img src="'+address+'" alt="" style="width:200px;" />';
	document.getElementById('toolTip').style.display='block';
}

function showToolTip(address, type)
{	
	if(type)
	{
		address='<span style="background-color:white;color:black;">'+address+'</span>';
		tipType=false;
	}
	document.getElementById('toolTip').innerHTML=address;
	document.getElementById('toolTip').style.display='block';
}
function hideToolTip(type)
{
	if(type)
	{
		tipType=true;
	}
	document.getElementById('toolTip').innerHTML='';
	document.getElementById('toolTip').style.display='none';
}
 
function moveToolTip(ev)
{
	if(animacja) { document.getElementById('toolTip').style.visibility='hidden'; }
	else
	{
		document.getElementById('toolTip').style.visibility='visible';
		ev=ev || event;
		if(tipType)
		{
			document.getElementById('toolTip').style.left=Math.min(261,Math.max(0, ev.clientX-document.getElementById('all').offsetLeft-10))+'px';
		}
		else
		{
			document.getElementById('toolTip').style.left=(ev.clientX-document.getElementById('all').offsetLeft-10)+'px';
		}
		document.getElementById('toolTip').style.top=ev.clientY+15+document.getElementsByTagName('html').item(0).scrollTop+'px';
	}
}

