var akt_button = 0; //Speichert den aktuell aktiven Button (0 bedeutet, dass kein Button aktiv ist)
var alt_button = 0;
runterScroll=false;
hochScroll=false;

//Tastenzuordnung
var keyNum1 = 97; var keyNum2 = 98; var keyNum3 = 99; var keyNum4 = 100; var keyNum5 = 101; var keyNum6 = 102; var keyNum7 = 103; var keyNum8 = 104; var keyNum9 = 105;
var key1 = 49;    var key2 = 50;    var key3 = 51;    var key4 = 52;     var key5 = 53;     var key6 = 54;     var key7 = 55;     var key8 = 56;     var key9 = 57;

var keyUp = 38; var keyDown = 40; var keyLeft = 37; var keyRight = 39;
var keyRed = 82; var keyGreen = 71; var keyYellow = 89; var keyBlue =75;
var keyEnter = 13;
var keyMenu = 77; //M
var keyESC = 27;
var keyPlus = 187;
var keyMinus = 189;
var keyNumPlus = 107;
var keyNumMinus = 109;
var currentMenuButton = 0;
var currentFunctionButton = 0;
var currentArea = 0; // 0: Menu, 1: Function, 2: Extra

//Aufruf externer Link
/*
function gotoLink(url)
{
 window.open("tivion://browser/hide","extern");
 window.open(url,"extern");
}
*/


//Cookie-Verwaltung: PC oder TV?
function wertHolen(nam) {
 var Wert = "";
 if(document.cookie) {
  var Wertstart = document.cookie.lastIndexOf(nam+"=") + 1 + nam.length;
  Wert = document.cookie.substring(Wertstart,document.cookie.length);
  var Wertende = Wert.indexOf(";");
  if (Wertende == -1)
   Wertende = document.cookie.length;
  Wert = Wert.substring(0,Wertende);
 }
 return Wert;
}

function window.parent.Abfrage(){
window.parent.menuSchriftText=wertHolen('betrieb');
				}

if(wertHolen('betrieb')=='tv')
{
 //alert('TV');
 document.write("<link rel=stylesheet href=menu/menu.css type=text/css>");
}else
{//Standard: PC
 //alert(wertHolen('betrieb'));
 document.write("<link rel=stylesheet href=menu/menu2.css type=text/css>");

 
}

function window.parent.betriebsart(art)
{
 var ablauf = new Date();
 var inEinemJahr = ablauf.getTime() + (365 * 24 * 60 * 60 * 1000);
 ablauf.setTime(inEinemJahr);
 document.cookie = "betrieb=" + art + "; expires=" + ablauf.toGMTString();
 location.reload();
}




//Softlinks
var switchToTV = "tivion://tv";

/*
<!--------------------->
function tvInit () {
        window.defaultStatus = "Willkommen bei Tivion";
        setFocus2NextBtn();
}
*/
function switchTV()
{
 window.location.href=switchToTV;
};



function menuepunktAufrufen()
{   //hier
 //alert("Das geht!");
 //altButtonWeg(akt_button);alert(akt_button);
          if(document.getElementById("menu_front").childNodes[tastenPos])
          {
           aCommand=document.getElementById("menu_front").childNodes[tastenPos].firstChild.childNodes[1].firstChild.firstChild.firstChild.childNodes[1].childNodes[1];

           //aCommand.focus();
           //alert(aCommand.execute);
           //Menü anschalten, wenn noch nicht geschehen
           if(document.all.menu_bg.style.visibility=="visible")
           {
            window.setTimeout(aCommand.execute,0);
           };
          };

 //akt_button = 1;
};

function altButtonWeg(alt)
{
// alert("Löschen...");
 if(alt>=0)
 {//hier
  //alert(alt + " wird gelöscht");

  //alt=0;
 };
}

function buttonUpdate(alt,zahl)
{//markiert den Button mit der Nummer zahl
 //alert("Gehe zu Button Nr. " + zahl + ", weg von der Nr. " + alt);

 //Alle Markierungen löschen
 MM_swapImgRestore();
 for(i=0;i< document.getElementById("menu_front").childNodes.length;i++)
 {
  alterButton = document.getElementById("menu_front").childNodes[i].firstChild.childNodes[1].firstChild.firstChild.firstChild.childNodes[1].childNodes[1];
  //alten Button löschen
  alterButton.background='menu/tv_einzel_bg.jpg';
  alterButton.className='menuitem';
 };

 if(hauptmenue)
 {
  zahl--;
  alt--;
 };
 altButtonWeg(alt);
 neuerButton = document.getElementById("menu_front").childNodes[zahl].firstChild.childNodes[1].firstChild.firstChild.firstChild.childNodes[1].childNodes[1];


 akt_menu_nummer = akt_menu.replace(/menu/,"");
 //neuen Button auswählen
 akt_button2=akt_button+offsetter;


 if(akt_button2==0)
 {
  if(hauptmenue)
  {
   akt_button2=1;
  }else
  {
   if(menues[akt_menu].menuPunktArray[0].idName==22)
   {
    akt_button2="p";
   }else
   {
    akt_button2="z";
   }
  };
  akt_button3=akt_button2;
 }else if(akt_button2>10)
 {
  akt_button3='l';
 }else
 {
  akt_button3=akt_button2;
 };

 //alert('tv_taste_' + akt_button2 +'=>'+ 'menu/tv_taste_' + akt_button2 + 'd.gif');
 MM_swapImage('tv_taste_' + akt_button2,'','menu/tv_taste_' + akt_button3 + 'd.gif',1);
 neuerButton.background = 'menu/tv_einzel_bg_active.jpg';
 neuerButton.className = 'menuitem_active';
 tastenPos = zahl;
};

