コード例 #1
0
 public VueTourChampionnat(TourChampionnat tour)
 {
     _tour = tour;
 }
コード例 #2
0
    private void ChargerCompetitions()
    {
        XDocument doc = XDocument.Load("Database/competitions.xml");

        foreach (XElement e in doc.Descendants("Competitions"))
        {
            foreach (XElement e2 in e.Descendants("Competition"))
            {
                int         id          = int.Parse(e2.Attribute("id").Value);
                string      nom         = e2.Attribute("nom").Value;
                string      logo        = e2.Attribute("logo").Value;
                string[]    maj         = e2.Attribute("miseAJour").Value.Split('/');
                DateTime    miseAJour   = new DateTime(2000, int.Parse(maj[1]), int.Parse(maj[0]));
                Competition competition = new Competition(id, nom, logo, miseAJour);
                Session.Instance.Partie.Gestionnaire.Competitions.Add(competition);
                foreach (XElement e3 in e2.Descendants("Tour"))
                {
                    string   nomTour     = e3.Attribute("nom").Value;
                    bool     allerRetour = e3.Attribute("allerretour").Value == "O" ? true : false;
                    string[] heureStr    = (e3.Attribute("heure").Value).Split(':');
                    DateTime heure       = new DateTime(2000, 1, 1, int.Parse(heureStr[0]), int.Parse(heureStr[1]), 0);

                    List <DateTime> dates     = new List <DateTime>();
                    bool            continuer = true;
                    int             i         = 1;
                    while (continuer)
                    {
                        try
                        {
                            string[] date = e3.Attribute("d" + i.ToString()).Value.Split('/');
                            DateTime d    = new DateTime(2000, int.Parse(date[1]), int.Parse(date[0]));
                            dates.Add(d);
                            i++;
                        }
                        catch
                        {
                            continuer = false;
                        }
                    }

                    List <Decalage> decalages = new List <Decalage>();
                    foreach (XElement e4 in e3.Descendants("Decalage"))
                    {
                        int decalage = int.Parse(e4.Attribute("jour").Value);
                        int nbMatchs = int.Parse(e4.Attribute("nbMatchs").Value);
                        heureStr = (e4.Attribute("heure").Value).Split(':');
                        DateTime heureD = new DateTime(2000, 1, 1, int.Parse(heureStr[0]), int.Parse(heureStr[1]), 0);
                        decalages.Add(new Decalage(decalage, nbMatchs, heureD));
                    }
                    int  qualifies;
                    Tour t;
                    switch (e3.Attribute("type").Value)
                    {
                    case "CH":
                        qualifies = int.Parse(e3.Attribute("qualifies").Value);
                        t         = new TourChampionnat(nomTour, heure, dates, allerRetour, decalages, qualifies); break;

                    case "E": t = new TourElimination(nomTour, heure, dates, decalages, allerRetour); break;

                    default:
                        int poules = int.Parse(e3.Attribute("nombrePoules").Value);
                        qualifies = int.Parse(e3.Attribute("qualifies").Value);

                        t = new TourPoules(nomTour, heure, dates, decalages, poules, allerRetour, qualifies);
                        break;
                    }
                    competition.Tours.Add(t);
                    foreach (XElement e4 in e3.Descendants("Participant"))
                    {
                        Club c = Session.Instance.Partie.Gestionnaire.ObtenirClub(int.Parse(e4.Attribute("id").Value));
                        t.Clubs.Add(c);
                    }
                }
            }
        }
    }