﻿  // Hauptmenü
  function MainMenu()
  {
    // Eigenschaften.
    this.Items = null;
    this.Align = "center";
    
    // Methoden.
    this.AddMainMenuItem = AddMainMenuItem;
  }
  
  // Fügt einem Hauptmenü einen Hauptmenü-Eintrag hinzu.
  // @param oMainMenuItem Hauptmenü-Eintrag.
  function AddMainMenuItem(oMainMenuItem)
  {
    if (this.Items == null) {
      this.Items = new Array();
    }
    
    this.Items[this.Items.length] = oMainMenuItem;
    
    return oMainMenuItem;
  }  
  
  // Hauptmenü-Eintrag.
  // @param sText Anzeigetext.
  // @param sUrl URL (Ziel-Link).
  // @param sToolTip Tool-Tip - Beschreibung.
  // @param bOpenInNewWindow Legt fest ob die URL in einem neuen Fenster geöffnet werden soll.
  function MainMenuItem(sText, sUrl, sToolTip, bOpenInNewWindow)
  {
    // Eigenschaften.
    this.Text = sText;
    this.Url  = sUrl;
    this.ToolTip = sToolTip;
    this.OpenInNewWindow = bOpenInNewWindow;
    
    this.Items = null;
    
    // Methoden.
    this.AddSubMenuItem = AddSubMenuItem;
  }
  
  // Fügt einem Hauptmenü-Eintrag einen Untermenü-Eintrag hinzu.
  // @param oSubMenuItem Untermenü-Eintrag.
  function AddSubMenuItem(oSubMenuItem)
  {
    if (this.Items == null) {
      this.Items = new Array();
    }
    
    this.Items[this.Items.length] = oSubMenuItem;
    
    return oSubMenuItem;
  } 
   
  // Untermenü-Eintrag.
  // @param sText Anzeigetext.
  // @param sUrl URL (Ziel-Link).
  // @param sToolTip Tool-Tip - Beschreibung.
  // @param bOpenInNewWindow Legt fest ob die URL in einem neuen Fenster geöffnet werden soll.
  // @param bDontSetSelectedStyle Legt fest ob der Style für eine Selektierung gesetzt werden soll.
  function SubMenuItem(sText, sUrl, sToolTip, bOpenInNewWindow, bDontSetSelectedStyle)
  {
    // Eigenschaften.
    this.Text = sText;
    this.Url  = sUrl;
    this.ToolTip = sToolTip;
    this.OpenInNewWindow = bOpenInNewWindow;
    this.DontSetSelectedStyle = bDontSetSelectedStyle
  }
  
  // **************************************************************************************************************************
  
  if (parent.MainMenu == null) {
    // Initialisieren des Hauptmenü's.
    parent.MainMenu = new MainMenu();
    
    //parent.MainMenu.Align = "left";
    
    parent.MainMenu.SelectedMainMenuItemIndex = 0;
    parent.MainMenu.LastSelectedMainMenuItemIndex = 0;
    parent.MainMenu.SelectedSubMenuItemIndex = -1;
    
    var fiie0 = "<span style=\"background-color: #000000;color: #ffffff;padding: 1px 3px 1px 3px;width: 15px; margin-right: 5px\">F</span>";
    var fiie1 = "<span style=\"background-color: #000000;color: #ffffff;padding: 1px 3px 1px 3px;width: 15px\">F</span>";
    var fiie2 = "<span style=\"background-color: #004498;color: #ffffff;padding: 1px 3px 1px 3px;width: 15px\">I</span>";
    var fiie3 = "<span style=\"background-color: #22922B;color: #ffffff;padding: 1px 3px 1px 3px;width: 15px\">I</span>";
    var fiie4 = "<span style=\"background-color: #9E080D;color: #ffffff;padding: 1px 3px 1px 3px;width: 15px\">E</span>";
    var fiie = fiie0 + fiie2 + fiie3 + fiie4;
    
    // Erstellen der Hauptmenü-Einträge und deren Untermenü-Einträge.
    var mmi1 = new MainMenuItem("Home", "main.html");
    mmi1.AddSubMenuItem(new SubMenuItem("<br>Finden Sie mehr über <b>baroso</b> heraus.<br><br><br><br><img border=\"0\" src=\"images/pfeil_unten.gif\">", "", "", false, true));
    
    var mmi2 = new MainMenuItem("Software<br>Entwicklung", "fiie.html");
    mmi2.AddSubMenuItem(new SubMenuItem("<br>" + fiie + "<br><br><br>The <b>" + fiie1 + " uture of Application Development</b><br><br><b>" + fiie2 + " nternet</b><br><b>" + fiie3 + " ntranet</b><br><b>" + fiie4 + " xtranet</b>", "", "", false, true));
    //mmi2.AddSubMenuItem(new SubMenuItem("Web - Design", ""));The Future of Application Development - Internet/Intranet/Extranet
    
    var mmi3 = new MainMenuItem("Produkte", "");
    mmi3.AddSubMenuItem(new SubMenuItem("<br>WebAdmin (CMS)", "http://webadmin.baroso.at", "WebAdmin (Content-Management-System)", true));
    mmi3.AddSubMenuItem(new SubMenuItem("<br><img border=\"0\" src=\"images/pfeil_oben.gif\"><br><br>Content-Management-System", "", "", false, true));
    //mmi3.AddSubMenuItem(new SubMenuItem("JK-Hair Style", ""));
    //mmi3.AddSubMenuItem(new SubMenuItem("Online XML-Editor", ""));
    
    var mmi4 = new MainMenuItem("Referenzen", "referenzen.html");
    mmi4.AddSubMenuItem(new SubMenuItem("<br>Hier einige <b>Referenzen</b> aus <b>verschiedenen Bereichen</b>.<br><br><br><br><img border=\"0\" src=\"images/pfeil_rechts.gif\">", "", "", false, true));
    //mmi3.AddSubMenuItem(new SubMenuItem("JK-Hair Style", ""));
    //mmi3.AddSubMenuItem(new SubMenuItem("Online XML-Editor", ""));

    var mmi5 = new MainMenuItem("Partner", "partner.html");
    mmi5.AddSubMenuItem(new SubMenuItem("<br>Die <b>Partner</b> von <b>baroso</b> sind ein <b>wichtiger Bestandteil</b> für den <b>Erfolg</b> vieler <b>Kunden-Projekte</b>.<br><br><br><img border=\"0\" src=\"images/pfeil_rechts.gif\">", "", "", false, true));

    var mmi6 = new MainMenuItem("E-Rechnung", "erechnung/index.html");
    mmi6.AddSubMenuItem(new SubMenuItem("<br><b>Wichtige Infos</b><br>zu den Themen <nobr><b>E-Rechnung</b></nobr>, <nobr><b>E-Angebot</b> und</nobr> <nobr><b>E-Gutschrift</b></nobr>.<br><br><br><img border=\"0\" src=\"images/pfeil_rechts.gif\">", "", "", false, true));
    
    var mmi7 = new MainMenuItem("Kontakt<br>Impressum<br>Anfahrt/Route<br>Info/AGB", "kontakt_impressum.html");
    mmi7.AddSubMenuItem(new SubMenuItem("Kontakt<br>Impressum", "kontakt_impressum.html", "Kontaktinformationen laut ECG"));
    mmi7.AddSubMenuItem(new SubMenuItem("Anfahrt/Route", "anfahrt.html", "Wo befindet sich baroso und wie kommt man dort hin ?"));
    mmi7.AddSubMenuItem(new SubMenuItem("Wer ist baroso ?", "wer.html", "Wer steht hinter dem Namen baroso ?"));
    mmi7.AddSubMenuItem(new SubMenuItem("AGB", "agb.html", "Allgemeine Geschäftsbedingungen"));
    //mmi4.AddSubMenuItem(new SubMenuItem("Anfahrtsplan", ""));
    
    // Hinzufügen der Hauptmenü-Einträge.
    parent.MainMenu.AddMainMenuItem(mmi1);
    parent.MainMenu.AddMainMenuItem(mmi2);
    parent.MainMenu.AddMainMenuItem(mmi3);
    parent.MainMenu.AddMainMenuItem(mmi4);
    parent.MainMenu.AddMainMenuItem(mmi5);
    parent.MainMenu.AddMainMenuItem(mmi6);
    parent.MainMenu.AddMainMenuItem(mmi7);
  }

  // **************************************************************************************************************************

  // Zeichnet das Hauptmenü.
  function PaintMainMenu()
  {
    if (parent != null && parent.MainMenu != null) {
      var sHtml1 = "";
      var sHtml2 = "";
      var bSelected = false;
      for (var i = 0; i < parent.MainMenu.Items.length; i++) {
        var mmi = parent.MainMenu.Items[i];
        
        var mmioinw = false;
        if (mmi.OpenInNewWindow) {
          mmioinw = true;
        }
        
        if (!bSelected) {
          if (i == parent.MainMenu.SelectedMainMenuItemIndex) {
            sHtml1 += '<tr><td class="td_main_menu_item_selected" align="' + parent.MainMenu.Align + '" height="30px"><a href="javascript:SelectMainMenuItem(' + i + ', ' + mmioinw + ')">' + mmi.Text + '</a></td></tr>';
            bSelected = true;
            if (mmi.Items != null) {
              for (var i1 = 0; i1 < mmi.Items.length; i1++) {
                var smi = mmi.Items[i1];
                
                var sCSSClass = 'td_sub_menu_item';
                if (i == parent.MainMenu.LastSelectedMainMenuItemIndex && i1 == parent.MainMenu.SelectedSubMenuItemIndex && !smi.DontSetSelectedStyle) {
                  sCSSClass = 'td_sub_menu_item_selected';
                }
                
                var sToolTip = '';
                if (smi.ToolTip) {
                  sToolTip = ' title="' + smi.ToolTip + '"';
                }
              
                if (smi.Url) {
                  var smioinw = false;
                  if (smi.OpenInNewWindow) {
                    smioinw = true;
                  }
                  
                  sHtml1 += '<tr><td class="' + sCSSClass + '" align="' + parent.MainMenu.Align + '"><a' + sToolTip + ' href="javascript:SelectSubMenuItem(' + i + ', ' + i1 + ', ' + smioinw + ')">' + smi.Text + '</a></td></tr>';
                }
                else {
                  sHtml1 += '<tr><td class="text_light" align="' + parent.MainMenu.Align + '"><span' + sToolTip + '>' + smi.Text + '</span></td></tr>';
                }
              }
            }
          }
          else {
            sHtml1 += '<tr><td class="td_main_menu_item" align="' + parent.MainMenu.Align + '" height="30px"><a href="javascript:SelectMainMenuItem(' + i + ', ' + mmioinw + ')">' + mmi.Text + '</a></td></tr>';
          }
        }
        else {
          sHtml2 += '<tr><td class="td_main_menu_item" align="' + parent.MainMenu.Align + '" height="30px"><a href="javascript:SelectMainMenuItem(' + i + ', ' + mmioinw + ')">' + mmi.Text + '</a></td></tr>';
        }
      }
      
      sHtml1 = '<table border="0" cellpadding="3" cellspacing="1" width="100%">' + sHtml1 + '</table>'
      sHtml2 = '<table border="0" cellpadding="3" cellspacing="1" width="100%">' + sHtml2 + '</table>'
      
      var sHtml = '<tr><td align="' + parent.MainMenu.Align + '" valign="top">' + sHtml1 + '</td></tr>';
      sHtml += '<tr><td align="' + parent.MainMenu.Align + '" valign="bottom">' + sHtml2 + '</td></tr>';
      
      window.document.write(sHtml);
    }
  }
  
  // Wählt einen Hauptmenü-Eintrag aus.
  // @param iSelectedMainMenuItemIndex Gibt an welcher Hauptmenü-Eintrag ausgewählt werden soll.
  // @param bOpenInNewWindow Legt fest ob die URL in einem neuen Fenster geöffnet werden soll.
  function SelectMainMenuItem(iSelectedMainMenuItemIndex, bOpenInNewWindow)
  {
    if (parent != null && parent.MainMenu != null) {
      parent.MainMenu.SelectedMainMenuItemIndex = iSelectedMainMenuItemIndex;
      
      window.location.replace(window.location.href);
      
      if (parent.MainMenu.Items[iSelectedMainMenuItemIndex].Url.length > 0) {
        parent.MainMenu.LastSelectedMainMenuItemIndex = iSelectedMainMenuItemIndex;
        parent.MainMenu.SelectedSubMenuItemIndex = -1;
        
        if (bOpenInNewWindow) {
          window.open(parent.MainMenu.Items[iSelectedMainMenuItemIndex].Url, "_blank");
        }
        else {
          parent.main.location.href = parent.MainMenu.Items[iSelectedMainMenuItemIndex].Url;
        }
      }
    }
  }
  
  // Wählt einen Untermenü-Eintrag aus.
  // @param iSelectedMainMenuItemIndex Gibt an welcher Hauptmenü-Eintrag ausgewählt ist.
  // @param iSelectedSubMenuItemIndex Gibt an welcher Untermenü-Eintrag ausgewählt werden soll.
  // @param bOpenInNewWindow Legt fest ob die URL in einem neuen Fenster geöffnet werden soll.
  function SelectSubMenuItem(iSelectedMainMenuItemIndex, iSelectedSubMenuItemIndex, bOpenInNewWindow)
  {
    if (parent != null && parent.MainMenu != null) {
      parent.MainMenu.SelectedMainMenuItemIndex = iSelectedMainMenuItemIndex;
      
      if (parent.MainMenu.Items[iSelectedMainMenuItemIndex].Items[iSelectedSubMenuItemIndex].Url.length > 0) {
        parent.MainMenu.SelectedSubMenuItemIndex = iSelectedSubMenuItemIndex;
      }

      window.location.replace(window.location.href);
      
      if (parent.MainMenu.Items[iSelectedMainMenuItemIndex].Items[iSelectedSubMenuItemIndex].Url.length > 0) {
        parent.MainMenu.LastSelectedMainMenuItemIndex = iSelectedMainMenuItemIndex;
        
        if (bOpenInNewWindow) {
          window.open(parent.MainMenu.Items[iSelectedMainMenuItemIndex].Items[iSelectedSubMenuItemIndex].Url, "_blank");
        }
        else {
          parent.main.location.href = parent.MainMenu.Items[iSelectedMainMenuItemIndex].Items[iSelectedSubMenuItemIndex].Url;
        }
      }
    }
  }

