package de.ivu.elect.presentation;

import javax.annotation.Nullable;
import javax.enterprise.inject.Specializes;

import de.ivu.elect.business.ergebnis.entity.Ergebnis;
import de.ivu.elect.business.gebietsbaum.entity.Wahldurchfuehrungsgebiet;
import de.ivu.elect.business.wahl.entity.NlWahlCustomData;
import de.ivu.elect.business.wahl.entity.Wahl;

@Specializes
public class NlWasLayoutComponentsContext extends WasLayoutComponentsContext {
  private static final long serialVersionUID = 1L;

  @Override
  protected String buildSubcontextName() {
    Wahl wahl = getSelectedWahl();
    // ELECT-10268
    if (wahl == null || wahl.getCustomData(NlWahlCustomData.class).getNlWahlPhase().isErgebnisAnzeigen()) {
      return super.buildSubcontextName();
    }
    return buildSubContextSelectedGebiet();
  }

  @Override
  protected void appendErgebniseingabestatus(StringBuilder result, Ergebnis ergebnis, Wahldurchfuehrungsgebiet gebiet) {
    // nichts zu tun, in NL nicht interessant, da NlWahlphase vorhanden
  }

  @Override
  public boolean isFarbeImTabVerwenden() {
    return false; // ELECTVAPP-425
  }

  @Nullable
  @Override
  public String getCustomJS() {
    return "airgap.js";
  }

  @Nullable
  @Override
  public String getCustomInclude() {
    return "/WEB-INF/templates/airgap.xhtml";
  }
}
