package controleur;

import architecture.Controleur;
import architecture.Fenetre;
import architecture.Vue;
import donnee.AppuiDeBoutonDAO;
import vue.VueAppuisAnnee;
import vue.VueAppuisJour;
import vue.VueAppuisMois;

import java.time.LocalDate;
import java.time.YearMonth;
import java.time.Year;




public class ControleurAppuiDeBoutton extends Controleur{

	public ControleurAppuiDeBoutton()
	{
		Journal.ecrire(Journal.NIVEAU.ROULEMENT, "new ControleurAppuiDeBoutton()");
	}
	
	public void initialiser()
	{
		AppuiDeBoutonDAO appuiDeBoutonDAO = new AppuiDeBoutonDAO();
		//VueAppuisAnnee.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParAnnee(Year.now()));
		//VueAppuisMois.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParMois(YearMonth.now()));
		VueAppuisJour.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParJour(LocalDate.now()));
	}
	
	public void afficherAnnee() {
		Journal.ecrire(Journal.NIVEAU.ROULEMENT, "ControleurAppuiDeBoutton.afficherAnnee()");
		AppuiDeBoutonDAO appuiDeBoutonDAO = new AppuiDeBoutonDAO();
		
		Vue nouvelleVueAnnee = VueAppuisAnnee.getInstance();
		Controleur.choisirVuePrincipale(VueAppuisAnnee.class);
		Fenetre.getInstance().afficherVue(nouvelleVueAnnee);
		VueAppuisAnnee.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParAnnee(Year.now()));
	}
	
	public void afficherMois() {
		Journal.ecrire(Journal.NIVEAU.ROULEMENT, "ControleurAppuiDeBoutton.afficherMois()");
		AppuiDeBoutonDAO appuiDeBoutonDAO = new AppuiDeBoutonDAO();
		
		Vue nouvelleVueMois = VueAppuisMois.getInstance();
		Controleur.choisirVuePrincipale(VueAppuisMois.class);
		Fenetre.getInstance().afficherVue(nouvelleVueMois);
		VueAppuisMois.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParMois(YearMonth.now()));
	}
	
	public void afficherJour() {
		Journal.ecrire(Journal.NIVEAU.ROULEMENT, "ControleurAppuiDeBoutton.afficherJour()");
		AppuiDeBoutonDAO appuiDeBoutonDAO = new AppuiDeBoutonDAO();
		
		Vue nouvelleVueJour = VueAppuisJour.getInstance();
		Controleur.choisirVuePrincipale(VueAppuisJour.class);
		Fenetre.getInstance().afficherVue(nouvelleVueJour);
		VueAppuisJour.getInstance().afficherAppuisDeBoutton(appuiDeBoutonDAO.listerAppuisDeBoutonParJour(LocalDate.now()));
	}
}
