package com.bpam.habilitation.forms;

import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.util.MessageResources;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionError;


/*
 * @author Meissa
 *
 * Cette classe permet de valider qu'un utilisateur a entré son login et mot de passe pour se connecter. Si un des deux champs est incorrect<br>
 * Un message d'erreur approprié sera crée lors de l'appel de validate().
 */
public class LoginForm extends ActionForm
{
	private String identifiant;
	private String password;
	
	public LoginForm()
	{
	super();
	resetFields();
	}
	
	protected void resetFields()
	{
		this.identifiant="";
		this.password="";
		
	}
	
	/**
	 * Cette méthode est appelée par le framework pour mettre à jour les champs
	 * 
	 */
	public void reset(ActionMapping mapping, HttpServletRequest req)
	{
		resetFields();
	}
	
	/**
	 * Cette méthode est appelée par le framework pour verrifier la validité des champs du formulaire.
	 * 
	 */
	public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
	{
		ActionErrors errors=new ActionErrors();
		
		
		
		// verrification des champs
		if(identifiant==null || identifiant.length()<1)
		{
			errors.add("identifiant", new ActionError("error.identifiant.required"));
		}
		
		if(password==null || password.length()<1)
		{
			errors.add("password", new ActionError("error.password.required"));
		}
		
		return errors;
		
	}

	/**
	 * Returns the password.
	 * @return String
	 */
	public String getPassword()
	{
		return password;
	}

	/**
	 * Sets the password.
	 * @param password The password to set
	 */
	public void setPassword(String password)
	{
		this.password = password;
	}

	/**
	 * Returns the identifiant.
	 * @return String
	 */
	public String getIdentifiant()
	{
		return identifiant;
	}

	/**
	 * Sets the identifiant.
	 * @param identifiant The identifiant to set
	 */
	public void setIdentifiant(String identifiant)
	{
		this.identifiant = identifiant;
	}

}
