using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Modèle
{
    public class Expert : Personne
    {
        public DateTime DateD { get; private set; }
        public string Surnom { get; private set; }

        public Expert(string email, string mdp, string surnom) : base(email, mdp)
        {
            Surnom = surnom;
            DateD = DateTime.Now;
        }

        public Expert(string email, string mdp, string surnom, DateTime date) : base(email, mdp)
        {
            Surnom = surnom;
            DateD = date;
        }

        public override string ToString()
        {
            return Email + " " + MotDePasse + " " + Surnom + " " + DateD;
        }

        public int ValiderSubmit(List<Requin> lBdFinie, List<Requin> lBdPasFinie)
        {
            int i=0;
            string rep;
            List<Requin> nv = new List<Requin>();
            foreach (Requin r in lBdPasFinie)
            {
                nv.Add(r);
            }
            foreach (Requin r in nv)
            {
                Console.WriteLine(r);
                Console.WriteLine("Voulez vous ajoutez ce requin à la base de données des requins ? (y/n)");
                rep = Console.ReadLine();
                while (rep!="n" && rep != "y")
                {
                    Console.WriteLine("Erreur de saisie (y/n)");
                    rep = Console.ReadLine();
                }
                if (rep == "y")
                {
                    lBdFinie.Add(r);
                    i++;
                }
                lBdPasFinie.Remove(r);

            }
            return i;
        }


        public int ValiderUnChangement(List<Requin> lBdFinie, List<Requin> lBdPasfinie)
        {
            int i = 0;
            string rep;
            List<Requin> nv = new List<Requin>();
            foreach (Requin r in lBdPasfinie)
            {
                nv.Add(r);
            }
            foreach (Requin r in nv)
            {
                Console.WriteLine(r);
                Console.WriteLine("Voulez vous ajoutez ce requin à la base de données des requins ? (y/n)");
                rep = Console.ReadLine();
                while (rep != "n" && rep != "y")
                {
                    Console.WriteLine("Erreur de saisie (y/n)");
                    rep = Console.ReadLine();
                }
                if (rep == "y")
                {
                    lBdFinie.Remove(r);
                    lBdFinie.Add(r);
                    i++;
                }
                lBdPasfinie.Remove(r);

            }
            return i;
        }


        public bool Equals(Expert e)
        {
            return Email == e.Email;
        }
    }
}