function buttonDown()
{//Wählt den nächsten Button aus
 alt_button=akt_button;
 if(hauptmenue)
 {
  tastenPos=akt_button;
 }else
 {
  tastenPos=akt_button+1;
 };
 //alert(akt_button);

 if(document.getElementById("menu_front").childNodes[tastenPos])
 {
  if((tastenPos>5)&&(menues[akt_menu].menuPunktArray[tastenPos+offsetter+1-!hauptmenue]))
  {//zweitletztes erreicht
   //Focus muss auf zweitletztem bleiben, aber Buttons müssen eins nach oben
   offsetter++;
   //alert(offsetter);
   //alert(akt_button);
   zeigen('hier');
   //alert(akt_button);
  }else
  {
   akt_button++;
  };
 }else
 {
  offsetter=0;
  if(hauptmenue)
  {
   akt_button = 1;
  }else
  {
   akt_button = 0;
  };
  zeigen('hier');
 };

 buttonUpdate(alt_button,akt_button);
};

function buttonUp()
{//Wählt den Button davor aus
 alt_button=akt_button;


 if((akt_button==1)&&(offsetter>0))
 {
  if(offsetter>0)
  {
   offsetter--;
   zeigen('hier');
  }else
  {
   akt_button--;
  };
 }else if(akt_button==(1-(!hauptmenue)))
 {//Gehe ans Ende

  if(menues[akt_menu].menuPunktArray.length>(6+(!hauptmenue)))
  {
   //alert("Schiebung!");
   offsetter=menues[akt_menu].menuPunktArray.length-7+!hauptmenue;
   zeigen('hier');
   akt_button=7-(!hauptmenue);
  }else
  {
   akt_button = document.getElementById("menu_front").childNodes.length-1;
  };
 }else
 { //einfach hoch gehen
  akt_button--;
  //alert("Gehe zu" + akt_button);
 };

 buttonUpdate(alt_button,akt_button);
};

function scrollHoch()
{
 if(offsetter>0)
 {
  offsetter--;
  zeigen('hier');
 };
};

function scrollRunter()
{
 if(offsetter<(menues[akt_menu].menuPunktArray.length-7+!hauptmenue))
 {
  offsetter++;
  zeigen('hier');
 };
};

function scrollHochAuto()
{
 if (hochScroll==true)
 {
  scrollHoch();
  window.setTimeout("scrollHochAuto()",300);
 }
};

function scrollRunterAuto()
{
 if (runterScroll==true)
 {
  scrollRunter();
  window.setTimeout("scrollRunterAuto()",300);
 }
};

function tvKeyClick (UpOrDown) {
        aTarget = "";
        direkt=false;
        if(UpOrDown!="down" && UpOrDown!="up")
        {
         aKey=UpOrDown;
         direkt=true;
         UpOrDown="down";                                                                                                       //v-- Softlink auf oberster Ebene
        }else
        {
         aKey=event.keyCode;
        }

        if (UpOrDown == "down" && (aKey == keyDown || aKey == keyUp  || aKey == keyRight  || aKey == keyEnter  || aKey == keyESC  || ( menues[akt_menu].menuPunktArray[0].idName==22 && (document.URL.indexOf('softlink')>-1) && (aKey == keyMinus || aKey == keyPlus || aKey == keyNumMinus || aKey == keyNumPlus))) && (document.all.menu_bg.style.visibility=="visible")) {
                switch (aKey) {
                case keyDown:   buttonDown(); break;
                case keyUp:     buttonUp(); break;
               // case keyLeft:   setFocus2LeftBtn(); break;        wegen Zurück- Funktion
                case keyRight: case keyEnter:  menuepunktAufrufen(); break;
                case keyESC: menu_anzeigen(); break;
                case keyPlus: case keyNumPlus: aufruf('menu27'); break;
                case keyMinus: case keyNumMinus: aufruf('menu26'); break;
                }
        } else if (UpOrDown == "down" && (window.event.ctrlKey || direkt || aKey == keyLeft)){

                switch (aKey) {
              /*  case keyEnter:
                        if (UpOrDown == "down") { tvMouseDown();
                        } else {tvActivate();}
                        break;   */
                //case keyRed: case keyMenu:  menu_knopf();  break;
                //case keyGreen: switchTV(); break;
                //case keyYellow: aufruf('menu1554'); break;
                //case keyBlue:   kommentare_anzeigen(); break;
                default:       // numbers on numblock         or  numbers above chars
                        if ( (97 <= aKey && aKey <= 105) || (49 <= aKey && aKey <= 57) || aKey == keyLeft ) {
                                //alert(aKey);
                                akeyClick(aKey, null, UpOrDown);

                        }
                }
        }

}

