class SWMenu {
  constructor() {
    this.menu = [
      {
        id: 'producten',
        title: 'Selecteer ' + SWStandaardwaarden.getWaarde("behandeling_woord"),
        url: '/lib/10_html/10_reserveren/producten.html'
      },
      {
        id: 'behandelaar',
        title: 'Selecteer een ' + SWStandaardwaarden.getWaarde("behandelaar_woord"),
        url: '/lib/10_html/10_reserveren/behandelaar.html'
      },
      {
        id: 'kalender',
        title: 'Selecteer een datum',
        url: '/lib/10_html/10_reserveren/kalender.html'
      },
      {
        id: 'gegevens',
        title: 'Persoonlijke gegevens',
        url: '/lib/10_html/10_reserveren/gegevens.html'
      },
    ];
  }

  build() {
    let menu_html = '';
    let huidig_gevonden = false;
    let url = document.location.pathname;
    let html_voor = '<a href="[url]">';
    let html_na = '</a>';

    for (let i = 0; i < this.menu.length; i++) {
      const item = this.menu[i];

      if (item.id == "behandelaar" && !this.behandelaarKiezen()) {
        //Niet behandelaar optie weergeven
        continue;
      }
      if (huidig_gevonden) {
        html_voor = '';
        html_na = '';
      }
      if (!huidig_gevonden && url == item.url) {
        html_voor = '<span class="current-page">';
        html_na = '</span>';
        huidig_gevonden = true;
      }

      if (menu_html != "") {
        menu_html += ' &gt; ';
      }
      menu_html += html_voor.replace("[url]", item.url) + item.title + html_na;
    }
    return menu_html;
  }

  behandelaarKiezen() {
    let kiezen = false;
    if (SWStandaardwaarden.getWaarde("kiesmedewerker").toLowerCase() == "ja") {
      kiezen = true;
    }
    return kiezen;
  }

  display() {
    let html = this.build();
    document.getElementById("menu_strip").innerHTML = html;
  }

  getNext() {
    let next_url = "";
    let current = document.location.pathname;
    for (let i = 0; i < this.menu.length; i++) {
      const item = this.menu[i];
      if (item.url == current) {
        let next = i + 1;
        if (next >= this.menu.length) {
          //volgende item ligt buiten menu
          return "";
        }
        if (this.menu[next].id == "behandelaar" && !this.behandelaarKiezen()) {
          next++;
          if (next >= this.menu.length) {
            //volgende item ligt buiten menu
            return "";
          }
        }
        next_url = this.menu[next].url;
      }
    }
    return next_url;
  }
}

