/// define overal vars //////////////////////////////////////////
var active_tab = new Array();
var pointertoopen = -1;
var safari	= (navigator.userAgent.indexOf('Safari') > 0);

// swf connection name unique used by dpa-audiocomponent
var ranString = Math.random().toString();
ranString = ranString.substr(ranString.length - 10, 10);
// ajax def
var resObjekt;
resObjekt = getXMLHttpRequest();


/// 60 Jahre functions //////////////////////////////////////////

function search_news()
{

	var searchword = document.getElementById('newsSearchWord').value;
	if (searchword == '' || searchword =='Suchbegriff'){
		// wildcard...
		document.getElementById('newsSearchWord').value = '*';
	}

	var categories = '';
	var ressort = document.getElementById('ressort_search');
	var ressort_selected = ressort.options[ressort.selectedIndex].value;

	// nun weitere Felder auslesen, z.B. Medientyp
	var zeitraum = document.getElementById('zeitraum_search');
	var zeitraum_selected = zeitraum.options[zeitraum.selectedIndex].value;
	var region = document.getElementById('region_search');
	var region_selected = region.options[region.selectedIndex].value;
	
	if (ressort_selected !='') {
		categories = categories + ressort_selected;
	}
	if (zeitraum_selected !='' && ressort_selected !='' ) {
		categories = categories  + ',' + zeitraum_selected;
	}
	else if (zeitraum_selected !='' && ressort_selected =='' ) {
		categories = zeitraum_selected;
	}

	if (region_selected !='' && categories !=''  ) {
		categories = categories + ',' + region_selected;
	}
	else if (region_selected !='' ){
		categories = region_selected;
	}

	var newscat = document.getElementById('newcat_search');
	var newscatselected = document.getElementById('newcat_selected');
	if (categories != '') {
		newscat.value = categories;
		newscatselected.value = 1;
	}
	document.newsSearchFormular.submit();
}

function filter_news(targeturl){

	var categories = '';
	var ressort = document.getElementById('ressort');
	var ressort_selected = ressort.options[ressort.selectedIndex].value;

	// nun weitere Felder auslesen, z.B. Medientyp
	var zeitraum = document.getElementById('zeitraum');
	var zeitraum_selected = zeitraum.options[zeitraum.selectedIndex].value;
	var region = document.getElementById('region');
	var region_selected = region.options[region.selectedIndex].value;



	
	if (ressort_selected !='') {
		categories = categories + ressort_selected;
	}
	if (zeitraum_selected !='' && ressort_selected !='' ) {
		categories = categories  + '%2C' + zeitraum_selected;
	}
else if (zeitraum_selected !='' && ressort_selected =='' ) {
categories = categories  + zeitraum_selected;
	}

	if (region_selected !='' && categories !=''  ) {
		categories = categories + '%2C' + region_selected;
	}
else if (region_selected !='' ){
categories = region_selected;
}

//categories  = encodeURIComponent(categories);


//var newscat = document.getElementById('newscat');
//newscat.value = categories
//alert (newscat.value);


	// neue URL mit Variable 'categories' zusammensetzen
if (targeturl=='') {
	var strHref = window.location.href;
	if ( strHref.indexOf("?") > -1 ){
		var aQueryString = strHref.split("?");
		urlprefix = aQueryString[0];
	}
	else {
		urlprefix = strHref;
	}
}
else {
	urlprefix = targeturl;
}
	
window.location = urlprefix + '?' +
		'&tx_ttnews[cat]=' + categories;

//window.location = 'dynamische-Newsanzeige.360.0.html?' +
		'&no_cache=1&cats=' + categories;

//document.filterFormular.submit();

}

function hideselects() {
//alle selects verstecken -> ie
	if (document.all && document.getElementById) {
		var ver = getInternetExplorerVersion();
		if ( ver < 7.0 ) {
			var selects = $ES('select');
			selects.each(function(element) {
			element.style.visibility="hidden";	
			})
		}
	}
}

