  (function($){
  	$.fn.writeDebug = function(s) {
  		var c = {'id': 'debug'};
  		var s = $.extend(c, s);
  		// Gibt es die id schon?
  		var id = $("#"+s.id).attr("id");
  		// Nein? Dann leg ein neues div an.
  		if(id != s.id){
  			$('<div id="'+s.id+'" style="position:absolute;top:0px;left:0px;display:block;width:200px;height:100%;overflow:auto;border:1px solid #cfcfcf;"></div>').appendTo("body");
  			//alert("div neu:"+s.id);
  		}
  		
  		var text = $("#"+s.id).html();
  		$("#"+s.id).html(s.text+"<br>"+text);
  		
  		var ret  = $("#"+s.id);
  		return ret;
  	};
 })(jQuery);
 
 (function($){
  	$.fn.startSlider = function(s) {
  		var c = {'id': 'debug'};
  		var s = $.extend(c, s);
  		
  		//$("#debug").writeDebug({text:"Starte startSlider"});
  		// Der Container in welcehm der Slider läuft
  		var id=$(this).attr("id");
  		
  		// Anzahl sichtbarere Elemente
  		var sicht=2;
  		
  		// Wieviele Pixel soll geschoben werden
  		var pxStep=277;
  		
  		// Welcher Slide wird gerade bewegt
  		var slide=sicht-1;
  		
  		// Sind wir gerade mitten in einer Bewegung
  		var inMotion = false;
  		
  		// Richtung der letzten Animation -1:links 1:rechts
  		var dirMotion = 1;
  		
  		// Parkposition Links
  		var endPosLeft=0-pxStep;
  		
  		// Parkposition Rechts
  		var endPosRight=pxStep*2;
  		
  		// Anzahl Teaser Elemente
  		var anz=0;
  		
  		if(id!="undefined"){
  		
  		
  			// Id des Containers welcher den Slider beinhaltet  		
  			//$("#debug").writeDebug({text:"ID "+id});
  			
  			// Ebene für IE anpassen
  			$("#"+id).css({'z-Index':0});
  			//$("#spnavi, li, ul").css({'z-Index':1000});
  			
  			/*
  			$("div ul li").map(function(){
  				$("#debug").writeDebug({text:"Tag "+$(this).css('z-Index')});
  				//$("#debug").writeDebug({text:"Tag "});
  				
  			});
  			*/
  			
  			
  			
  			anz = $("#"+id+" > .slidercont > .slider").children().length;
  			
  			//anz = 0;
  			
  			//$("#debug").writeDebug({text:"Anzahl "+anz});
  			
  			if(anz > 2){
  			
  				// Init
  				//$("#debug").writeDebug({text:"Init "});
  							
  		
  		
  				// Bindet die Aktion Links	
  				$("#"+id+" > .moveleft").click(function(){
  					//$("#debug").writeDebug({text:"MoveLeft "+slide});
  					if(inMotion == true){
  						//$("#debug").writeDebug({text:"inMotion klick ignoriert "});
  						return false;
  					}
  					inMotion = true;
  					
  					
  					if(dirMotion != -1){
  						//$("#debug").writeDebug({text:"Richtung wurde geändert."});
  						slide=slide-dirMotion;
  					}			
  					
  					// Wurde das letzte Element geschoben fang wieder von vorne an
  					if(slide > anz-1){
  						slide=0;
  					}
  							
  					// Das nächste Element vor der Animation an das rechte Ende setzen
  					var move=slide+sicht;
  					if(move > (anz-1)){
  						move = move-anz;
  					}
  					//$("#debug").writeDebug({text:"Pre-Move Left:"+move});
  					$("#"+id+"  .sliderelement:eq("+move+")").css({left:endPosRight});
  					
  					
  					// Erstes Element nach Links aus dem Sichtbereich schieben, Wenn fertig alle restlichen ebenfalls um eine Position weiterschieben
  					$("#"+id+"  .sliderelement").animate({left:'-='+pxStep}, function(){
  						//$("#debug").writeDebug({text:"Move .sliderelement"});  					
  						
  						// Bewegung fertig
  						inMotion = false;
  						
  						
  					});
  					// Nächstes Element wählen
  					slide++;
  					// Richtung merken
  					dirMotion = -1;
  					
  					
  					// Klickverfolgung aus
  					return false;
  				});	
  			
  			
  			
  			
  			
  			
  			// Bindet die Aktion Rechts
  			$("#"+id+" > .moveright").click(function(){
  				//$("#debug").writeDebug({text:"MoveRight slide:"+slide});
  				if(inMotion == true){
					//$("#debug").writeDebug({text:"inMotion klick ignoriert "});
					return false;
				}
  				inMotion = true;
  				
  				
				if(dirMotion != 1){
					//$("#debug").writeDebug({text:"Richtung wurde geändert."});
					slide=slide-dirMotion;
  				}
  				
  				// Wurde das letzte Element geschoben fang wieder von vorne an
				if(slide < 0){
					slide=anz-1;
  				}
  				
  				// Das nächste Element vor der Animation an das linke Ende setzen
				var move=slide-sicht;
				if(move < 0){
					move = move+anz;
				}
				
				//$("#debug").writeDebug({text:"Pre-Move Right:"+move});
				
  				$("#"+id+"  .sliderelement:eq("+move+")").css({left:endPosLeft});
  				
  				
  				// Erstes Element nach Links aus dem Sichtbereich schieben, Wenn fertig alle restlichen ebenfalls um eine Position weiterschieben
  				//$("#debug").writeDebug({text:"Move ALL:"});
				$("#"+id+"  .sliderelement").animate({left:'+='+pxStep}, function(){
					// Bewegung fertig
  					inMotion = false;
				  	//$("#debug").writeDebug({text:"Move "+slide});  					
				  });
				  // Nächstes Element wählen
				  slide--;
				  // Richtung merken
  					dirMotion = 1;
				  	
				  // Klickverfolgung aus
  				return false;
  			});
  			
  			
  			}// Ende Anzahl > 2
  			else if(anz > 0 && anz <= 2){
  				//$("#debug").writeDebug({text:"Pfeile aus da nur 2 Elemente "});
  				
  				$("#"+id+" > .moveleft").css({'background-image':'none'});
  				$("#"+id+" > .moveright").css({'background-image':'none'});
  				if(anz == 1){
  					// Bei nur einem Teaser wird die Box verkleinert
  					$(".aktionteaserslidercont").css({'width':267});
  					$("#"+id).css({'width':333});
  				}
  			}
  			else{
				//$("#debug").writeDebug({text:"Keine Teaser gefunden"});
				$("#"+id).hide();
  			}
  			
  			
  			
  			
  		}
  		
  		
  		
  		
  		
  		
  		
  		
  		
  		
  	};
  })(jQuery);
  
  
  (function($) {
  	$.fn.showDialog = function(s) {
  		var c = {'bgcolor': '#000', 'bgSpeed': 'normal','dialogSpeed':'fast', 'opac':'0.4', 'id':'hideItAutoDiv', 'autoCenter':'true','dialogBgcolor': '#fff', 'dataBgcolor':'#888','dialogOpac':'0.95'};
  		var s = $.extend(c, s);
  		this.each(function() {
  			// Gibt es die id schon? Ja / Nein dann anlegen
  			jQuery.fn.createModalDiv();
  			//$("#"+s.id).css("background-color",s.bgcolor).height($(document).height()).width($(document).width());
  			// Hide Div auf Automatisch Max. Größe setzen
  			$("#"+s.id).css({'background-color':s.bgcolor,'height':$(document).height(),'width':'100%'});
  			$("#"+s.id).fadeTo(0.1,0,function(){
  				$("#"+s.id).css("display","block").fadeTo(s.bgSpeed,s.opac);
  			});
  			//Wenn Url dann ajax
  			if(s.url){
  				//alert(s.url);
  				var t 		= $(this).attr("id");
  				var tc 		= t+"container";
  				var btC		= t+"btC";
  				var offsetT	= $(window).scrollTop();
  				var offsetL	= $(window).scrollLeft();
  				var topS 	= ($(window).height()/2)+(offsetT-100);
  				var leftS	= ($(window).width()/2)+(offsetL-100);
  							
  				$.ajax({
  					url: s.url,
  					cache: true,
  					dataType: "html",
  					
  					beforeSend : function(){
  						$("#"+t).html('').css({
  							'background-color':s.dialogBgcolor,
  							'height':'100px',
  							'width':'100px',
  							'top':topS,
  							'left':leftS,
  							'padding':'10px',
  							'z-Index':'20000',
  							'overflow':'hidden'
  						}).fadeTo(1,s.dialogOpac).slideDown(s.dialogSpeed);
  						jQuery.fn.createModalDiv({'id':'autoDivLoader', 'apTo':'#'+t, 'pos':'relative'})
  						.css({
  							'background-image':'url(ajax-loader-big.gif)',
  							'background-repeat':'no-repeat',
  							'background-position':'center',
  							'width':'100%',
  							'height':'100%'
  						}).show();						
  					},
  					error : function(){
  						alert("Es ist ein Fehler aufgetreten, leider konnte die Seite nicht geladen werden.");
  						jQuery.fn.hideDialog();						
  					},
  					success: function(html){
  						if(s.autoCenter){							
  							var dOffset 	= $("#"+t).offset();
  							//$("#debug").writeDebug({text:"left DIV:"+dOffset.left+" top DIV:"+dOffset.top+" id="+t});
  							//$("#debug").writeDebug({text:"topS:"+topS+" Offset:"+offsetT+" Doc="});
  							//$("#debug").writeDebug({text:"leftS:"+leftS});
  							// Daten laden Daten DIV
  							jQuery.fn.createModalDiv({'id':tc, 'apTo':'#'+t, 'pos':'relative'}).css({'background-color':s.dataBgcolor}).hide().html(html);
  							// schliessen
  							jQuery.fn.createModalDiv({'id':btC, 'apTo':'#'+t}).css({'background-color':s.dialogBgcolor,"cursor":"pointer"}).hide().html('<a href="#" class="bt_25x25_bg" id="smartbox_hide" title="Schliessen"><span class="bt_sy sy_close"></span></a>');
  							
  							
  							
  							
  
  							
  							
  							
  							
  							
  							var cW	= $("#"+tc).width();
  							var cH	= $("#"+tc).height();
  							
  							if(cH > $(window).height()){
  								cH  = $(window).height() -20;
  								$("#"+t).css({'overflow':'auto'});
  							}
  							if(cW > $(window).width()){
  								cW  = $(window).width() -20;
  								$("#"+t).css({'overflow':'auto'});
  							}
  							
  							
  							var leftC 	= offsetL+(($(window).width())/2)-(cW/2);
  							var topC 	= offsetT+(($(window).height())/2)-(cH/2);
  							$("#autoDivLoader").fadeOut(function(){
  								$("#"+t).animate({
  									left: leftC,
  									paddingTop:'20px',
  									paddingLeft:'10px',
  									paddingRight:'10px',
  									paddingBottom:'10px',
  									width:cW,
  									top:topC,
  									height:cH
  								}, function(){
  									//$("#autoDivLoader").fadeOut();
  									$("#"+tc).fadeIn(s.fadeSpeed);
  									$("#"+btC).css({'left':cW}).fadeIn(s.fadeSpeed);
  								});						
  							});
  						}
  						else{
  							$("#"+t).html(html).css('z-Index', 2000).slideDown(s.dialogSpeed);
  						}
  						$("#"+btC).mousedown(function(){$("#"+t).hideDialog();return false;});
  						
  						
  						
  					}
  				});
  			}
  			else{
  				$("#"+s.id).css('z-index', '10000');
  				$(this).css('z-Index', 10001).fadeTo(500,s.dialogOpac).slideDown(s.dialogSpeed);
  				/*
  				var zIndexNumber = 1000;
  				var maxZ = 0;
  				$('div').each(function() {
  					var z = $(this).css('z-Index');
  					if(z != "auto"){
  						if(z > maxZ){
  							maxZ = z;
  						}
  					}
  					//$(this).css('zIndex', zIndexNumber);
  					zIndexNumber -= 10;
  				});
  				//$("#debug").writeDebug({text:"Z Max:"+maxZ});
  				*/
  			}
  		});
  	return this;
  	};
  })(jQuery);

  
  
  (function($){
  	$.fn.hideDialog = function(s) {
  		
  		var c = {'bgSpeed': 'normal','dialogSpeed':'slow', 'id':'hideItAutoDiv'};
  		var s = $.extend(c, s); 
  		
  		this.each(function() {
  			// Div nach hinten legen, ausblenden, ausschalten.			
  			$("#"+s.id).css('z-index', 0).fadeTo(s.bgSpeed,0, function(){
  				$("#"+s.id).css("display","none")
  			});			
  			// Modal Dialogdiv aus blenden
  			$(this).slideUp(s.dialogSpeed);
  		});
  		
  		return $(this);		
  	};
  })(jQuery);
   
   
   (function($){
   	$.fn.createModalDiv = function(s) {
   		var c = {'id': 'hideItAutoDiv','apTo':'body','pos':'absolute'};
   		var s = $.extend(c, s);
   		// Gibt es die id schon?
   		var id = $("#"+s.id).attr("id");
   		// Nein? Dann leg ein neues div an.
   		if(id != s.id){
   			//$("#debug").writeDebug({text:"Create :"+s.id});
   			$('<div id="'+s.id+'" style="position:'+s.pos+';top:0px;left:0px;display:none;"></div>').appendTo(s.apTo);
   			//alert("div neu:"+s.id);
   		}
   		var ret  = $("#"+s.id);
   		return ret;
   	};
   })(jQuery);
   
  (function($){
  	$.fn.showZoom = function(s) {
  		var c = {'bgcolor': '#000', 'dialogBgcolor': '#fff', 'fadeSpeed': 'slow'};
  		var s = $.extend(c, s);
  		
  		//$("#debug").writeDebug({text:"start"});
  
  		
  		var n = "";
  		
  		// setze Cursor
  		this.css("cursor","pointer");
  		// setze Eventhandler
  		
  		this.click(function(event){
  			//$("#debug").writeDebug({text:event.target.name});
  			return false;
  		});
  		
  		this.mousedown(function(event){
  			
  			
  			s.src = $(this).attr("href");
  			s.alt = $(this).attr("alt");
  			
  			if(s.src == "" || s.src == "#"){
  				//$("#debug").writeDebug({text:"Return da kein href angeben"});
  				return;
  			}
  						
  			//$("#debug").writeDebug({text:s.src});
  						
  			// Bubble aus
  			event.stopImmediatePropagation();
  			
  			jQuery.fn.createModalDiv({'id':'zoomDiv'}).html('<div id="zoomloader" style="height:100%;width:100%"></div>');
  			
  			
  			n = $("html").queue("fx");
  						
  			var q = n.length;
  						
  			//$("#debug").writeDebug({text:"Es laufen noch:"+q});
  			if(q > 0){
  					//$("#debug").writeDebug({text:"nix schliessen - is noch in betrieb"});
  					return;
  			}
  			var offsetT	= $(window).scrollTop();
  			var offsetL	= $(window).scrollLeft();
  			
  			
  			var topS 	= ($(window).height()/2)+(offsetT-100);
  			
  			
  			
  			
  			var leftS	= ($(window).width()/2)+(offsetL-100);
  			
  			//$("#debug").writeDebug({text:"topS:"+topS+" Offset:"+offsetT});
  			//$("#debug").writeDebug({text:"leftS:"+leftS});
  			
  			$("#zoomDiv").css({
  				'background-color':s.dialogBgcolor,
  				'height':'100px',
  				'width':'100px',
  				'top':topS,
  				'left':leftS,
  				'padding':'10px'
  			});
  			
  			$("#zoomDiv").showDialog({'bgcolor':s.bgcolor});
  			
  			
  			$("#zoomloader").css({
  				'background-image':'url(ajax-loader-big.gif)',
  				'background-repeat':'no-repeat',
  				'background-position':'center'	
  			});
  			
  			
  			var img = new Image();
  			
  			$(img).load(function(){
  				//$("#debug").writeDebug({text:"Bild geladen:"});
  				var width	= $(this).attr("width");
  				//$("#debug").writeDebug({text:"width:"+width});
  				
  				var height	= $(this).attr("height");
  				//$("#debug").writeDebug({text:"height:"+height});
  				
  				var leftZ 	= offsetL+(($(window).width())/2)-(width/2);
  				//$("#debug").writeDebug({text:"leftZ:"+leftZ});
  				
  				var topZ 	= offsetT+(($(window).height())/2)-(height/2);
  				
  				
  				//$("#debug").writeDebug({text:"topZ:"+topZ});
  				////$("#debug").writeDebug({text:"Bild:"+width+" "+height+" "+leftZ+" "+topZ});
  				
  				$(this).hide();
  				
  				$("#zoomDiv").animate({
  						left: leftZ,
  						padding:'10px',
  						width:width,
  						top:topZ,
  						height:height
  				}, function(){
  					//$("#debug").writeDebug({text:"Zoom Div angepasst.."});
  					$("#zoomloader").append(img);
  					$(img).fadeIn(s.fadeSpeed); 
  				});
  			})
  			.error(function(){
  				alert("Das Bild konnte leider nicht geladen werden.");
  				$("#zoomDiv").hideDialog();
  			})
  			.attr('src', s.src)
  			.attr('title', "Zoom Ansicht. Zum schliessen bitte klicken.")
  			.css("cursor","pointer")
  			.css("border","1px solid #cfcfcf");
  			
  			$("#zoomDiv").click(function(event){
  				n = $("#zoomDiv").queue("fx");
  				var q = n.length;
  				//$("#debug").writeDebug({text:"Es laufen noch:"+q});
  				
  				event.stopImmediatePropagation();
  				
  				if(q > 0){
  					//$("#debug").writeDebug({text:"nix schliessen - is noch in betrieb"});
  					return false;
  				}
  				
  				//$("#debug").writeDebug({text:"schliessen"});
  				
  				$("#zoomloader").fadeOut(s.fadeSpeed, function(){
  					$("#zoomDiv").hideDialog();
  					//$("#debug").writeDebug({text:"hide dialog"});
  				});				
  			});
  		});
  		return false;
  	};
})(jQuery);
  
  (function($){
  	$.fn.showZoomSlide = function(s) {
  		var c = {'bgcolor':'#000',
  			'dialogBgcolor':'#fff',
  			'fadeSpeed':'fast',
  			'slidePos':'N',
  			'body':'.wrapper',
  			'aniSpeed':'fast',
  			'startW':'450',
  			'startH':'235',
  			'useArrow':true,
  			'border':'5px solid #555'
  		};
  		var s = $.extend(c, s);
  		
  		//$("#debug").writeDebug({text:"start showZoomSlide"});
  		//$("#debug").writeDebug({text:"wrapper:"+$(".wrapper").width()});
  
  
  		
  		var n = "";
  		
  		// setze Cursor
  		this.css("cursor","pointer");
  		// setze Eventhandler
  		
  		this.click(function(event){
  			//$("#debug").writeDebug({text:event.target.name});
  			return false;
  		});
  		
  		this.mousedown(function(event){
  		
  		
  			
  			
  			s.src = $(this).attr("href");
  			s.alt = $(this).attr("alt");
  			
  			if(s.src == "" || s.src == "#"){
  				//$("#debug").writeDebug({text:"Return da kein href angeben"});
  				return;
  			}
  			
  						
  			//$("#debug").writeDebug({text:s.src});
  			
  			
  			
  			// Bubble aus
  			event.stopImmediatePropagation();
  			
  			jQuery.fn.createModalDiv({'id':'zoomSlideDiv'}).html('<div id="zoomslideloader" style="height:100%;width:100%"></div>');
  			
  			
  			n = $("html").queue("fx");
  						
  			var q = n.length;
  						
  			//$("#debug").writeDebug({text:"Es laufen noch:"+q});
  			if(q > 0){
  					//$("#debug").writeDebug({text:"nix schliessen - is noch in betrieb"});
  					return;
  			}
  			var offsetT	= $(window).scrollTop();
  			var offsetL	= $(window).scrollLeft();
  			
  			
  			var topS 	= ($(window).height()/2)+(offsetT-100);
  			var leftS	= ($(window).width()/2)+(offsetL-100);
  			
  			if(s.slidePos == "right"){
  				var leftS 	= (($(window).width()-$(s.body).width())/2)+$(s.body).width();
  				var topS	= event.pageY-15;
  			}
  			
  			//$("#debug").writeDebug({text:"topS:"+topS+" Offset:"+offsetT});
  			//$("#debug").writeDebug({text:"leftS:"+leftS});
  			
  			
  			//$("#debug").writeDebug({text:"leftS:"+event.pageX});
  
  		
  			
  			$("#zoomSlideDiv").css({
  				'background-color':s.dialogBgcolor,
  				'height':s.startH,
  				'width':s.startW,
  				'top':topS,
  				'left':leftS,
  				'border':s.border
  			});
  			
  			//$("#zoomSlideDiv").showDialog({'bgcolor':s.bgcolor});
  			
  			
  			$("#zoomslideloader").css({
  				'background-image':'url(ajax-loader-big.gif)',
  				'background-repeat':'no-repeat',
  				'background-position':'center'	
  			});
  			
  
  
  			var img = new Image();
  			
  			$(img).load(function(){
  				//$("#debug").writeDebug({text:"Bild geladen:"});
  				
  				var width	= $(this).attr("width");
  				
  				
  				
  				//$("#debug").writeDebug({text:"width:"+width});
  				
  				var height	= $(this).attr("height");
  				//$("#debug").writeDebug({text:"height:"+height});
  				
  				
  				//var leftZ 	= offsetL+(($(window).width())/2)-(width/2);
  				//var leftZ 	= event.pageX;
  				
  				var leftZ 	= 1010;
  				
  				
  				//$("#debug").writeDebug({text:"leftZ:"+leftZ});
  				
  				//var topZ 	= offsetT+(($(window).height())/2)-(height/2);
  				var topZ 	= event.pageY;
  				
  				
  				if(s.slidePos == "N"){
  					//Div wird mit dem Nordpol auf die Klickposition gebracht
  					var topZ 	= event.pageY;
  					var leftZ 	= event.pageX - (width/2);
  				
  				}
  				
  				
  				
  				
  				if(s.slidePos == "right"){
  					// Div soll am rechten Rand des Inhalts positioniert werden
  					var leftZ 	= (($(window).width()-$(s.body).width())/2)+$(s.body).width();
  					
  					
  					// Reicht der Platz nicht wird gedreht?
  					
  					if( (($(window).width()-$(s.body).width())/2) < width ){
  						// Platz reicht nicht für die gewünschte Anzeige
  						
  						leftZ = leftZ-width;
  					
  					}
  					
  					
  					
  					
  					
  					// Position von oben ist die Klick Event Position
  					var topZ 	= event.pageY-15;
  					if(s.useArrow == true){
  						$("#zoomSlideDiv").append('<div style="background:url(/img/DE2/navi/arrow_layer_right.png) top left no-repeat #555;height:55px;width:45px;position:absolute;top:0px;left:-46px;"></div>');
  					}					
  				}
  				if(s.slidePos == "left"){
  					// Div soll am linken Rand des Inhalts positioniert werden
  					//var leftZ 	= (($(window).width()-$(s.body).width())/2);
  					
  					var leftZ 	= $(window).width()-$(s.body).width();
  					
  										
  					$(s.body).css({'border':'1px solid red'});
  					
  					// Position von oben ist die Klick Event Position
  					var topZ 	= event.pageY-15;
  					if(s.useArrow == true){
  						$("#zoomSlideDiv").append('<div style="background:url(/img/DE2/navi/arrow_layer_right.png) top left no-repeat #555;height:55px;width:45px;position:absolute;top:0px;left:-46px;"></div>');
  					}					
  				}
  				
  				
  				
  				//$("#debug").writeDebug({text:"topZ:"+topZ});
  				////$("#debug").writeDebug({text:"Bild:"+width+" "+height+" "+leftZ+" "+topZ});
  				
  				$(this).hide();
  				
  				$("#zoomSlideDiv").animate({
  						left: leftZ,
  						padding:'5px',
  						width:width,
  						top:topZ,
  						height:height
  				},s.aniSpeed, function(){
  					//$("#debug").writeDebug({text:"Zoom Div angepasst.."});
  					$("#zoomslideloader").append(img);
  					$(img).fadeIn(s.fadeSpeed); 
  				});
  			})
  			.error(function(){
  				alert("Das Bild konnte leider nicht geladen werden.");
  				$("#zoomSlideDiv").hideDialog();
  			})
  			.attr('src', s.src)
  			.attr('title', "Zum schliessen bitte klicken.")
  			.css("cursor","pointer")
  			.css("border","1px solid #cfcfcf");
  			
  			$("#zoomSlideDiv").click(function(event){
  				n = $("#zoomSlideDiv").queue("fx");
  				var q = n.length;
  				//$("#debug").writeDebug({text:"Es laufen noch:"+q});
  				
  				event.stopImmediatePropagation();
  				
  				if(q > 0){
  					//$("#debug").writeDebug({text:"nix schliessen - is noch in betrieb"});
  					return false;
  				}
  				
  				//$("#debug").writeDebug({text:"schliessen"});
  				
  				$("#zoomslideloader").fadeOut(s.fadeSpeed, function(){
  					$("#zoomSlideDiv").hideDialog();
  					//$("#debug").writeDebug({text:"hide dialog"});
  				});				
  			});
  		
  		});
  		return false;
  	};
})(jQuery);
  
 
 (function($){
  	$.fn.showPricelist = function(s) {
  		var c = {'id': 'debug'};
  		var s = $.extend(c, s);
 		
 		// Ist das Datenblatt auch da?
 		if(!$(this).attr("id")){
 			return false;
 		}
 		
 		
 		//Id des Containers
 		var id = $(this).attr("id");
 		//Anzahl Motoren
 		var m_anzahl = $(".Benzinmotor,.Dieselmotor").length;
 		$("#filterAnzeigeAnzahlMax").html(m_anzahl);
 		//Anzahl Ausgewählte Motoren
 		var m_anzahl_out = m_anzahl;
 		$("#filterAnzeigeAnzahlAuswahl").html(m_anzahl_out);
 		//Welcher Zoom Mode wurde als letztes genutzt
 		var zoomMode = "";
 		//Welche Breite soll für das Eingeblendete (Effizienz Klasse) DIV berücksichtigt werden
 		var size = 320;
 		
 		function getScreenSize(size){
 			// AnzeigeModus für die Verbrauchsklassenbilder
 			// Reicht die Breite des Bildschirms nicht wird das Bild mit einem einfachen
 			// Zoom effekt versehen
 			
 			// Verfügbare Breite
 			var width_diff = ($(window).width() - $("#"+id).width())/2;
 			//$("#debug").writeDebug({text:"Diff Breite:"+width_diff});
 			
 			
 			
 			if(width_diff >= size && (zoomMode=="zoom" || zoomMode =="")){
 				//$("#debug").writeDebug({text:"Breite reicht!!"+size});
 				// Platz reicht aus für aktion neben der Liste
 				// Klasse entfernen und event entfernen
 				$(".co2klasse a").removeClass("imgzoomlink").unbind().showZoomSlide();
 				zoomMode = "movediv";
 			}
 			else if(width_diff < size && (zoomMode=="movediv" || zoomMode =="")){
 				// Platz reicht nicht aus, normale Zoomfunktion einbauen
 				$(".co2klasse a").unbind().addClass("imgzoomlink").showZoom();
 				
 				//$("#debug").writeDebug({text:"Breite reicht nicht :-("+size});
 				zoomMode = "zoom";
 			}
 			
 			
 		
 		} 
 		
 		// Init Bildgroesse
 		
 		getScreenSize(size);
 		
 		
 		
 		function filterListCounter(){
 				//$("#debug").writeDebug({text:"Starte filterListCounter()"});
 			m_anzahl_out = 0;
 				//$("#debug").writeDebug({text:"m_anzahl_out="+m_anzahl_out});
 			$(".Benzinmotor,.Dieselmotor").map(function(){
 				
 				var tmp = $(this).css("color");
 					//$("#debug").writeDebug({text:"Map="+tmp});
 				
 				if($(this).is(':visible') && (tmp == "#333" || tmp == "rgb(51, 51, 51)")){
 					m_anzahl_out++;
 				}
 			});
 			$("#filterAnzeigeAnzahlAuswahl").html(m_anzahl_out);
 		}
 		
  		function filterList(){
 			// Fkt holt die Sliderwerte und vgl. diese mit den
 			// Werten der Felder. Danach werden dann bestimmte Felder
 			// aktiviert bzw. ausgegraut.
 			// Silder Values
 			var minCOVal = ($("#filterCO2Slider").slider("values", 0));
 			var maxCOVal = ($("#filterCO2Slider").slider("values", 1));
 			var minPRVal = ($("#filterPriceSlider").slider("values", 0));
 			var maxPRVal = ($("#filterPriceSlider").slider("values", 1));
 			
 			//$("#debug").writeDebug({text:"VAL:"+maxPRVal});
 			
 			// Tausender Punkt
 			var minPRValStr = minPRVal.toString();
 			var l = minPRValStr.length;
 			if(l > 3){
 				//$("#debug").writeDebug({text:"1000er Punkt"});
 				minPRValStr = minPRValStr.substring(0,l-3)+"."+minPRValStr.substring(l-3,l);
 				//$("#debug").writeDebug({text:"Neu:"+minPRValStr});
 				//minPRVal = test;
 			}
 			var maxPRValStr = maxPRVal.toString();
 			var l = maxPRValStr.length;
 			if(l > 3){
 				//$("#debug").writeDebug({text:"1000er Punkt"});
 				maxPRValStr = maxPRValStr.substring(0,l-3)+"."+maxPRValStr.substring(l-3,l);
 				//$("#debug").writeDebug({text:"Neu:"+maxPRValStr});
 				//minPRVal = test;
 			}
 			
 						
 			// Textfelder neben den Slidern aktualisieren
 			$("#filterCO2Min").html("CO2-Emission komb. von "+minCOVal+" g/km");
 			$("#filterCO2Max").html("bis "+maxCOVal+" g/km");
 			$("#filterPriceMin").html("Preis von "+minPRValStr+" &#8364;");
 			$("#filterPriceMax").html("bis "+maxPRValStr+" &#8364;");
 			// Betreffende Felder aktivieren / deaktivieren
 			$(".Benzinmotor,.Dieselmotor").map(
 				function(){
 					var co2 = parseInt($(this).children("div").children(".co2wert").text());
 					var price = parseInt(($(this).children("div .modellGrundpreis").text()).replace(/\./,""));
 					var pContA = $(this).children("div").children("a");
 					var pContIA = $(this).children("div").children("i").children("a");
 					
 					if(price < minPRVal ||  price > maxPRVal || co2 < minCOVal || co2 > maxCOVal){
 						$(this).css("color","#cfcfcf");
 						pContA.css("color","#cfcfcf");
 						pContIA.css("color","#cfcfcf");
 					}
 					else{
 						$(this).css("color","#333");
 						pContA.css("color","#333");
 						pContIA.css("color","#333");
 					}
 					//filterListCounter();
 				}
 			);
 			
 		}
  		
  		//$("#debug").writeDebug({text:"start preisliste"});
  		
  		// Globale Werte für die Max / Min Werte der Liste
  		var maxPriceInList	= 0;
 		var minPriceInList	= 30000;
 		var maxCo2InList	= 0;
 		var minCo2InList	= 200;
 		
 		// Max / Min Werte ermitteln
 		$(".Benzinmotor,.Dieselmotor").map(
 			function(){
 			
 			
 				//$("#debug").writeDebug({text:"P="+ parseInt($(this).children("div .modellGrundpreis").text()) });
 				
 				var priceMax	= (Math.ceil(parseInt($(this).children("div .modellGrundpreis").text().replace(/\./,""))/1000))*1000;
 				var priceMin	= (Math.floor(parseInt($(this).children("div .modellGrundpreis").text().replace(/\./,""))/1000))*1000;
 				var co2Max	= Math.ceil((parseInt($(this).children("div").children(".co2wert").text()))/10)*10;
 				var co2Min	= Math.floor((parseInt($(this).children("div").children(".co2wert").text()))/10)*10;
 				
 				if(maxPriceInList < priceMax){
 					maxPriceInList = priceMax;
 				}
 				if(minPriceInList > priceMin){
 					minPriceInList = priceMin;
 				}
 				if(maxCo2InList < co2Max){
 					maxCo2InList = co2Max;
 				}
 				if(minCo2InList > co2Min){
 					minCo2InList = co2Min;
 				}
 			}
 		);
 		
 		//$("#debug").writeDebug({text:"Max Preis="+maxPriceInList});
 		//$("#debug").writeDebug({text:"Min Preis="+minPriceInList});
 		//$("#debug").writeDebug({text:"Max Co2="+maxCo2InList});
 		//$("#debug").writeDebug({text:"Min Co2="+minCo2InList});
 		
 		//Slider aktivieren
 		
 		$("#filterCO2Slider").slider({
 						animate: true,
 						min:minCo2InList-5, 
 						max:maxCo2InList+5,
 						range:true,
 						step:5,
 						values:[minCo2InList,maxCo2InList],
 						change:function(){},
 						start:function(){},
 						stop:function(){filterListCounter();},
 						slide:function(){
 							filterList();
 						}
 		});
 		$("#filterPriceSlider").slider({
 						animate: true,
 						min:minPriceInList-500, 
 						max:maxPriceInList+500,
 						range:true,
 						step:100,
 						values:[minPriceInList,maxPriceInList],
 						change:function(){},
 						start:function(){},
 						stop:function(){filterListCounter();},
 						slide:function(){
 							filterList();
 						}
 		});
 		
 		// Slider Griffe mit kleinen Stiche versehen
 		//ui-icon ui-icon-grip-dotted-vertical 
 		// Jetzt: Pfeile rechts / links
 		$('.ui-slider-handle').append('<span class="ui-icon ui-icon-triangle-2-e-w"></span>');
 		
 		// Startwerte ausführen
 		filterList();
 		
 		// Navigation der Tabs (Aus / Einblenden der Liste und Filter)
 		$("#tabPricelistContainer > .tabBt").click(
 					function(){
 						$("#tabPricelistContainer  .tabBtAktiv").addClass("tabBtNormal").removeClass("tabBtAktiv");
 						$("#optliniePreis_1000 div").css({'display':'none'});
 						
 						var tabId=$(this).attr("id");
 						var href= $("#"+tabId+" a").attr("href");
 						
 						if(href=="#GP"){
 							//$("#optliniePreis_1000").css({'height':'160px'});
 							$("#optionenListe").css({'display':'none'});
 							$("#Grundpreis").css({'display':'block'});
 							//$(this).css({'background-color':'#fff'});
 							$(this).removeClass("tabBtNormal").addClass(" tabBtAktiv");
 							
 							$("#filterGP, #filterGP div").css({'display':'block'});
 						}
 						if(href=="#OA"){
 							//$("#optliniePreis_1000").css({'height':'100px'});
 							$("#optionenListe").css({'display':'block'});
 							$("#Grundpreis").css({'display':'none'});
 							//$(this).css({'background-color':'#fff'});
 							$(this).removeClass("tabBtNormal").addClass(" tabBtAktiv");
 							
 							$("#filterOA, #filterOA div").css({'display':'block'});
 						}
 						if(href=="#ALL"){
 							//$("#optliniePreis_1000").css({'height':'200px'});
 							$("#optionenListe").css({'display':'block'});
 							$("#Grundpreis").css({'display':'block'});
 							//$(this).css({'background-color':'#fff'});
 							
 							$(this).removeClass("tabBtNormal").addClass(" tabBtAktiv");
 							
 							
 							
 							
 							$("#filterOA, #filterOA div").css({'display':'block'});
 							$("#filterGP, #filterGP div").css({'display':'block'});
 						}
 
 						return false;
 					}
 		);
 		
 		// Aus / einblenden der Optionsgruppen und linien
 		$(".preisKat, .liniePreis").css("cursor","hand");
 		$(".preisKat, .liniePreis").click(
 			function(){
 				var par = this.id;
 				var div = "opt"+this.id;
 				var titel = "#titel"+this.id;
 				/* Wenn noch eine animation läuft mach nix */
 				//var n = $("#"+div).queue("fx");
 				
 				//var n = $("#"+par+" span .dirImageLoader").queue("fx");
 				
 				var n = $("body").queue("fx");
 				
 				//alert(n.length);
 				
 				if(n == 0){
 				
 					if($("#"+div).css("display") == "block"){
 						//Etwa vorhandene Slider müssen erst dank IE 7 deaktiviert werden
 						$("#"+div+" div .slider").map(
 							function(){
 								$(this).hide();							
 							}
 						);
 						//$("#"+par+" span .dirImage").removeClass("dirImage").addClass("dirImageLoader");
 						
 						$("#"+par+" span .dirImage").fadeTo("fast",0.1,function(){
 							$(this).removeClass("dirImage").addClass("dirImageLoader").fadeTo("fast",1);
 						});//.removeClass("dirImage").addClass("dirImageLoader");
 						
 						
 						$("#"+div).slideUp("slow",
 							function(){
 								//$("#"+par+" span .dirImageLoader").fadeTo("fast",0).removeClass("dirImageLoader").fadeTo("fast",1).addClass("dirImageRight");
 								$("#"+par+" span .dirImageLoader").fadeTo("fast",0.1,function(){
 									$(this).removeClass("dirImageLoader").addClass("dirImageRight").fadeTo("fast",1);
 								});   //.removeClass("dirImageLoader").fadeTo("fast",1).addClass("dirImageRight");
 								$(titel+" .listenBalkenTitel").fadeTo("slow",0.1);
 							});
 						
 						
 					}
 					else{
 						//$("#"+par+" span .dirImageRight").removeClass("dirImageRight").addClass("dirImageLoader");
 						$("#"+par+" span .dirImageRight").fadeTo("fast",0.1,function(){
 							$(this).removeClass("dirImageRight").addClass("dirImageLoader").fadeTo("fast",1);
 						});//removeClass("dirImageRight").addClass("dirImageLoader");
 						$("#"+div).slideDown("slow",
 							function(){							
 								//$("#"+par+" span .dirImageLoader").removeClass("dirImageLoader").addClass("dirImage");
 								$("#"+par+" span .dirImageLoader").fadeTo("fast",0.1,function(){
 									$(this).removeClass("dirImageLoader").addClass("dirImage").fadeTo("fast",1);
 								});
 								
 								//removeClass("dirImageLoader").addClass("dirImage");
 								
 								$(titel+" .listenBalkenTitel").fadeTo("slow",1);							
 								//Etwa vorhandene Slider müssen erst dank IE 7 aktiviert werden
 								$("#"+div+" div .slider").map(
 									function(){
 										$(this).show();							
 									}
 								);
 							}
 						);
 						
 						
 					}
 				}
 				
 				
 				return false;
 			}
 		);
 		
 		// Ausgabe Checkboxen
 		$("input:checkbox").click(
 			function(){
 				if(this.name == "D"){
 					if(this.checked == true){
 						$(".Dieselmotor").slideDown("slow",function(){filterListCounter();});
 					}
 					else{
 						$(".Dieselmotor").slideUp("slow",function(){filterListCounter();});
 					}
 				}
 				if(this.name == "B"){
 					if(this.checked == true){
 						$(".Benzinmotor").slideDown("slow",function(){filterListCounter();});
 					}
 					else{
 						$(".Benzinmotor").slideUp("slow",function(){filterListCounter();});
 					}
 				}
 				if(this.name == "GP"){
 					if(this.checked == true){
 						$("#Grundpreis").slideDown("slow");
 					}
 					else{
 						$("#Grundpreis").slideUp("slow");
 					}
 				}
 				if(this.name == "SA"){
 					if(this.checked == true){
 						$(".ausgabeOptSerie").slideDown("slow");
 					}
 					else{
 						$(".ausgabeOptSerie").slideUp("slow");
 					}
 				}
 				if(this.name == "OA"){
 					if(this.checked == true){
 						$(".ausgabeOptOption").slideDown("slow");
 					}
 					else{
 						$(".ausgabeOptOption").slideUp("slow");
 					}
 				}
 				
 			}
 		);
 		
 		// Resize Event
 		$(window).resize(function(){
 			//$("#debug").writeDebug({text:"Handler for .resize() called."});
 			getScreenSize(size);
 		});
 		
  		var ret  = $(this);
  		return ret;
  	};
 })(jQuery);
   
   
   (function($){
   	$.fn.stdTabs = function(s) {
   		var c = {'id': 'debug'};
   		var s = $.extend(c, s);
   		//$("#debug").writeDebug({text:"Starte std Tabs"});
   		
   		var parent = $(this).attr("id");
  
   		//$("#debug").writeDebug({text:"Parent id ="+parent});
   		
   		// Klick Handler
   		$("#"+parent+" > .tabCont > .tabBg > .tabBtCont > .tabBt").click(
   					function(){
   						//$("#debug").writeDebug({text:"Klick erfolgt..."});
   						// ID des Tabs holen
   						var tabId = $(this).attr("id");
   						//$("#debug").writeDebug({text:"Id war:"+tabId});
   						// Link des Datenfeldes holen
   						var href= $("#"+tabId+" a").attr("href");
   						//$("#debug").writeDebug({text:"href:"+href});
   						// Alte Tabs löschen, neuen setzen
   						$("#"+parent+" .tabBt").addClass("tabBtNormal").removeClass("tabBtAktiv");
   						$("#"+tabId).addClass("tabBtAktiv").removeClass("tabBtNormal");
   						//Alle Inhalte ausblenden
   						$(".tabData").css({"display":"none"});
   						//gewählten Inhalt einbleden
   						$(href).css({"display":"block"});
   						// Klick weiterverarbeitung abbrechen 						
   						return false;		
   					}
   		);
   		var ret  = $("#"+parent);
   		return ret;
   	};
 })(jQuery);
 
   (function($){
   	$.fn.hnameTop = function() {
   		
   		var inMotion = false;
   		var open = false;
   		
   		
   		function doOpenInfo(parent){
   			if(inMotion == true || open == true){
   				return;
   			}
   			inMotion = true;
   			//$("#debug").writeDebug({text:"Start doOpenInfo"});
			$(parent).animate({'height':307}, function(){
				//$("#debug").writeDebug({text:"Slide Down complete"});
				inMotion = false;
				open = true;
			});
   		}
   		
   		function doCloseInfo(parent){
   			if(inMotion == true || open == false){
   				return;
   			}
   			inMotion = true;
			//$("#debug").writeDebug({text:"Start doCloseInfo"});
			$(parent).animate({'height':29}, function(){
				//$("#debug").writeDebug({text:"Slide Down complete"});
				inMotion = false;
				open = false;
			});
   		}
   		
   		
   		//$(this).css({'background-color':'green'});
   		
   		var parent = $(this).attr("id");
   		//var child = $(this+" div:eq(0)").attr("id");
  
   		//$("#debug").writeDebug({text:"Parent id ="+parent});
   		
   		if(parent == "undefined"){
   			
   			//$("#debug").writeDebug({text:"id not found"});
   			return false;
   		
   		}
   		else{
   			//$("#debug").writeDebug({text:"Starte hnameTop"});
   			
   			// Init Start?
   			/*
   			$("#"+parent).delay(800).animate({'height':300}, function(){
				//$("#debug").writeDebug({text:"Slide Down complete"});
				inMotion = false;
				open = true;
			});
			*/
   			
   			
   			
   			
   			// Klick Handler zum öffnen
   			$(this).click(function(){
   				doOpenInfo($(this));
   			});
   			/*
   			// Mouse Enter Handler zum öffnen
   			$(this).mouseenter(function(){
			   doOpenInfo($(this));
   			});
   			*/
   			/*
   			// Mouse Leave Handler zum schliesse
   			$(this).mouseleave(function(){		
   				doCloseInfo($(this));
   			});
   			*/
   			
   			$("#"+parent+" #closehinfo").click(function(){
   				doCloseInfo($("#"+parent));
   				return false;
   			});
   			
   			
   			
   		}
   		
   		
   		
   		
   		
   		
   	};
 })(jQuery); 
