package de.ivu.elect.presentation.edit;

import java.util.Collection;

import de.ivu.elect.business.benutzerverwaltung.control.AbstractBenutzerParameterInit;
import de.ivu.elect.business.benutzerverwaltung.entity.Benutzer;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEditorButtonEinstellung;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEditorFeldEinstellung;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerParameter;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerParameterWerte;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerSuchparameterEinstellung;


import static java.util.Arrays.asList;

public class FormBuilderBenutzerParameterInit extends AbstractBenutzerParameterInit {
  @Override
  protected Collection<BenutzerParameter> createDefaultParameters(Benutzer benutzer) {
    return asList(
        create(BenutzerParameterWerte.SUCHPARAMTER_SICHTBARKEIT, BenutzerSuchparameterEinstellung.EINBLENDEN.name()),
        create(BenutzerParameterWerte.EDITOR_FELD_SICHTBARKEIT, getDefaultEditorSichtbarkeit().name()),
        create(BenutzerParameterWerte.EDITOR_BUTTON_SICHTBARKEIT, getDefaultEditorButtonSichtbarkeit().name())
    );
  }

  protected BenutzerEditorButtonEinstellung getDefaultEditorButtonSichtbarkeit() {
    return BenutzerEditorButtonEinstellung.AM_ENDE_EINBLENDEN;
  }

  protected BenutzerEditorFeldEinstellung getDefaultEditorSichtbarkeit() {
    return BenutzerEditorFeldEinstellung.NUR_WICHTIGE_EINBLENDEN;
  }
}
