  var teaserTimeout = null;
  var largeTeaserAutoRotateActiv = false;
  var nextLinkClicked = false;
  var teaserSpecificRuntime = null;
  var teaserTimeout = null;
  var largeBasicTeasersPreload  = new Image();
  var currentLargeTeaserName = "";
  selectBoxes = new Array();
  directOrder = new Array();
  selectBoxes.push('Quicklinks');

  var moduleHeader = '<%=rubric_header.getTextUTF8() %>';
	var moduleNavigationDisplayed = false;
	var moduleLink          = new Array();

	checkClient();
	if ( browserId == 'Safari') {
	  writeSafariStyles  = '"<style type="text/css">'
	  writeSafariStyles += '  #teaserBgLine  {border-top-color:#999999;}'
	  writeSafariStyles += '  #teaserBgGrid1 {border-left-color:#999999;}'
	  writeSafariStyles += '</style>';
	  document.write( writeSafariStyles );
	}

//	scrollerCheckElements = new Array( "completePageContent", "largeTeaserPreloader", "largeTeaser" );
//	scrollerSize = 990;
	window.onresize = checkWindowSize;
	
	
	
	function initHomepage(){

  standardLeftTeaserArray = teaser.smallStandard.getSequence();
  teaserCounter = 0;

  for (var i=standardLeftTeaserGroup; i < standardLeftTeaserArray.length; i++){
    for (var j=0; j < teaser.smallStandard.length; j++){
      if(teaser.smallStandard[j] == standardLeftTeaserArray[i]){
        setVisibility("standardLeftTeaserlist" + j, null, 'block');
        teaserCounter++;
        break;
      }
    }

    if(teaserCounter==3){
      standardLeftTeaserGroup = 3;
      break;
    }
  }

  standardRightTeaserArray = teaser.smallStandardRight.getSequence();
  teaserCounter = 0;

  for (var i=standardRightGroup; i < standardRightTeaserArray.length; i++){
    for (var j=0; j < teaser.smallStandardRight.length; j++){
      if(teaser.smallStandardRight[j] == standardRightTeaserArray[i]){
        setVisibility("standardRightTeaserlist" + j, null, 'block');
        teaserCounter++;
        break;
      }
    }

    if(teaserCounter==3){
      standardRightGroup = 3;
      break;
    }
  }

largeTeaserArray = teaser.large.getSequence();


if(!showDealerImageOnly){
  useLageFlashTeaser = false;


    for(i=0;i<largeFlashTeasers.length;i++){
      
      var testUrl1 = largeTeaserArray[currentLargeTeaser].substring(largeTeaserArray[currentLargeTeaser].indexOf("_teaserpool/"),largeTeaserArray[currentLargeTeaser].length);

      var testUrl2 = (largeFlashTeasers[i].teaserHtmlUrl.substring(largeFlashTeasers[i].teaserHtmlUrl.indexOf("_teaserpool/"), largeFlashTeasers[i].teaserHtmlUrl.length));

      var useSWFTeaser = (largeFlashTeasers[i].swfurl != "none");

      if(useSWFTeaser && testUrl1.indexOf(testUrl2) != -1){

        currentlargeFlashTeasers = i;

        useLageFlashTeaser = true;

        document.getElementById("largeTeaserBasic").style.display = "none";

//        document.getElementById("largeTeaser").style.display = "none";

        document.getElementById("largeTeaserFlash").style.display = "block";

        prepareLargeTeaserImage();

        nextTeaser();

        break;

      }

    }

  if(!useLageFlashTeaser){// init

    for (var j=0; j < teaser.large.length; j++){

      var testUrl1 = teaser.large[j].substring(teaser.large[j].indexOf("_teaserpool/"),teaser.large[j].length);

      var testUrl2 = largeTeaserArray[currentLargeTeaser].substring(largeTeaserArray[currentLargeTeaser].indexOf("_teaserpool/"),largeTeaserArray[currentLargeTeaser].length);

      if(testUrl1 == testUrl2){

        currentLargeTeaserImage = largeBasicTeasers[j];

        currentLargeTeaserName = "largeTeaserlist" + j;

        document.getElementById("largeTeaserFlash").style.display = "none";

        document.getElementById("largeTeaserBasic").style.display = "block";

//        document.getElementById("largeTeaser").style.display = "block";



        prepareLargeTeaserImage();

        break;

      }

    }

    preLoadArray["12345"] = new Array();

    preLoadArray["12345"].push(largeBasicTeasers[0]);

    preloader("12345");

  }


  if(largeTeaserArray.length > 1){

    setVisibility('nextLargeTeaserButton', 1);

  }

}

  mainTeaserArray = teaser.main.getSequence();

  teaserCounter = 0;

  for (var i=0; i < mainTeaserArray.length; i++){

    for (var j=0; j < teaser.main.length; j++){

      if(teaser.main[j] == mainTeaserArray[i]){

        setVisibility("mainTeaserlist" + j, null, 'block');

        teaserCounter++;

        break;

      }

    }

    if(teaserCounter==1){

      break;

    }

  }


  if(mainTeaserArray.length > 1){

    setVisibility('mainTeaserContinueLink', 1);

  }

  if(standardLeftTeaserArray.length > 3){
    if(standardLeftTeaserArray.length == 4){
      setVisibility('standardLeftTeaserContinueLinkSingle', 1);
    }else{
      setVisibility('standardLeftTeaserContinueLinkMulti', 1);
    }
  }

  if((standardRightTeaserArray.length > 3)&&(!newsActive)){
    if(standardRightTeaserArray.length == 4){
      setVisibility('standardRightContinueLinkSingle', 1);
    }else{
      setVisibility('standardRightContinueLinkMulti', 1);
    }
  }
  
  
  divsToBeAltered.push("mainTeaser");
  divsToBeAltered.push("largeTeaser"); 
  changeLinksAccordingToStage();
  
  if($('#moduleHeaderContainer').length != 0 && $('#mainNavigation').length != 0){
   $("#mainNavigation").append($("#moduleHeaderContainer"));
  }
  if($('#moduleHeaderContainerLEIcon').length != 0 && $('#mainNavigation').length != 0){
   $("#mainNavigation").append($("#moduleHeaderContainerLEIcon").parent("div"));
  }
 
}

	function changeTeaser( teaserType ){
		if( teaserType == "standardTeaser" ){
      for ( var i = 0; i < 3; i++ ){
        if( ( i + standardTeaserGroup ) < standardTeaserArray.length ){
          loadTeaser( 'standardTeaser' + ( i + 1 ), standardTeaserArray [ ( i + standardTeaserGroup ) ] );
        } else {
          loadTeaser( 'standardTeaser' + ( i + 1 ), blankFrame );
        }
      }
      disableChangeTeaserLinks( 3 );
      setVisibility( 'standardTeaserContinueLinkMulti', 0 );
      setVisibility( 'standardTeaserContinueLinkSingle', 0 );
      if( standardTeaserGroup == 0 ){
				standardTeaserGroup = 3;
				if(standardTeaserArray.length == 4){
			  	setVisibility( 'standardTeaserContinueLinkSingle', 1 );
				}else{
			  	setVisibility( 'standardTeaserContinueLinkMulti', 1 );
				}
      }else{
    		standardTeaserGroup = 0;
		    setVisibility( 'standardTeaserContinueLinkMulti', 1 );
      }
		}
		if( teaserType == "textTeaser" ){
	    for ( var i = 0; i < 3; i++ ){
	      if( ( i + textTeaserGroup ) < textTeaserArray.length ){
	        loadTeaser( 'textTeaser' + ( i + 1), textTeaserArray[ ( i + textTeaserGroup ) ] );
	      } else {
	        loadTeaser( 'textTeaser' + ( i + 1 ), blankFrame );
	      }
	    }
	    disableChangeTeaserLinks( 3 );
	    setVisibility( 'textTeaserContinueLinkMulti', 0 );
	    setVisibility( 'textTeaserContinueLinkSingle', 0 );
	    if( !newsActive ){
	      if( textTeaserGroup == 0 ){
	        textTeaserGroup = 3;
	        if( textTeaserArray.length == 4 ){
	          setVisibility( 'textTeaserContinueLinkSingle', 1 );
	        }else{
	          setVisibility( 'textTeaserContinueLinkMulti', 1 );
	        }
	      }else{
	       	textTeaserGroup = 0;
	        setVisibility( 'textTeaserContinueLinkMulti', 1 );
	      }
	    }
		}
		
		 if(teaserType == "mainTeaser"){

    setVisibility("mainTeaserlist" + currentMainTeaser, null, 'none');

    currentMainTeaser++;

    if(currentMainTeaser >= mainTeaserArray.length){

       currentMainTeaser = 0;

    }

    setVisibility("mainTeaserlist" + currentMainTeaser, null, 'block');

  }



  if(teaserType == "largeTeaser"){
    $('#largeTeaserOverlay').fadeIn(500);
    if(currentLargeTeaserName != ""){
      document.getElementById(currentLargeTeaserName).style.display = "none";
    }
    setTimeout("hideOldTeaser();",400);



    

  }

		
	}//end function changeTeaser
	
