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

import javax.inject.Inject;

import de.ivu.elect.business.gebietsbaum.boundary.GebietSessionSelect;
import de.ivu.elect.presentation.exchange.ImportDescription;
import de.ivu.elect.presentation.exchange.menu.AbstractImportMenuItemEntry;
import de.ivu.elect.presentation.kandidatur.exchange.WahlvorschlagImportDescription;

public class WahlvorschlagImportMenuItemEntry extends AbstractImportMenuItemEntry {

  private static final long serialVersionUID = 1L;

  @Inject
  private transient GebietSessionSelect gebietSessionSelect;

  @Inject
  private transient WahlvorschlagImportDescription wahlvorschlagImportDescription;

  @Override
  protected ImportDescription getImportDescription() {
    return wahlvorschlagImportDescription;
  }

  @Override
  public boolean isDisabledInternal() {
    return super.isDisabledInternal() || !isGebieteBereitsImportiert();
  }

  public boolean isGebieteBereitsImportiert() {
    return gebietSessionSelect.isSelected();
  }

  @Override
  public String getLabelKey() {
    return "wahlvorschlag.import.menu.item.label";
  }
}
