/* JavaScript fuer Startseite jbss.de (_de/_en)
   Autor: Jan Bochmann 
   Stand: 19.01.2011
*/

var ani_str4 = 0; /* 0 = noch gar nichts, 1 = statisches HTML mit Animated GIF, 2 = JS-Animation */

var bild_str4, Bild_Zug5 = -1;
var i, pos;
var ani_str4_stat;
var anfang41 = 100, ende41 = 132, anfang42 = 198, ende42 = 222;
var Bilder41 = new Array( (ende41-anfang41)/2+1 );
var Bilder42 = new Array( (ende42-anfang42)/2+1 );
var anfang5 = 100, ende5 = 114;
var Bilder5 = new Array( ende5-anfang5+1 );

/*----------------------------------------------------*/
/* BEGIN */
/*----------------------------------------------------*/

ani_str4_stat = new Image();
for ( i = anfang41; i <= ende41; i += 2 )
  {
   pos = (i-anfang41) / 2;
   Bilder41[pos] = new Image();
   Bilder41[pos].src = "ani_str4/" + i + ".gif";
  }
for ( i = anfang42; i <= ende42; i += 2 )
  {
   pos = (i-anfang42) / 2;
   Bilder42[pos] = new Image();
   Bilder42[pos].src = "ani_str4/" + i + ".gif";
  }
for ( i = anfang5; i <= ende5; i++ )
  {
   pos = i-anfang5;
   Bilder5[pos] = new Image();
   Bilder5[pos].src = "ani_zug5/" + i + ".gif";
  }

/*----------------------------------------------------*/
/* END */
/*----------------------------------------------------*/

function Start_Init( Sprache )
   /* bei OnLoad aufzurufen
	IN: Sprache = "DE" deutsch, alles andere fuer Englisch */
  {
   Anima_EinAus( Sprache, 0 );
  }

/*----------------------------------------------------*/

function Anima_EinAus( Sprache, Wie )
   /* schaltet zeitgesteuerte Animationen ein oder aus (Toggle) 
      (nur JavaScript, d.h. die animated GIF bleiben unberuehrt, man koennte sie hier austauschen...) 
      IN: Sprache = "DE" deutsch, alles andere fuer Englisch 
          Wie     = 0  nur Zustand aktualisieren entspr. globaler Variabler
                  = 1  Toggle inkl. Start der Animationen bei Ein */
  {
   if ( Wie == 1 )
     {
      if ( parent.Ani_Zustand == 0 )
         parent.Ani_Zustand = 1;
      else 
         parent.Ani_Zustand = 0;
     }
   else
     {
      if ( Wie != 0 )
         return;
     }

   if ( parent.Ani_Zustand == 1 )
     {
      if ( Sprache == "DE" )
         /* Anm.: via Name geht im MSIE6, aber nicht im Firefox, daher ab 19.1.2011 via Id 
         parent.FensterR.EinAusSchaltKnopf.value = "Aus"; */
         parent.FensterR.document.getElementById( "EinAusSchaltKnopf" ).value = "Aus";
      else
         parent.FensterR.document.getElementById( "EinAusSchaltKnopf" ).value = "Off";

      Init_Ani4( Sprache );
      Init_Ani5( Sprache );
     }
   else /* Zustand ist 0, also Aus */
     { 
      parent.Ani_Zustand = 0;
      if ( Sprache == "DE" )
         parent.FensterR.document.getElementById( "EinAusSchaltKnopf" ).value = "Ein";
      else
         parent.FensterR.document.getElementById( "EinAusSchaltKnopf" ).value = "On";
     }
  }

/*----------------------------------------------------*/

