/* Spezialfunktionen f?r den CC-Modellvergleich */
function showModelDesignForm(modus){
	if(modus != 0){
		/* Formular sichtbar setzen */
		if(modus == "coupe" ){
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_coupe").style.display = "block";
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_cabrio").style.display = "none"
		}
		if(modus == "cabrio" ){
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_cabrio").style.display = "block";
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_coupe").style.display = "none"
		}
		/* Im Formular das Design-Feld entsprechend belegen */
		if(modus == "coupe" ){
			document.forms["designForm"].elements["design"].value = "MCC";
		}
		if(modus == "cabrio" ){
			document.forms["designForm"].elements["design"].value = "MCO";
		}
	}
}
function checkModelDesign(checkbox,line){
	/* Bei Klicken einer Checkbox: Pr?fen, ob drei Checkboxen aktiviert sind */
	if(line == "coupe"){
		if(checkbox.checked){
			designCounter = designCounter + 1;
			if(designCounter == 3){
				closeModelForm(line);
			}
		}else{
			designCounter = designCounter - 1;
			if(designCounter == 2){
				openModelForm(line);
			}
		}
	}
	if(line == "cabrio"){
		if(checkbox.checked){
			designCounter_cabrio = designCounter_cabrio + 1;
			if(designCounter_cabrio == 3){
				closeModelForm(line);
			}
		}else{
			designCounter_cabrio = designCounter_cabrio - 1;
			if(designCounter_cabrio == 2){
				openModelForm(line);
			}
		}
	}
}
function closeModelForm(line){
	/* Sperren der nicht aktiven Checkboxen */
	if(line == "coupe"){
		var i = 0;
		while(document.forms["designForm"].elements[i])
		{
			if(document.forms["designForm"].elements[i].type == "checkbox")
			{
				if(document.forms["designForm"].elements[i].checked == false)
				{
					document.forms["designForm"].elements[i].disabled = true; 
				}
			}
			i++;
		}
	}
	if(line == "cabrio"){
		var i = 0;
		while(document.forms["designForm_cabrio"].elements[i])
		{
			if(document.forms["designForm_cabrio"].elements[i].type == "checkbox")
			{
				if(document.forms["designForm_cabrio"].elements[i].checked == false)
				{
					document.forms["designForm_cabrio"].elements[i].disabled = true; 
				}
			}
			i++;
		}
	}	
}


function openModelForm(line){
	/* Freigeben der nicht aktiven Checkboxen */
	if(line == "coupe")
	{
		var i = 0;
		while(document.forms["designForm"].elements[i])
		{
			if(document.forms["designForm"].elements[i].type == "checkbox")
			{
				if(document.forms["designForm"].elements[i].checked == false)
				{ 
					document.forms["designForm"].elements[i].disabled = false; 
				}
			}
			i++;
		}
	}
	if(line == "cabrio")
	{	
		var i = 0;
		while(document.forms["designForm_cabrio"].elements[i])
		{
			if(document.forms["designForm_cabrio"].elements[i].type == "checkbox")
			{
				if(document.forms["designForm_cabrio"].elements[i].checked == false)
				{ 
					document.forms["designForm_cabrio"].elements[i].disabled = false; 
				}
			}
			i++;
		}
	}	
}
function initModelForm(){
	document.forms["modelForm"].elements["design"][0].checked = false;
	document.forms["modelForm"].elements["design"][1].checked = false;
	var i = 0;
	while(document.forms["designForm"].elements[i])
	{
		if(document.forms["designForm"].elements[i].type == "checkbox")
		{
			document.forms["designForm"].elements[i].checked = false;
			document.forms["designForm"].elements[i].disabled = false;
		}
		i++;
	}
}




function checkModelForm(line){
	if(line == "coupe"){
		if(designCounter >= 1 && designCounter <= 3 ){
			document.forms["designForm"].submit();
		}else{
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_error").style.display = "block";
		}
	}
	if(line == "cabrio"){
		if(designCounter_cabrio >= 1 && designCounter_cabrio <= 3 ){
			document.forms["designForm_cabrio"].submit();
		}else{
			document.getElementById("L_html-text_all-topics_gbl_006_forms_design_error_cabrio").style.display = "block";
		}
	}
	document.getElementById('canvas').style.height="100%";
}

 
  
/*
 Find an image inside a parent structure like :
 <div  id ="prefix_postfix" style="display:none;"   >
   <img   src="nonhighlight.gif"         >    index 0
   <img   src="highlight.gif"            >    index 1
   <img   src="pulldownnonhighlight.gif" >    index 2
   <img   src=pulldownhighlight.gif"     >    index 3
 <div>  
*/
  function resolveImageElementFromParentId (prefix,postfix,index)  
   {
    var  id =prefix+"_"+postfix ;   
    var  imageElement = document.getElementById(id);
    if (imageElement==null)
    {
       imageElement = document.getElementById(prefix);
    }
   return   imageElement.getElementsByTagName("img")[index] ;
  }
   
   
   