function showselects() {
// selects wieder zeigen -> ie
		if (document.all && document.getElementById) {
			var ver = getInternetExplorerVersion();
			if ( ver < 7.0 ) {
				var selects = $ES('select');
				selects.each(function(element) {
				element.style.visibility="visible";	
				})
			}
		}
}

function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}


/// special functions //////////////////////////////////////////
function handleMouseLeave() {}
// dpa interactive maps
function shiftImage(shift) {
	document.getElementById('imageoverlay').style.top = shift +"px";
}
// dpa quicklinks
function showList(x) {
	for (var i=1; i<document.getElementById("quicknavform").elements.length; i++) {
		document.getElementById("quicknavform").elements[i].style.display = "none";
	}
	if (x == "keineauswahl") {
		document.getElementById("quicknavform").reset();
		document.getElementById("quicknavform").elements[1].style.display = "inline";
		var selectPointer = document.forms[1].elements[1];
		var showSelect = new Fx.Style(selectPointer, 'color', {duration:500});
   		showSelect.start('#fff', '#444');
		selectPointer.style.display = "inline";
		return;
	}
	else {
		var selectPointer = document.getElementById(x);
		var showSelect = new Fx.Style(selectPointer, 'color', {duration:500});
   		showSelect.start('#fff', '#444');
		selectPointer.style.display = "inline";
	}
}

// jumpmenus 
function Go(y) {
	if (y == "keineauswahl") {
		return;
	}
		else {
		window.location.href = y;
	}
}
function jumpMenu(menu) {
	var s = document.getElementById(menu);
	var target  = s.options[s.selectedIndex].value;
	window.location.href = target;
}
function jumpMenuRel(menu) {
	var s = document.getElementById(menu);
	var target  = s.options[s.selectedIndex].value;
	window.location.href = target;
}

