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

import javax.inject.Inject;

import de.ivu.elect.business.person.entity.Personendaten;
import de.ivu.elect.business.person.entity.PersonendatenProperties;
import de.ivu.elect.jee.presentation.dynamicform.FormBuilder;
import de.ivu.elect.jee.presentation.dynamicform.Property;
import de.ivu.elect.presentation.ViewFormBuilder;
import de.ivu.elect.presentation.person.AnsprechpartnerViewFormBuilder;

public class GebietAnsprechpartnerViewFormBuilder extends ViewFormBuilder {

  private static final long serialVersionUID = 1L;

  @Inject
  private transient AnsprechpartnerViewFormBuilder ansprechpartnerViewFormBuilder;

  public GebietAnsprechpartnerViewFormBuilder() {
    super();
  }

  public void addProperties(FormBuilder formBuilder, Personendaten personendaten) {
    addProperties(formBuilder, personendaten, false);
  }

  public void addProperties(FormBuilder formBuilder, Personendaten personendaten, boolean readonly) {
    PersonendatenProperties personendatenProperties = personendaten.getProperties();

    ansprechpartnerViewFormBuilder.addProperties(formBuilder, personendaten, readonly);

    Property telefonnummerFestnetzProperty = personendatenProperties.getTelefonnummerFestnetzProperty();

    formBuilder.addProperty(personendatenProperties.getBerufUnformatiertProperty()).withLabel(getMessage("entity.einzahl.ANSPRECHPARTNER.BERUF")).withReadonly(readonly);

    if (formBuilder.containsProperty(telefonnummerFestnetzProperty)) {
      formBuilder.before(telefonnummerFestnetzProperty);
    }
  }
}
