package pack.bean;

import java.io.Serializable;

import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;

import com.sun.jmx.snmp.Timestamp;

import pack.dao.UtilisateurDao;
import pack.entities.Utilisateur;


@ManagedBean
@ViewScoped


//le backing bean.
//Il s'agit en réalité d'une sorte de mini-contrôleur MVC,
//une sorte de glue qui relie la vue (la page JSF) au modèle de données (entité)
// tous les attributs de l'entité sont exposés à la vue à travers lui.
public class InscrireBean implements Serializable{

	 private static final long serialVersionUID = 1L;

	    private Utilisateur       utilisateur;
	

	    // Injection de notre EJB (Session Bean Stateless)
	    @EJB
	    private UtilisateurDao    utilisateurDao;

	    // Initialisation de l'entité utilisateur
	    public InscrireBean() {
	        utilisateur = new Utilisateur();
	    
	    }

	    // Méthode d'action appelée lors du clic sur le bouton du formulaire
	    // d'inscription
	    
	
	    
	    
	    

	    
	    public void inscrire() {
	        initialiserDateInscription();
	        utilisateurDao.creer( utilisateur );
	        FacesMessage message = new FacesMessage( "Succès de l'inscription !" );
	        FacesContext.getCurrentInstance().addMessage( null, message );
	        
	        //return "bonjour";
	    }

	    public Utilisateur getUtilisateur() {
	        return utilisateur;
	    }

	    private void initialiserDateInscription() {
	        Timestamp date = new Timestamp( System.currentTimeMillis() );
	        utilisateur.setDateInscription( date );
	    }
	}