/// domready functions //////////////////////////////////////////
window.addEvent('domready', function(){
// pseudohover ie
	if (document.all && document.getElementById || navigator.userAgent.match(/iPhone/i)) {
		var m, nav, no, i;
		if (m = document.getElementById("menu")) {
			nav = null;
			for (i = 0; m.childNodes.length > i; i++) {
				if (m.childNodes[i].nodeName == 'UL') {
					nav = m.childNodes[i];
					break;
				}
			}
			if (nav)
				for (i = 0; nav.childNodes.length > i; i++) {
					no = nav.childNodes[i];
					if (no.nodeName == 'LI') {
						no.onmouseover = function() {
						    	this.className += " over"; /* NO += " over", per follie IE/Mac */
						}
						no.onmouseout = function() {
						   /*this.className = ""  NO this.className.replace(" over", "") */
						   /*alten klassennamen wierderherstellen*/
						   /*aber nur, wenn ueberhaupt etwas wiederherzustellen ist -> sonst fehler */
						   if (this.className.indexOf(" ") !=-1){
							   klasse = this.className.split(" ");
								tempklasse = "";
								for (laenge = 0;  laenge < (klasse.length -1);  laenge++) {
									tempklasse = tempklasse + " " + klasse[laenge];
								}
								this.className = tempklasse;
							}
						}
					}
				}
		}
	}
	
// set filters

	if(window.location.search.indexOf("tx_ttnews[cat]")!= -1 && document.getElementById('filterFormular')) {
		//alert('synchro');
		var filterform = document.getElementById('filterFormular');
		var inneroptions = filterform.getElementsByTagName('option');
		
		//alert (inneroptions.length);
		var searchstring = window.location.search;
		
		var tempvar1 = searchstring.split('&');
		
		var tempvar2 = tempvar1[1].split('=');
		
		// catnumbers = array der categorien
		var catnumbers = tempvar2[1].split('%2C');
		//klappt bis hierhin
		
		//document.getElementById('ressort').selectedIndex = 2;
		
		// erstes dropdown
		filterformSelect = document.getElementById('ressort');
		inneroptions = filterformSelect.getElementsByTagName('option');
		
		for (i=0; i < inneroptions.length; i++) {
			for (x=0; x < catnumbers.length; x++ ) {
				if (inneroptions[i].value == catnumbers[x]) {
					filterformSelect.selectedIndex = i;
				}
			}
		}
		
		// zweites dropdown
		filterformSelect = document.getElementById('zeitraum');
		inneroptions = filterformSelect.getElementsByTagName('option');
		
		for (i=0; i < inneroptions.length; i++) {
			for (x=0; x < catnumbers.length; x++ ) {
				if (inneroptions[i].value == catnumbers[x]) {
					filterformSelect.selectedIndex = i;
				}
			}
		}
		
		// drittes dropdown
		filterformSelect = document.getElementById('region');
		inneroptions = filterformSelect.getElementsByTagName('option');
		
		for (i=0; i < inneroptions.length; i++) {
			for (x=0; x < catnumbers.length; x++ ) {
				if (inneroptions[i].value == catnumbers[x]) {
					filterformSelect.selectedIndex = i;
				}
			}
		}
	}


// end set filters
	
	
	
	
// define accordions
	var stretchers = $$('div.accordion');
	var togglers = $$('div.rel');
	stretchers.each(function(item){
		item.setStyles({'height': '0px', 'overflow': 'hidden'});
	});
	
	// hash ?
	var pNode = 0;
	
	if(window.location.hash) {
		var accpointer = window.location.hash.split('#')[1];
		//alert (accpointer);
		if(document.getElementById(accpointer)){
			var jumpanchor = document.getElementById(accpointer);
			var productentries = $$('div.produkt_entry');
			// alert(productentries.length);
			for (i=0; i< productentries.length; i++) {
				checkentry = productentries[i];
				// zwei zurueck
				
				checkanchor = checkentry;
				
				while (!checkanchor.id) {
				    if (!checkanchor.previousSibling){
						checkanchor = checkentry.parentNode;
						pNode = pNode + 0.5;
						// alert("prenode");
					}
					else {
						checkanchor = checkanchor.previousSibling;
						// alert("precsib");
						// alert (checkanchor.tagName);
					}
				}
				
				if (checkanchor.id == accpointer){
					/*alert (checkanchor.tagName);
					alert (checkanchor.id);
					alert (i);*/
					pointertoopen = i;
					i = productentries.length;
					break;	
				}
			}
		}
	}
	//safari hack
	if (safari == true){
		//alert(pNode);
		pointertoopen = pointertoopen - pNode;
	}
	// alert (pointertoopen);
	
	var myAccordion = new Fx.Accordion(togglers, stretchers, { alwaysHide: true, opacity: false, start: false, show: -1,
			onActive: function(togglers, stretchers){
			pointer = togglers.getElements('div');
				pointer.setStyle('color', '#838488');
				pointer.setStyle('backgroundPosition', 'right -42px');
			},
			onBackground: function(togglers, stretchers){
			pointer = togglers.getElements('div');
				pointer.setStyle('color', '#63C441');
				pointer.setStyle('backgroundPosition', 'right 6px');			
			},
			transition: Fx.Transitions.quadOut });

	});
	// klappt nicht in ie -> onload?
	/*
	if(pointertoopen!=-1){
		togglers[pointertoopen].fireEvent('click');
	}
	*/
	
// end on domready //////////////////////////////////////////


// tabfunktionen //////////////////////////////////////////
function showtab(element_id, tabs_id) {
	// wenn noch nix definiert dannwohl  erster tab aktiv...
	if (typeof(active_tab[tabs_id]) == "undefined") {
		active_tab[tabs_id] = 0;
	}
	if (active_tab[tabs_id] != element_id) {
		// inhalte an- und ausschalten
		highlight_pointer = "contenttab" + element_id + "_" + tabs_id;
		lowlight_pointer = "contenttab" + active_tab[tabs_id] + "_" + tabs_id;
		document.getElementById(highlight_pointer).className = "activetab";
		document.getElementById(lowlight_pointer).className = "inactivetab";		
		// reiter an- und ausschalten
		highlight_reiter = "toptab" + element_id + "_" + tabs_id;
		lowlight_reiter = "toptab" + active_tab[tabs_id] + "_" + tabs_id;
		document.getElementById(highlight_reiter).className = "tabactive";
		document.getElementById(lowlight_reiter).className = "tabinactive";	
		active_tab[tabs_id] = element_id;
	}
}

