package controller;

import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Film;
import utils.ArrayListsFonctions;


//**************************************************
//********************CONTROLLER********************
//****METHODE doGET & doPOST de GESTION D'UN FILM***
//**************************************************

@WebServlet("/GererFilm")
public class GererFilm extends HttpServlet {
	private static final long serialVersionUID = 1L;
       

    public GererFilm() {
        super();
    }

	// ****************doGET***********************
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String JSPURL = "";
		String parameter = request.getParameter("action");
		
		if(parameter == null){
			
			JSPURL = "gererFilm.jsp";
			request.setAttribute("films", MongoControl.getFilms());
			
		} else if(parameter.equals("grade")){
			JSPURL = "grade.jsp";
			String filmId = request.getParameter("id");
			Film f = MongoControl.getFilmById(filmId);
			request.setAttribute("film", f);
			
		} else if(parameter.equals("modifier")){
			
			JSPURL = "modifier.jsp";
			String filmId = request.getParameter("id");
			Film f = MongoControl.getFilmById(filmId);
			
			String[] genre = f.getGenre().split(",");
			String[] natio = f.getNatio().split(",");
			
			f.setGenre(ArrayListsFonctions.arrayToBDBL(genre).toString());
			f.setNatio(ArrayListsFonctions.arrayToBDBL(natio).toString());
			
			request.setAttribute("film", f);		

		} else {
			JSPURL = "gererFilm.jsp";
			String filmId = request.getParameter("id");
			MongoControl.deleteFilm(filmId);
		}

		RequestDispatcher rd = request.getRequestDispatcher(JSPURL);
		rd.forward(request, response);
	}

	// ****************doPOST***********************
	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}

}