function hideOldTeaser(){
 document.getElementById("teaserPlaceholder").src = transGif;
 document.getElementById("teaserPlaceholder").style.display = "none";   
 document.getElementById("largeTeaserFlash").style.display = "none";
 showNextTeaser();
}

function prepareLargeTeaserImage(){
  nextCurrentLargeTeaser = currentLargeTeaser+1;
  if((nextCurrentLargeTeaser > 4)||(nextCurrentLargeTeaser >= largeTeaserArray.length)){
    nextCurrentLargeTeaser = 0;
  }

  for (var k=0; k < teaser.large.length; k++){
    var testUrl1 = teaser.large[k].substring(teaser.large[k].indexOf("_teaserpool/"),teaser.large[k].length);
    var testUrl2 = largeTeaserArray[nextCurrentLargeTeaser].substring(largeTeaserArray[nextCurrentLargeTeaser].indexOf("_teaserpool/"),largeTeaserArray[nextCurrentLargeTeaser].length);
    if(testUrl1 == testUrl2){
      if(nextCurrentLargeTeaser>4){
        nextLargeTeaserImage = largeBasicTeasers[0];
       }else{
        nextLargeTeaserImage = largeBasicTeasers[k];
       }
      break;
    }
  }
  preLoadArray["12345"] = new Array();
  preLoadArray["12345"].push(nextLargeTeaserImage);
}



