
package de.ivu.elect.presentation.veranstaltung;

import java.io.Serializable;

import javax.enterprise.event.Observes;
import javax.enterprise.event.Reception;
import javax.inject.Named;

import org.apache.deltaspike.core.api.scope.ConversationGroup;
import org.apache.deltaspike.core.api.scope.GroupedConversationScoped;

import de.ivu.elect.business.veranstaltung.boundary.VeranstaltungSelectChangeEvent;
import de.ivu.elect.business.wahl.boundary.WahlSelectChangeEvent;
import de.ivu.elect.business.wahl.boundary.WahlterminSelectChangeEvent;
import de.ivu.elect.jee.presentation.view.ViewStackResetEvent;

@Named(TeilnehmerEinladen.COMPONENT_NAME)
@GroupedConversationScoped
@ConversationGroup(TeilnehmerEinladen.class)
public class TeilnehmerEinladen implements Serializable {

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "teilnehmerEinladen";

  private boolean teilnehmerEinladenModus = false;

  public TeilnehmerEinladen() {
    super();
  }

  public boolean isTeilnehmerEinladenModus() {
    return teilnehmerEinladenModus;
  }

  public void setTeilnehmerEinladenModus(boolean teilnehmerEinladenModus) {
    this.teilnehmerEinladenModus = teilnehmerEinladenModus;
  }

  public void onVeranstaltungSelectChangeEvent(@Observes(notifyObserver = Reception.IF_EXISTS) VeranstaltungSelectChangeEvent event) {
    reset();
  }

  public void onWahlSelectChangeEvent(@Observes(notifyObserver = Reception.IF_EXISTS) WahlSelectChangeEvent event) {
    reset();
  }

  public void onWahlterminSelectChangeEvent(@Observes(notifyObserver = Reception.IF_EXISTS) WahlterminSelectChangeEvent event) {
    reset();
  }

  public void onViewStackResetEvent(@Observes(notifyObserver = Reception.IF_EXISTS) ViewStackResetEvent event) {
    reset();
  }

  public void reset() {
    teilnehmerEinladenModus = false;
  }
}