function window.parent.tcKeyClick (UpOrDown) {
 window.setTimeout("tvKeyClick(77)",10);

}





function akeyClick (aKey, aName, UpOrDown) {
        aNumber = "";
        if (aName != null) {
        } else {
                switch (aKey) {
                case keyNum1: case key1: aName = "1"; break;
                case keyNum2: case key2: aName = "2"; break;
                case keyNum3: case key3: aName = "3"; break;
                case keyNum4: case key4: aName = "4"; break;
                case keyNum5: case key5: aName = "5"; break;
                case keyNum6: case key6: aName = "6"; break;
                case keyNum7: case key7: aName = "7"; break;
                case keyNum8: case key8: aName = "8"; break;
                case keyNum9: case key9: aName = "9"; break;
                }
        }

        if(((isNaN(aName) == false)||(aKey==keyLeft))&&(document.all.menu_bg.style.visibility=="visible"))
        {//Nummerntasten oder Pfeilzurück {oder Farbtasten }(direkte Ansteuerung)

         // alert("dg" + aKey);
          tastenPos=Number(aName)-1;

          if((aKey==keyLeft)&&(!hauptmenue)&&(menues[akt_menu].menuPunktArray[0].idName!=22))
          {
            //alert("Zurück");
            tastenPos=0;
            menuepunktAufrufen()
          }else if (menues[akt_menu].menuPunktArray[0].idName==22 && (akt_button==0))
          {//Wenn auf erstem Menüpunkt, dann den Softlink zum NachLinksWechseln aufrufen
           if(akt_button==0)
           {
             aufruf('menu26');
           };

          }else if((menues[akt_menu].menuPunktArray[tastenPos]))
          {


            //Aufrufen des Menüpunktes mit dieser Nummer akt_menu + ';' + tastenPos + ';' +
           // alert(menues[akt_menu].menuPunktArray[tastenPos].labelText); //
            typInhalt=menues["menu" + menues[akt_menu].menuPunktArray[tastenPos].idName].typInhalt;
            menu_aufrufen('menu' + menues[akt_menu].menuPunktArray[tastenPos].idName);
            if(typInhalt==1)
            {
             tief('menu' + menues[akt_menu].idName);
            };


          };


       };
}


function text_anzeigen(c)
{
 document.all['text'+c].style.display='inline';
 document.all['weniger'+c].style.display='inline';
 document.all['mehr'+c].style.display='none';
 document.all['mehrLink'+c].style.display='none';
 document.all['wenigerLink'+c].style.display='inline';
 window.parent.linkOpened=true;
};

function text_weg(c)
{
 document.all['text'+c].style.display='none';
 document.all['weniger'+c].style.display='none';
 document.all['mehr'+c].style.display='inline';
 document.all['mehrLink'+c].style.display='inline';
 document.all['wenigerLink'+c].style.display='none';
 window.parent.linkOpened=false;
};
//Text mit Mehr-Links
/*
function text_anzeigen(c)
{
 document.all['text'+c].style.display='inline';
 document.all['weniger'+c].style.display='inline';
 document.all['mehr'+c].style.display='none';
 document.all['mehrLink'+c].style.display='none';
 document.all['wenigerLink'+c].style.display='inline';
 window.parent.linkOpened=true;
};

function text_weg(c)
{
 document.all['text'+c].style.display='none';
 document.all['weniger'+c].style.display='none';
 document.all['mehr'+c].style.display='inline';
 document.all['mehrLink'+c].style.display='inline';
 document.all['wenigerLink'+c].style.display='none';
 window.parent.linkOpened=false;
};
*/
/*
function executeLink () {
        aCommand = document.activeElement.execute;
        if (aCommand != null) {
                if (aCommand.indexOf("exe") != -1) {
                        alert("Aufruf " + aCommand);
                } else {
                      if(aCommand.substring(0,9)=="tivion://")
                      {
                        window.open(aCommand, "_self");
                      }else
                      {
                        window.open("./" + aCommand, "_self");
                      };
                }
        }
}     */