function preLoadReady(ticketId){
 $('#largeTeaserOverlay').fadeIn(500,showTeasers);
}

function showTeasers(){ 

 if(currentLargeTeaserImage.indexOf('/bmwdealer_edit/') != -1){
  document.getElementById("teaserPlaceholder").src = currentLargeTeaserImage;  
 }else{
  document.getElementById("teaserPlaceholder").src = getWcmsPrefix() + currentLargeTeaserImage;  
 }
 document.getElementById("teaserPlaceholder").style.display = "block";
 document.getElementById(currentLargeTeaserName).style.display = "block"; 
  $('#largeTeaserOverlay').fadeOut(500,autoChangeTeaser);   
}


	function loadTeaser( frameName, teaserUrl ){
		document.getElementById( frameName ).src = teaserUrl;
	}

	function disableChangeTeaserLinks( pageCounter ){
    loadPageCounter = pageCounter;
    setVisibility( 'preloaderLinkCover', 1 );
    setVisibility( 'largePreloaderLinkCover', 1 );
  }

	function enableChangeTeaserLinks(){
    loadPageCounter--;
    if( loadPageCounter == 0 ){
      setVisibility( 'preloaderLinkCover', 0 );
      setVisibility( 'largePreloaderLinkCover', 0 );
    }
	}
  
  
  
function autoChangeTeaser(){
 clearTimeout(teaserTimeout);
 if(largeTeaserAutoRotateActiv && !nextLinkClicked){
   if(typeof teaserSpecificRuntime!=undefined && teaserSpecificRuntime!=null){
    teaserTimeout = window.setTimeout("largeTeaserAutoRotate()", teaserSpecificRuntime * 1000);
   }else{
    teaserTimeout = window.setTimeout("largeTeaserAutoRotate()", defaultTime * 1000);
   }   
 }
}