function Init_Ani4( Sprache ) 
  /* tauscht Bild_10 ggf. gegen Animation4 aus */
 {
   if ( ani_str4 == 0 ) /* Init oder ganz ausser Betrieb */
     {
      ani_str4_stat.alt = document.Bild_10.alt;
      ani_str4_stat.height = document.Bild_10.height;
      ani_str4_stat.src = document.Bild_10.src;

      if ( Math.random() >= 0.5 ) /* 50% die bisherige Animation (statisches HTML) oder die neue */
         ani_str4 = 2;
      else
         ani_str4 = 1;
     }
   else
      ani_str4 = 3 - ani_str4; /* toggle 1<->2 */

   if ( ani_str4 == 2 )
     {
      document.Bild_10.height = 84;
      if ( Sprache == "DE" )
         document.Bild_10.alt = "Zoom4: ET Halt";
      else
         document.Bild_10.alt = "Zoom4: ET Stopping";
      Anima_Str4( -1 ); /* den Spass starten */
     } 
   else /* bei 0 oder 1 */
     {
      if ( ani_str4 == 1 )
        {
         document.Bild_10.alt    = ani_str4_stat.alt;
         document.Bild_10.height = ani_str4_stat.height;
         document.Bild_10.src    = ani_str4_stat.src;
        }
     }
  }

/*----------------------------------------------------*/

function Anima_Str4( bildnr ) 
  /* Animation str4 laufen lassen (via timer_str4) 
     IN: bildnr = aktuelle Bildnummer (als GIF in /ani_str4 vorhanden) 
                oder -1 fuer Init.
    (nur einmal zum Start mit Bildnummer -1 aufrufen, 
     danach aktiviert sich die Funktion selbst mit unterschiedlich langem Intervall) */
 {
  var pfad, wartezeit, pos;

   if ( parent.Ani_Zustand != 1 )
      return;

   if ( ani_str4 != 2 )
      return;

   if ( bildnr > 0 )
     {
      if ( bildnr < ende41 )
        {
         bild_str4 = bildnr + 2;
         wartezeit = (bild_str4 - 100) * 20;
        }
      else
        {
         if ( bildnr == ende41 )
          {
           bild_str4 = anfang42;
           wartezeit = 2000;
          }
         else
           {
            if ( bild_str4 < ende42 )
              {
               bild_str4 = bildnr + 2;
               wartezeit = ( 224 - bild_str4 ) * 20;
              }
            else
               bildnr = -1; /* wie init. */
           }
        }
     }

   if ( bildnr < 0 )
     {
      bild_str4 = anfang41;
      wartezeit = 2000;
     }

   if ( bild_str4 <= ende41 )
     {
      pos = (bild_str4 - anfang41) / 2;
      document.Bild_10.src = Bilder41[ pos ].src; 
     }
   else
     {
      pos = (bild_str4 - anfang42) / 2;
      document.Bild_10.src = Bilder42[ pos ].src; 
     } 

   window.setTimeout( "Anima_Str4( bild_str4 )", wartezeit );
  }
/*----------------------------------------------------*/

function Init_Ani5( Sprache ) 
  /* startet Animation Zug5  */
 {
   Anima_Zug5(); /* den Spass starten */
  }

/*----------------------------------------------------*/

function Anima_Zug5() 
  /* Animation zug5 laufen lassen
     IN: Bild_Zug5 = aktuelle Bildnummer (als GIF in /ani_zug5 vorhanden) 
           (auf -1 setzen fuer Init.)
    (Funktion zum Start nur einmal aufrufen, 
     danach aktiviert sich die Funktion selbst) */
 {
  var pfad, wartezeit, pos, bildnr;

   if ( parent.Ani_Zustand != 1 ) /* Animationen sind aus */
      return;

   bildnr = Bild_Zug5;

   if ( bildnr > 0 )
     {
      if ( bildnr < ende5 )
        {
         Bild_Zug5 = bildnr + 1;
        }
      else
        {
         if ( bildnr == ende5 )
          {
           Bild_Zug5 = anfang5;
          }
         else
           {
            bildnr = -1; /* wie init. */
           }
        }
     }

   if ( bildnr < 0 )
     {
      Bild_Zug5 = anfang5;
     }

   wartezeit = 1000;
   pos = Bild_Zug5 - anfang5;

   document.Bild_00.src = Bilder5[ pos ].src; 

   window.setTimeout( "Anima_Zug5()", wartezeit );
  }
  
/*----------------------------------------------------*/

