package de.ivu.elect.presentation.stimmeingabe.menu;

import java.util.Collection;
import java.util.Collections;

import de.ivu.elect.business.stimmeingabe.entity.Ergebniseingabestatus;
import de.ivu.elect.business.stimmeingabe.entity.Ergebniseingangsart;

public class ErfassungsschrittSchnellmeldungFreigabeMenuItem extends AbstractErfassungsschrittMenuItem {

  private static final long serialVersionUID = 1L;

  @Override
  public String getLabelKey() {
    return "erfassungsschritt.schnellmeldung.freigabe.menu.item.label";
  }

  @Override
  protected Ergebniseingangsart getExpectedErgebniseingangsart() {
    return Ergebniseingangsart.VORLAEUFIG;
  }

  @Override
  protected String getDialogNameInternal() {
    return "ConfirmGebietFreigeben";
  }

  @Override
  protected Collection<Ergebniseingabestatus> getExpectedErgebniseingabestatus() {
    return Collections.singleton(Ergebniseingabestatus.FREIGEGEBEN);
  }

  @Override
  public String getContainerStyleClass() {
    return super.getContainerStyleClass() + " steps-schnellmeldung steps-abstand";
  }

  @Override
  protected boolean isBefore() {
    if (getErgebniseingangsart().isEndgueltig()) {
      return true;
    }
    return isBeforeErgebniseingabestatus();
  }

}
