function cTeaser(achse,linkname,linkkey,teaserElemente,afterTeaserFunktion)
{
	this.__construct = function(achse,linkname,linkkey,teaserElemente,afterTeaserFunktion)
	{		
		if(!achse)
		{
			return false;
		}	
		
		this.teaserElemente = (teaserElemente) ? teaserElemente : 0;
		this.arSlideShow = new Array();
		this.arSlideShow['obj'] = false;
		this.afterTeaserFunktion = afterTeaserFunktion;

		this.ajax = new hssJX();		
		this.arAjax = new Array();
		this.arAjax['cube'] = 'jx_teaser';
		this.arAjax['achse'] = achse;
		this.arAjax['linkname'] = linkname;
		this.arAjax['linkkey'] = linkkey;
		addEvent(window,"load",this.load.scope(this));
	}

	this.loadSlideShow = function(SlideShowObj)
	{	
		this.arSlideShow['obj'] = SlideShowObj;		
	}	

	this.loadSlideShowConfig = function(ausrichtung)
	{
//		this.arSlideShow['config'] = new Array();
		this.arSlideShow['ausrichtung'] = ausrichtung;
	}

	
	this.load = function(e)
	{
		this.objTeaser = new CElement("TEASER_" + achse);		//--- 1 Teaser geladen um höhe zu bestimmen
		this.TeaserHeight = this.objTeaser.prop['abs_height'];		
		if(!this.objTeaser.obj)
		{
			return false;
		}		
		this.objTeaser.setStyle("display","none");
		this.objBottom = new CElement("TEASER_BOTTOM_ID");		//--- Element unter dem Content damit Höhe von white Space bestimmt werden kann

		//--- neues Element damit per innerHTML die neuen Teaser eingehängt werden können
		this.objTeaserPaste = new CElement(false,"div");
		this.objTeaserPaste.appendNode(this.objTeaser.parentNode);	
		if(e)
		{
			this.SendAndReceive();
		}
	}
	
	//--- Teaser über Ajax nachladen und in nicht gefüllten Raum setzen
	this.SendAndReceive = function()
	{		
		if(this.teaserElemente)
		{
			this.countTeaser = this.teaserElemente;
		}else{
			this.calcTeaserAnzahl();
		}
		
		if(this.countTeaser > 0)
		{			
			this.arAjax['anzahl'] = (this.arSlideShow['obj']) ? 99999 : this.countTeaser;
			this.ajax.setLoadImage(this.objTeaserPaste.obj,true);
			this.ajax.Exec("../start/jx_ajax.php", false, this.arAjax, "GET", this.afterTeaserAjax.scope(this));			
		}else{			
			if(this.arSlideShow['obj'])
			{
				this.arSlideShow['obj'].init(this.arSlideShow['ausrichtung']);
				this.arSlideShow['obj'].setButtons(false);
			}
		}
	}
	
	//--- Wenn der Teaser zurück kommt
	this.afterTeaserAjax = function()
	{
        if (this.ajax.IsReady())
        {			
			this.objTeaserPaste.obj.innerHTML = this.ajax.GetResponseText();			
			this.objTeaser.deleteNode();
			if(this.arSlideShow['obj'])
			{				
				this.arSlideShow['obj'].init(this.arSlideShow['ausrichtung']);
				if(this.arSlideShow['ausrichtung'])
				{
					this.arSlideShow['obj'].setLeinwandStyle("height",parseInt(this.countTeaser) * this.TeaserHeight);
				}
			}
			
			if(this.afterTeaserFunktion)
			{				
				this.afterTeaserFunktion(this);
			}
		}
	}
	
	
	//--- Anzahl der benötigten Teaser berechnen
	this.calcTeaserAnzahl = function()
	{		
		var otherHeight = 0;
		if(this.arSlideShow['obj'])
		{
			otherHeight += this.arSlideShow['obj'].prevButtonStyle('abs_height');
			otherHeight += this.arSlideShow['obj'].nextButtonStyle('abs_height');
		}		
		teaserPlace = (this.objBottom.prop['abs_top'] - this.objTeaser.prop['abs_top'] - otherHeight)
		this.countTeaser = teaserPlace / this.TeaserHeight;		
		this.countTeaser = parseInt(this.countTeaser);		
	}
	
	this.__construct(achse,linkname,linkkey,teaserElemente,afterTeaserFunktion);
}