// anchors
function checkHash(){
	var found = false;
	$$('div.toggler a').each(function(link, i){
		if (window.location.hash.test(link.hash)){
			myAccordion.showThisHideOpen(i);
			found = true;
		}
	});
	return found;
}
if (!checkHash()) {
	// erstes element aufklappen
	found = false;
	// gibt es ein zu oeffnendes element? (wrapper = start)
	if (document.getElementById('startaccordion')) {
		//alle wrapper finden
		accors = document.getElementsByClassName('mooFxGroup');
		// loop through all wrapper
		for (var i=0; i<accors.length; i++){
			if (accors[i].id == "startaccordion") {
				myAccordion.showThisHideOpen(i);
				found = true;
			}
		}
	}
}

function definemoofx(){ }

// onload functions //////////////////////////////////////////
window.addEvent('load', function(){
	/////// muss ein accordion geefonet werden? onload wegen IE	
		if(pointertoopen!=-1){
			var togglers = $$('div.rel');
			togglers[pointertoopen].fireEvent('click');
		}
	
	// define ajax links / works in ie just after onload but not ondomready
	var ajaxlinks = $$('.ajaxLink');
	ajaxlinks.each(function(element) {
		var replacement = new Element('a');
		var linkvar=element.getAttribute("href");
		var linktitle=element.getAttribute("title");
		var linkclass=element.className;
		var linktext='';
		replacement.setProperties({
    			href: 'javascript:void(0);',
				title: linktitle
    			//onClick: 'javascript:sndReq("'+linkvar+'");' // on click does not work in ie
		});
		replacement.className = linkclass;
		replacement.addEvent('click', function(){sndReq(linkvar)});
		var a_html = element.getFirst();
		// if <a> contains <html>
		if (a_html  != null) {
			//replacement.setHTML(a_html);
			a_html.injectInside(replacement);
		}
		// if <a> contains only text
		else if (element.firstChild) {
			if (element.firstChild.nodeValue) {
				// enthaelt der a-tag ueberhaupt text?
				linktext=element.firstChild.nodeValue;
			}
			else {
				linktext='';
			}			
			replacement.setText(linktext);
		}
		element.replaceWith(replacement);
	});
	// define ajax holders
	var ajaxUnderElement = new Element('div').setProperty('id', 'ajaxUnderlayer').injectInside($E('body'));
	ajaxUnderElement.addEvent('click', function(){closeAjaxLayer()});
	var ajaxOuterElement = new Element('div').setProperty('id', 'ajaxOuterlayer').injectInside($E('body'));
	var ajaxHolderElement = new Element('div');
	ajaxHolderElement.setProperties({
		id: 'ajaxLayer'
	});
	// ajaxCloseElement erst nach dem faden definieren (ie hack wegen backgroundimage)
	var ajaxContentElement = new Element('div');
	ajaxContentElement.setProperties({
		id: 'stuffToLoad',
		style: 'visibility: hidden;'
	});
	ajaxContentElement.injectInside(ajaxHolderElement);
	ajaxHolderElement.injectInside(ajaxOuterElement);
	
	// define tips
	var Tips2 = new Tips($$('.link_mit_Tooltip'), {
		maxTitleChars: 500,
		initialize:function(){
			this.fx = new Fx.Style(this.toolTip, 'opacity', {duration: 500, wait: false, maxTitleChars: 300});
		},
		onShow: function(toolTip) {
			this.fx.start(0.8);
		},
		onHide: function(toolTip) {
			this.fx.start(0);
		}
	});

})