function nextTeaser() {
  $('#largeTeaserOverlay').hide();
  var teaserSWFObject = new SWFObject(wrapper_modules, "wrapperModules", "1024", "291", "8", "#FFFFFF");
  teaserSWFObject.addParam("allowScriptAccess", "sameDomain");
  teaserSWFObject.addParam("wmode", "transparent");
  teaserSWFObject.addParam("quality", "BEST");
  teaserSWFObject.addVariable("defaultTimeToRun", defaultTime);
  teaserSWFObject.addVariable("nextTeaserFunction", "autoChangeTeaser()");
  if(!teaserSWFObject.write("largeTeaserFlash")){
    document.getElementById("largeTeaserFlash").style.display = "none";
    useLageFlashTeaser = false;
  }else{
    if ( browserId == "Firefox" && platform == "mac os x" && document.getElementsByTagName( 'embed' ).length > 0 ) {
      document.getElementById( 'teaserBgGrid1' ).style.MozOpacity = "1";
      alterCSSClass( '.largeTeaserLinkBackground, .largeTeaserLinkBackgroundActive', '-moz-opacity', '1' );
      alterCSSClass( '.mainTeaserLinkBackground, .mainTeaserLinkBackgroundActive', '-moz-opacity', '1' );
      alterCSSClass( 'div#moduleNavigation', 'opacity', '1' );
    }
  }
}



function getContent()  {
  return largeFlashTeasers[currentlargeFlashTeasers];
}


function getWcmsPrefix(){
  var prefix = "";
  if (self.location.href.indexOf('/bmwdealer_edit/') != -1) {
    prefix = "/bmwdealer_edit";
  } else if (self.location.href.indexOf('/bmwdealer_edit/') != -1) {
    prefix = "/bmwdealer_edit";
  } else if (self.location.href.indexOf('/bmwdealer_edit/') != -1) {
    prefix = "/bmwdealer_edit";
  }
  return prefix;
}


function showNextTeaser(){

    teaserSpecificRuntime = null;
    currentLargeTeaser++;
    if(currentLargeTeaser >= largeTeaserArray.length){
       currentLargeTeaser = 0;
    }
    useLageFlashTeaser = false;
    document.getElementById("largeTeaser").style.display = "none";
    document.getElementById("largeTeaserBasic").style.display = "none";
    for(i=0;i<largeFlashTeasers.length;i++){
        var testUrl1 = largeTeaserArray[currentLargeTeaser].substring(largeTeaserArray[currentLargeTeaser].indexOf("_teaserpool/"),largeTeaserArray[currentLargeTeaser].length);
        var testUrl2 = (largeFlashTeasers[i].teaserHtmlUrl.substring(largeFlashTeasers[i].teaserHtmlUrl.indexOf("_teaserpool/"), largeFlashTeasers[i].teaserHtmlUrl.length));
        var useSWFTeaser = (largeFlashTeasers[i].swfurl != "none");
        if(useSWFTeaser && testUrl1.indexOf(testUrl2) != -1){
         currentlargeFlashTeasers = i;
          useLageFlashTeaser = true;
          document.getElementById("largeTeaserFlash").style.display = "block";
          prepareLargeTeaserImage();
          nextTeaser();
          break;
        }
      }
   

    if(!useLageFlashTeaser){ // change   
      document.getElementById("largeTeaser").style.display = "block";
      document.getElementById("largeTeaserBasic").style.display = "block";
      for (var j=0; j < teaser.large.length; j++){
        var testUrl1 = teaser.large[j].substring(teaser.large[j].indexOf("_teaserpool/"),teaser.large[j].length);
        var testUrl2 = largeTeaserArray[currentLargeTeaser].substring(largeTeaserArray[currentLargeTeaser].indexOf("_teaserpool/"),largeTeaserArray[currentLargeTeaser].length);
        if(testUrl1 == testUrl2){
          currentLargeTeaserImage = largeBasicTeasers[j];
          currentLargeTeaserName = "largeTeaserlist" + j;
          if(largeBasicTeasersPreload.src && largeBasicTeasersPreload.src != ""){
            currentLargeTeaserImage = largeBasicTeasersPreload.src;
          }
          prepareLargeTeaserImage();
          break;
        }
      }
      preloader("12345");
    } 
}