/*
  simple mouseover mouseout function 
  for higlighting renderImage renderText syncronized 
*/				     
  function imageTextHighlight (id,mode)  
   {
    var  imgHiddenElement ;
    var  imgTextHiddenElement ;
    // Resolve current mouseover mouseout rendered Image and rendered Text Image
    var  imgElement         = resolveImageElementFromParentId ("renderImage",id,0);
    var  imgTextElement     = resolveImageElementFromParentId ("renderText",id,0);
    if (mode =="high")
    {// Get the highlighted rendered Image and rendered Text Image from hidden div
      imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,1);
      imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,1);
    }
    else
    {  // Get the non highlighted rendered Image and rendered Text Image from hidden div
     var  imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,0);
     var  imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,0);
    }
     // replace src
     imgElement.src =  imgHiddenElement.src;
     imgTextElement.src =  imgTextHiddenElement.src;
   }



/*
 Check if current Model section is in pulldown  mode
 indicated by the src off pulldown Images with index 2 and index 3
 look at div example on top   
*/
   function isPulldownActiv (id)  
	  {
			   var activ =false ;
         var  imgHiddenTogElement2      = resolveImageElementFromParentId ("hiddenImages",id,2);
			   var  imgHiddenTogElement3      = resolveImageElementFromParentId ("hiddenImages",id,3);
			     var  imgElement              = resolveImageElementFromParentId ("renderImage",id,0);
			   if  (imgElement.src== imgHiddenTogElement2.src  || 
              imgElement.src== imgHiddenTogElement3.src)
          {
             activ =true ;
          }
       return activ ;
     }     
    

/*
   mouseover mouseout function for 
   highlighting - nonhighlighting and pulldownhighlight - pulldownnonhighlight
   renderImage renderText syncronized 
*/
  function imageTextToggleHighlight (id,mode)  
   {
    var  imgHiddenElement ;
    var  imgTextHiddenElement ;
    // Resolve current mouseover mouseout rendered Image and rendered Text Image Elements
    var  imgElement         = resolveImageElementFromParentId ("renderImage",id,0);
    var  imgTextElement     = resolveImageElementFromParentId ("renderText",id,0);
    
    // Check if in Pulldown mode  :pulldownhighlight - pulldownnonhighlight
     if (isPulldownActiv(id))
   {
         if (mode =="high")
		    { // Get the highlighted rendered Image and rendered Text Image from hidden div
          imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,3);
          imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,1);
        }
        else
        {// Get the non highlighted rendered Image and rendered Text Image from hidden div
         imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,2);
         imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,0);
        }
    }    
    else
    {    // Not pulled down  : highlighting - nonhighlighting 
      if (mode =="high")
		    { // Get the highlighted rendered Image and rendered Text Image from hidden div
          imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,1);
          imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,1);
        }
        else
        {// Get the non highlighted rendered Image and rendered Text Image from hidden div
         imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,0);
         imgTextHiddenElement = resolveImageElementFromParentId ("hiddenTextImages",id,0);
        }
    }
     imgElement.src     =  imgHiddenElement.src;
     imgTextElement.src =  imgTextHiddenElement.src;
   }

 
       
   /*
       Resolve the Model section div element  
   */
     function getModelSection(id)
    {
      	var strDivName = 'L_html-text_all-topics_gbl_007_table_section_content_'+id;
	      return  document.getElementById(strDivName) ;
    }
   
       
    /*
       toggle Pull down a single Model Section by id
        and toggle the pulldown /not pulldown gif
    */   
   function toggleModelSection(id)
   {
        var modelSectionDivElement = getModelSection(id) ;   
        // Resolve current mouseover mouseout rendered Image 
        var  imgElement            = resolveImageElementFromParentId ("renderImage",id,0);  
       // Resolve the alternativ  div  hidden rendered Image 
        var  imgHiddenElement      = resolveImageElementFromParentId ("hiddenImages",id,1); 
    	if (modelSectionDivElement !=null )
     	{
       	  if(modelSectionDivElement.style.display == "none")
          {  // Model section is visible
           	modelSectionDivElement.style.display = "inline";
      	    imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,3); 
         	}
          else
         {   // Model section is not visible
           	modelSectionDivElement.style.display = "none";
         }  
         imgElement.src =  imgHiddenElement.src;     
     }
     getHeight();    
    }
    
    
     /*
       toggle Pull down all Model Sections  
       indicated by the first model Section (0)
      and toggle the pulldown /not pulldown gif
    */ 
   function toggleAllModelTables()
    {
      var  id = 0 ;
      var  imgElement ;
      var  imgHiddenElement;
      var  allModelSectionOpened = isPulldownActiv(0) ;
      var  modelSectionDivElement  =getModelSection(id);  
       
    	while(modelSectionDivElement !=null)
      {
        imgElement            = resolveImageElementFromParentId ("renderImage",id,0);
       if (allModelSectionOpened)
       {   // Set all Model sections unvisible and swap into non pulldown Icon
          modelSectionDivElement.style.display = "none";
        	imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,0); 
          if(id ==0)
          { // swap into non pulldown highlight Icon
           imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,1); 
          }
       }  
       else
       {     // Set all Model sections visible  and swap into pulldown Icon
           	modelSectionDivElement.style.display = "inline";
          	imgHiddenElement      = resolveImageElementFromParentId ("hiddenImages",id,2); 
          	 if(id ==0)
           { // swap into pulldown highlight Icon
            imgHiddenElement     = resolveImageElementFromParentId ("hiddenImages",id,3); 
           }
       }
       imgElement.src =  imgHiddenElement.src; 
       id = id + 1;
       modelSectionDivElement  =getModelSection(id);
       if (modelSectionDivElement ==null)
       { 
         return ;
       }
    }
   } 
  
  
  
  