/** Change partial page content with Ajax ***************************************/ 
function getXMLHttpRequest()
{
		if (window.XMLHttpRequest){
			//XMLHttpRequest for Firefox, Opera, Safari, ev. IE7
			return new XMLHttpRequest();
		} else
		if (window.ActiveXObject){
			try{
				//XMLHttp (new) for IE
				return new ActiveXObject("Msxml2.XMLHTTP");
			} 	catch(e) {
				try{
					//XMLHttp (old) for IE
					return new ActiveXObject("Microsoft.XMLHTTP");
				} 	catch(e){
					return null;
				}
			}
		}
		return null;
}
function sndReq(linkvar) {
	test = /\?id=/.test(linkvar);//regex test: is ?id= substring of linkvar?
	if(test){//simulateStaticDocuments is NOT activated
		var stringArray = linkvar.split('?id=');	
		var idParams = stringArray[1];
	}else
	if(!test){//simulateStaticDocuments IS activated
		test2 = /\//.test(linkvar);//regex test: is / a substring of linkvar?
		if(test2){//linkvar is complete link (IE)
			var stringArray = linkvar.split('/');
			var lastPos=(stringArray.length)-1;
			idParams = stringArray[lastPos];
		}else
		if(!test2){//linkvar is NOT complete link (Firefox etc)
			idParams=linkvar;
		}
	}
	//dhtmlHistory.add(idParams, true);//RSH framework, extract page id and add to history-->enables backbutton+history	
	//*********** overall object detection at the start of the script *****************
	var supportCheck=document.createElement && document.getElementsByTagName && getXMLHttpRequest();
	if(!supportCheck) return;
	//*********** END overall object detection at the start of the script *************
	// now open the layer
	var ajaxUnderlayer = document.getElementById("ajaxUnderlayer");
	var ajaxOuterlayer = document.getElementById("ajaxOuterlayer");
	var ajaxlayer = document.getElementById("ajaxLayer");
	ajaxlayer.style.top = 70 + window.getScrollTop() + "px";
	//erste Anpassung der Hoehe...
	ajaxUnderlayer.style.height = window.getScrollHeight() + 'px';	
	ajaxlayer.className = "loading";
	var showAjax = new Fx.Style(ajaxUnderlayer, 'opacity', {duration:400});
	var showAjaxLayer = new Fx.Style(ajaxlayer, 'opacity', {duration:400});
   	showAjax.start(0, 0.8);
   	showAjaxLayer.start(0, 1);
	ajaxUnderlayer.style.display = "block";
	ajaxlayer.style.display ="block";
   	showAjax.addEvent('onComplete', function() {
		document.getElementById("ajaxLayer").className ="loading";		
		// add close_button
		var ajaxCloseElement = new Element('div');
		ajaxCloseElement.setProperties({
				id: 'ajaxClose'
		});
		document.getElementById("stuffToLoad").style.visibility = "visible";
		ajaxCloseElement.addEvent('click', function(){closeAjaxLayer()});
		ajaxCloseElement.injectInside(ajaxlayer);
	});
	//alle selects verstecken -> ie
	if (document.all && document.getElementById) {
		var selects = $ES('select');
		selects.each(function(element) {
			element.style.visibility="hidden";	
		})
	}
	// neues Printstylesheet hinzufuegen
	var cssNode = document.createElement('link');
	cssNode.id = 'ajaxcss';
	cssNode.type = 'text/css';
	cssNode.rel = 'stylesheet';
	cssNode.href = 'fileadmin/templates/assets_dpa/ajaxprint.css';
	cssNode.media = 'print';
	cssNode.title = 'dynamicLoadedSheet';
	document.getElementsByTagName("head")[0].appendChild(cssNode);
	// und los
	resObjekt.open('get','typo3conf/ext/tut_unobtrusiveajax/media/parserscript.php?linkurl=' + linkvar,true);//asynchron
	resObjekt.onreadystatechange = handleResponse;
	resObjekt.send(null);
}
function handleResponse() {
	if(resObjekt.readyState == 4){
		var response=resObjekt.responseText;
		var stringArrayContent = response.split('xxSPLITRESPONSEHERExx');
		var responseContent = stringArrayContent[0];
		var responseTitle = stringArrayContent[1];
		document.getElementById("ajaxLayer").style.backgroundImage = "none";
		var ajaxHolder = document.getElementById("stuffToLoad");
		ajaxHolder.style.visibility = "hidden";
		ajaxHolder.innerHTML = responseContent;
		// just do the javascripts		
		evalScript(responseContent);
		// ajaxLayer ready to display... zweite Anpassung der Hoehe
		document.getElementById("ajaxUnderlayer").style.height = window.getScrollHeight() + 70 + 'px';
		ajaxHolder.style.visibility = "visible";
	}
}
function closeAjaxLayer() {
	// kill tabvars
	/*var tabfinder = $$("#ajaxLayer .tabcontainer");
	if (tabfinder!=false) {
		 //alert("tabs vorhanden " + tabfinder[0].id);
		 var tabpointer = tabfinder[0].id.substr(4, 15);
		 //alert (tabpointer + "test");
		 if (active_tab[tabpointer]) {
		// eintrag vorhanden?
			//alert("tab eingetragen");
			// letztes element des aarys loeschen...
			active_tab.pop();
		}
	}*/
	var ajaxPointer = document.getElementById("ajaxUnderlayer");
	var ajaxLayer = document.getElementById("ajaxLayer");
	var hideAjaxUnder = new Fx.Style(ajaxPointer, 'opacity', {duration:500});
	var hideAjax = new Fx.Style(ajaxLayer, 'opacity', {duration:500});
   	hideAjax.addEvent('onComplete', function() {
		ajaxPointer.style.display = "none";
		ajaxLayer.style.display = "none";
		var ajaxHolder = document.getElementById("stuffToLoad");
		ajaxHolder.innerHTML = '';
		ajaxHolder.style.visibility = "hidden";
		document.getElementById("ajaxClose").remove();
		// selects wieder zeigen -> ie
		if (document.all && document.getElementById) {
			var selects = $ES('select');
			selects.each(function(element) {
				element.style.visibility="visible";	
			})
		}
	});
	// neues Printstylesheet entfernen
	//document.getElementById("ajaxcss").remove(); //geht nicht in ie
	var bodyvar = document.getElementsByTagName("head")[0];
    var addedcss = document.getElementById("ajaxcss");
	// wir brauchen diese verschachtelte adressierung... ie...
	addedcss.parentNode.removeChild(addedcss);
	// und weg damit
	hideAjaxUnder.start(0.8, 0);
	hideAjax.start(1, 0);
}
function evalScript(responseContent){
	var script, scripts;
	scripts = [];
	var script1 = responseContent.split('<script type="text/javascript"><!--');
	if (script1[1]) {
		var script2 = script1[1].split('//--></script>');
		scripts = script2[0];
		ajax_script = scripts;
		if (scripts) (window.execScript) ? window.execScript(scripts) : window.setTimeout(scripts, 0);
	}
}
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

