package view.console.enseignant;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import model.Module;
import model.Promotion;
import model.QCM;
import model.Session;

public class Session_Creation {
	public static void trigger() {
		System.out.println("Création d'une session :");
	}
	
	public static void askDateDebut() {
		System.out.println("Date de début de session (format Jour-Mois-Année : 'jj-mm-aaaa') :");
	}
	
	public static void askDateFin() {
		System.out.println("Date de fin de session (format Jour-Mois-Année : 'jj-mm-aaaa'):");
	}
	
	public static void askRepetition() {
		System.out.println("Nombre de rendus maximum ('Entrée' pour entrer la valeur par défaut : 1) :");
	}
	
	public static void showPromotions(ArrayList<Promotion> liste_prom) {
		int i;
		System.out.println("Entrer le libellé ou le numéro de la promotion :");
		for (i = 0 ; i < liste_prom.size() ; i++) {
			System.out.println(Integer.toString(i+1) + ". " + liste_prom.get(i).getLibelle());
		}
	}
	
	public static void showModules(ArrayList<Module> liste_modules) {
		int i;
		System.out.println("Entrer le libellé ou le numéro du module :");
		for (i = 0 ; i < liste_modules.size() ; i++) {
			System.out.println(Integer.toString(i+1) + ". " + liste_modules.get(i).getLibelle());
		}
	}
	
	public static void showQCM(ArrayList<QCM> l_qcm) {
		int i;
		System.out.println("Choisir un numéro de QCM :");
		for (i = 0 ; i < l_qcm.size() ; i++) {
			System.out.println(Integer.toString(i+1) + ". " + l_qcm.get(i).getLibelle());
		}
	}
	
	public static void addSession(Session s) {
		System.out.println("La session du " + s.toString() + "a été ajoutée.");
	}
	
	public static void failPromotion() {
		System.out.println("Promotion non trouvée.");
	}
	
	public static void failModule() {
		System.out.println("Module non trouvé.");
	}
	
	public static void failDate() {
		System.out.println("Date non reconnue. Veuillez utiliser le format Jour-Mois-Année : 'jj-mm-aaaa'.");
	}
	
	public static void failDate(Date d, boolean apres) {
		String str_apres;
		if (apres) {
			str_apres = "ultérieure";
		} else {
			str_apres = "antérieure";
		}
		DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
		System.out.println("Veuillez entrer une date "+str_apres+" à " + dateFormat.format(d) + ".");
	}
	
	public static void fail(int min, int cap) {
		System.out.println("Veuillez entrer un chiffre entre "+ Integer.toString(min) + " et " + Integer.toString(cap) + ".");
	}
}
