guhSlideShow = function(parentElement, moodalbox)
{
	this.active;
	this.parentObject;
	this.countSlides;
	this.slides = [];
	this.currentSlide;

	//-- Methoden START --
	this.toggleShow = function()
	{
		if (this.active)
		{
			window.clearInterval(this.active);
			this.active = 0;
		}
		else
		{
			this.active = window.setInterval("slideShow.nextSlide()", 8000);
		}
		this.setStatus();
	}
	
	this.stopShow = function()	{	window.clearInterval(active);	}

	this.setStatus = function()
	{
		if (this.active > 0) {
			document.getElementById('id_slideshow_pause').src = 'fileadmin/img_buttons/slideshow_pause.gif';
			document.getElementById('id_slideshow_back').src = 'fileadmin/img_buttons/slideshow_back_2.png';
			document.getElementById('id_slideshow_forward').src = 'fileadmin/img_buttons/slideshow_forward_2.png';
			document.getElementById('id_slideshow_pause').title = 'Slideshow anhalten';
		}
		else
		{
			document.getElementById('id_slideshow_pause').src = 'fileadmin/img_buttons/slideshow_play.png';
			document.getElementById('id_slideshow_back').src = 'fileadmin/img_buttons/slideshow_back.png';
			document.getElementById('id_slideshow_forward').src = 'fileadmin/img_buttons/slideshow_forward.png';
			document.getElementById('id_slideshow_pause').title = 'Slideshow starten';
		}
	}

	this.changeOpac = function(opacity, id)
	{
		var object = document.getElementById(id).style;
		object.opacity = (opacity / 100);
		object.MozOpacity = (opacity / 100);
		object.KhtmlOpacity = (opacity / 100);
		object.filter = "alpha(opacity=" + opacity + ")";
	}

	this.slideshowBlendover = function(dividfrom, dividto, millisec)
	{
		var speed = Math.round(millisec / 100);
		var timer = 0;

		for(i = 100; i >= 0; i--)
		{
			setTimeout("slideShow.changeOpac(" + i + ",'" + dividfrom + "')",(timer * speed));
			timer++;
		}
		setTimeout("slideShow.setInvisible('" + dividfrom + "')",(timer * speed));
		setTimeout("slideShow.setVisible('" + dividto + "')",(timer * speed));
		for(j = 0; j <= 100; j++)
		{
			setTimeout("slideShow.changeOpac(" + j + ",'" + dividto + "')",(timer * speed));
			timer++;
		}
		setTimeout("slideShow.setStatus()",(timer * speed)/2);
	}

	this.setInvisible = function(id)	{	document.getElementById(id).style.display = 'none';		}
	this.setVisible = function(id)		{	document.getElementById(id).style.display = 'block';	}

	this.nextSlide = function()
	{
		if (this.currentSlide == (this.countSlides-1))
		{
			this.slideshowBlendover('div_slide_' + this.currentSlide, 'div_slide_0', 1000);
			this.currentSlide = 0;
		}
		else
		{
			this.slideshowBlendover('div_slide_' + this.currentSlide, 'div_slide_' + (this.currentSlide + 1), 1000);
			this.currentSlide++;
		}
	}

	this.prevSlide = function()
	{
		if (this.currentSlide > 0)
		{
			this.slideshowBlendover('div_slide_' + this.currentSlide, 'div_slide_' + (this.currentSlide - 1), 1000);
			this.currentSlide--;
		}
		else if (this.currentSlide == 0)
		{
			this.slideshowBlendover('div_slide_' + this.currentSlide, 'div_slide_' + (this.countSlides - 1), 1000);
			this.currentSlide = (this.countSlides - 1);
		}
	}
	//-- Methoden END --

	//-- Konstruktor START --
	{
		this.active = 0;
		this.parentObject = document.getElementById(parentElement);
		this.currentSlide = 0;
		
		countDivs = this.parentObject.getElementsByTagName('div').length;
		if	((countDivs % 21) > 0)	this.countSlides = parseInt((countDivs/21) + 1);
		else						this.countSlides = parseInt((countDivs/21));

		if(moodalbox)
		{
			for(i=0; i<this.parentObject.getElementsByTagName('a').length; i++)
			{
				tempUrl = this.parentObject.getElementsByTagName('a')[i].href;
				this.parentObject.getElementsByTagName('a')[i].rel = 'moodalbox';
        		this.parentObject.getElementsByTagName('a')[i].href = tempUrl;
			}
		}
	
		for(i=0; i<this.countSlides; i++)
		{
			id = 'div_slide_' + i;
			this.slides[i] = document.createElement('div');
			
			this.slides[i].setAttribute('id',id)
			this.slides[i].setAttribute('class', 'div_slide');		
			this.slides[i].setAttribute('className', 'div_slide'); //--  IE
			this.slides[i].style.width = '300px';
			this.slides[i].style.height = '260px';
			this.slides[i].style.overflow = 'hidden';
			this.slides[i].style.display = 'none';
		}

		//-- Verschieben der Inhalte in die Slide-DIVS --
		
		pCurrentDiv = 0;
		pMaxDiv = 21;
		
		for(i=0; i<this.countSlides; i++)
		{
			for(pCurrentDiv; pCurrentDiv<pMaxDiv && pCurrentDiv<countDivs; pCurrentDiv+=7)
			{
				this.slides[i].appendChild(this.parentObject.getElementsByTagName('div')[pCurrentDiv].cloneNode(true));
				this.slides[i].appendChild(this.parentObject.getElementsByTagName('div')[pCurrentDiv+6].cloneNode(true));
			}
			pMaxDiv += 21;
		}
		
		this.slides[0].style.display = 'block';

		//-- Löschen der 'alten' Inhalte --
		
		for(i=(countDivs-7); i>=0; i-=7)
		{
			temp1 = this.parentObject.getElementsByTagName('div')[(i+6)];
			temp2 = this.parentObject.getElementsByTagName('div')[i];
			
			this.parentObject.removeChild(temp1);
			this.parentObject.removeChild(temp2);
		}
		
		for(i=0; i<this.countSlides; i++)
		{
			this.parentObject.appendChild(this.slides[i]);
		}

		//-- Erstellen des Navi-DIVs --

		if(this.countSlides > 1)
		{
			//--
			
			var center = document.createElement('center');
			
			//--
			
			var divNavi = document.createElement('div');
			divNavi.style.position = 'relative';
			divNavi.style.width = '290px';
			divNavi.innerHTML = "<img id='id_slideshow_back' style='cursor:pointer;border:none' />";
			divNavi.innerHTML+= "<img id='id_slideshow_pause' style='cursor:pointer;margin-left:100px;margin-right:100px;border:none' />";
			divNavi.innerHTML+= "<img id='id_slideshow_forward' style='cursor:pointer;border:none'/>";
		
			//this.parentObject.appendChild(divNavi);
			center.appendChild(divNavi);
			this.parentObject.appendChild(center);

			divNavi.getElementsByTagName('img')[0].onclick = function()		{	if (!slideShow.active) slideShow.prevSlide();	}
			divNavi.getElementsByTagName('img')[1].onclick = function()		{	slideShow.toggleShow();							}
			divNavi.getElementsByTagName('img')[2].onclick = function()		{	if (!slideShow.active) slideShow.nextSlide();	}
			this.toggleShow();
		}
	}
	//-- Konstruktor END --
}