// Slideshow
var SimpleSlideShowDemo = new Class({
	options: {
		slides: [],
		startIndex: 0,
		wrap: true,
		onShow: Class.empty, //Mootools 1.2: $empty
		onRotate: Class.empty,
		onStop: Class.empty,
		onAutoPlay: Class.empty,
		onShowSlide: Class.empty,
		slideInterval: 2500,
		auto:false,
		transitionDuration: 700,
		splitter:"&nbsp;&nbsp;",
		prev:"&laquo; ",
		next:" &raquo",
		play:"play",
		stop:"stop",
		bigNavigation : false,
		smallNavigation: false,
		browser:true,
		addBarInside:true
	},
	// init
	initialize: function(container,options){
	//if (container[0].getParent().getTag()=='a') {
    //this.containerNest = container[0].getParent().getParent();
    //} else {
      this.containerNest = container[0].getParent();
    //}
    this.container = container;
		this.setOptions(options);
		this.slides = [];
		this.title = [];
		this.descr = [];
		this.effects = [];
		this.browserArr = [];
		this.playStatus = false;
		if (this.options.auto) this.playStatus = true;
    	this.createStructure();	
		this.addSlides(this.container);
		if(this.slides.length) this.showSlide(this.options.startIndex);
		if (this.options.auto) {
      		this.autoplay();
     	// this.playStatus = true;
    	}
	},
	createFx: function(){
		this.slideFx = new Fx.Elements(this.slides, {duration: this.options.transitionDuration});
		this.slides.each(function(slide){
			slide.setStyle('opacity',0);
		});
	},
	// structure
	createStructure: function() {
		var oldClass = this.containerNest.getProperty("class");
    	this.containerNest.setProperty('class', '');
		this.containerNest.addClass('rgslideshow');
		this.test = new Element('div').addClass(oldClass).injectBefore(this.containerNest);
		this.containerNest.injectInside(this.test);
    	if (this.options.addBarInside) {
      		this.nestAll = new Element('div').setProperty('class', 'rgsnest').injectTop(this.containerNest);    
    	} else {
      		this.nestAll = new Element('div').setProperty('class', 'rgslideshowbar').injectAfter(this.containerNest);
    	}
		//this.title = new Element('div').setProperty('class', 'rgstitle').injectInside(this.nestAll);
		//this.description = new Element('div').setProperty('class', 'rgsdescription').injectInside(this.nestAll);
		
		// naviagtion aufbauen	
		//if(this.options.browser) {
			this.navigation = new Element('div').setProperty('class', 'rgslideshownav').injectAfter(this.containerNest);
			this.innerNavigation = new Element('div').setProperty('class', 'rgsnav2').injectInside(this.navigation);
      		// if(this.options.smallNavigation) this.prevEl = new Element('span').setProperty('class', 'rgsprev').injectInside(this.innerNavigation).setHTML(this.options.prev).addEvent('click', this.cycleBack.bind(this));
			this.browser = new Element('div').setProperty('class', 'rgsbrowser').injectInside(this.innerNavigation);
    		// if(this.options.smallNavigation)  this.nextEl = new Element('span').setProperty('class', 'rgsnext').injectInside(this.innerNavigation).setHTML(this.options.next).addEvent('click', this.cycleForward.bind(this));
			this.play = new Element('span').setProperty('class', 'rgsplay').injectInside(this.innerNavigation).addEvent('click', this.togglePlay.bind(this));    
      		if (!this.playStatus) {
        		this.play.setHTML(this.options.play).setProperty('title',"Play");
      		} else {
        	this.play.setHTML(this.options.stop).setProperty('title',"Stop");
      		}
    	 //} 
		// ende naviagtion aufbauen
		//if (this.options.bigNavigation) {
    	//  this.bigPrev = new Element('a').setProperties({'class': 'rgsbigprev', 'href': "javascript:void(0);"}).injectInside(this.containerNest).addEvent('click', this.cycleBack.bind(this));
    	//  this.bigNext = new Element('a').setProperties({'class': 'rgsbignext', 'href': "javascript:void(0);"}).injectAfter(this.nestAll).addEvent('click', this.cycleForward.bind(this));
    	//}
    	this.createFx();
		// slideshow einblenden
		myslideshow = getElementsByClassName(document.getElementsByTagName("body")[0], "div", "tx-rgslideshow-pi1");
		myslideshow[0].style.visibility = "visible";
  	},
	addSlides: function(slides){
    	var i =1;
		slides.each(function(slide){
			this.slides.include($(slide));
			this.effects[this.slides.indexOf(slide)] = new Fx.Style(slide, 'opacity');
			slide.addClass('rgssimg');
        	var title="&nbsp;";
			var descr="";
			/*
			if (slide.getProperty("title")) {
			  split = slide.getProperty("title").split("|");
			  if (split[0]) {
				title = split[0];
				slide.setProperty("title",title);
			  }
			  if (split[1]) descr = split[1];
			}
			*/
  			//this.descr[this.slides.indexOf(slide)] = descr;      
  			//this.title[this.slides.indexOf(slide)] = title;
			// Bildnummerbrowser immer einbinden
      		//if(this.options.browser) {  			
        	this.browserEl = new Element('span').setProperties({'class': 'rgsbrowserEl', 'title': ''}).setHTML(this.slides.indexOf(slide)+1).injectInside(this.browser);
    		//    this.browserEl.setProperty('id',this.options.paginationSelector+i);
  			this.browserEl.addEvent('click', this.cycleTo.bind(this,this.slides.indexOf(slide)));
  			this.browserArr[this.slides.indexOf(slide)] = this.browserEl;
			//}
			if (i!=1) {
      			if(this.options.browser) this.splitter = new Element('span').setProperty('class', 'rgssplitEl').setHTML(this.options.splitter).injectBefore(this.browserEl);
      			slide.setStyle('display','none');
      		} else {
        	var nestDiv = this.nestAll.getSize();
        	var img = slide.getSize();
    		if(this.options.bigNavigation) {          
          		this.bigPrev.setStyle('height',(slide.getProperty("height")-nestDiv.size.y)+'px');
          		this.bigNext.setStyle('height',(slide.getProperty("height")-nestDiv.size.y)+'px');    
        	}
    		if(!this.options.addBarInside) { 
    		  this.nestAll.setStyle('width',slide.getProperty("width")+'px');
    		}
			if(this.options.browser) {
          		var width =  this.containerNest.getSize();
				this.navigation.setStyle('width',width.size.x-1+'px');
        	}
      
      	}
		i++;
		}, this);
	},
	addSlide: function(slide){
		this.addSlides([slide]);
	},
	cycleForward: function(){
		if($chk(this.now) && this.now < this.slides.length-1) this.showSlide(this.now+1);
		else if ((this.now) && this.options.wrap) this.showSlide(0);
		else if(!$defined(this.now)) this.showSlide(this.options.startIndex);
	},
	cycleBack: function(){
		if(this.now > 0) this.showSlide(this.now-1);
		else if(this.options.wrap) this.showSlide(this.slides.length-1);
	},
	cycleTo: function(i){
		if(this.playStatus) {
      this.togglePlay();
    }	
    this.showSlide(i);
	},
	togglePlay: function() {
    if (this.playStatus) {
      this.stop();
      this.playStatus = false;
      this.play.innerHTML = this.options.play;
      this.play.setProperty('title',"Play");
    }
    else {
      this.autoplay();
      this.playStatus = true;
      this.play.innerHTML = this.options.stop;
      this.play.setProperty('title',"Stop");
    }
  },
	autoplay: function(){
		this.slideshowInt = this.rotate.periodical(this.options.slideInterval, this);
		this.fireEvent('onAutoPlay');
	},
	stop: function(){
		clearInterval(this.slideshowInt);
		this.fireEvent('onStop');
	},  	
	rotate: function(){
		this.cycleForward();
		this.fireEvent('onRotate');
	},	
	showSlide: function(iToShow){
		var now = this.now;		
		var currentSlide = this.slides[now];
		var slide = this.slides[iToShow];
		function fadeIn(s){
			s.setStyles({
				display:'block',
				visibility: 'visible',
				opacity: .01
			});
			this.effects[this.slides.indexOf(s)].start(.99);
			this.fireEvent('onShow', [slide, iToShow]);
		};

    //this.description.innerHTML = this.title.innerHTML = "&nbsp;";
    if(this.options.browser) {
      this.browserArr.each(function(el) {
        el.removeClass("rgsact");
      });
    }
		if(slide) {    
			if($chk(now) && now != iToShow){
				this.effects[now].start(0).chain(function(){
					this.slides[now].setStyle('display', 'none');
					fadeIn.apply(this, [slide]);
         
          //this.description.innerHTML  = this.descr[iToShow];
          //this.title.innerHTML  = this.title[iToShow];
          if(this.options.browser) this.browserArr[this.now].addClass("rgsact");
				}.bind(this));
			} else {
        fadeIn.apply(this, [slide]);
		      //this.description.innerHTML  = this.descr[iToShow];
          //this.title.innerHTML  = this.title[iToShow];
          if(this.options.browser) this.browserArr[0].addClass("rgsact");
      }
			this.now = iToShow;
		}
		

	}
});
SimpleSlideShowDemo.implement(new Options, new Events);