
package de.ivu.elect.presentation.niederschrift.form;

import de.ivu.elect.business.niederschrift.entity.Niederschrift;
import de.ivu.elect.business.niederschrift.entity.NiederschriftConstants;
import de.ivu.elect.business.wahl.entity.Wahl;
import de.ivu.elect.business.wahl.entity.WahlConstants;
import de.ivu.elect.business.wahl.entity.WahlterminConstants;
import de.ivu.elect.jee.presentation.dynamicform.FormBuilder;
import de.ivu.elect.jee.presentation.dynamicform.ReadOnlyStringProperty;

public class NiederschriftStatusAenderungSearchFormBuilder extends AbstractNiederschriftViewFormBuilder {

  private static final long serialVersionUID = 1L;

  public NiederschriftStatusAenderungSearchFormBuilder() {
    super();
  }

  public void addProperties(FormBuilder formBuilder, Niederschrift niederschrift) {
    if (!isNiederschriftErfassungMitWahlContext()) {
      Wahl wahl = niederschrift.getWahl();

      if (wahl != null) {
        formBuilder.addProperty(new ReadOnlyStringProperty(getMessage(WahlConstants.MESSAGE_KEY_ENTITY_EINZAHL), wahl.getName()));
        formBuilder.addProperty(new ReadOnlyStringProperty(getMessage(WahlterminConstants.MESSAGE_KEY_WAHLDATUM_EINZAHL), getUserLocale().formatDate(wahl.getWahldatum())));
      }
    }

    formBuilder
        .addProperty(new ReadOnlyStringProperty(getMessage(NiederschriftConstants.MESSAGE_KEY_WAHLDURCHFUEHRUNGSGEBIET_ID_EINZAHL), getNiederschriftFormatter().formatAnzeigeGebiet(niederschrift)));
  }
}
