private void _LavBaneOgKlasse(string klasse, string bane) { if (klasse != string.Empty) { Klasse k = this.classes.Find(kk => kk.Navn == klasse); if (k == null) { k = new Klasse(klasse); this.classes.Add(k); } if (bane != string.Empty) { Bane b = this.baner.Find(bb => bb.Navn == bane); if (b == null) { b = new Bane(bane); this.baner.Add(b); } k.Bane = b; } } }
public static string GruppeStartListe(bool isTxt, bool includeAll, IList <Loeber> loebere, Config config) { List <Gruppe> grupper = new List <Gruppe>(); foreach (GruppeOgKlasse gk in config.gruppeOgKlasse) //.Where(item => item.LøbsKlasse.Trim() != "-" && item.LøbsKlasse.Trim() != string.Empty)) { if (gk.LøbsKlasse != null && gk.LøbsKlasse.Trim() != "-" && gk.LøbsKlasse.Trim() != string.Empty) { Gruppe g = grupper.Find(item => item.navn == gk.Gruppe); if (g == null) { // lav gruppen g = new Gruppe(gk.Gruppe, 0); grupper.Add(g); } // tilføj klasse definitionen if (!g.Klasser.Exists(k => k.LøbsKlasse != null && k.LøbsKlasse.Navn.Equals(gk.LøbsKlasse))) { Klasse kk = config.classes.Find(c => c.Navn == gk.LøbsKlasse); g.Klasser.Add(new Klasseconfig(gk.Klasse, kk)); } } } StringBuilder sb = new StringBuilder(); if (isTxt) { sb.AppendLine("Start liste"); sb.AppendLine("==========="); sb.AppendLine(); foreach (Gruppe g in grupper) { var kl = config.gruppeOgKlasse.Where(gk => gk.Gruppe == g.navn).ToList().ConvertAll(kg => kg.LøbsKlasse); var lll = loebere.Where(l => kl.Contains(l.Løbsklassenavn) && (includeAll || config.Klubber.FirstOrDefault(k => k.Navn.Equals(l.Klub.Navn) || k.NavnKort.Equals(l.Klub.Navn)) != null)).ToList(); if (lll.Count > 0) { sb.AppendLine(); sb.AppendLine("Gruppe " + g.navn); sb.AppendLine("--------------"); sb.AppendLine(txtTable(lll.OrderBy(l => l.StartTid).ToList())); } } } else { sb.AppendLine("<html>"); sb.AppendLine("<body>"); sb.AppendLine("<h1>Startliste</h1>"); foreach (Gruppe g in grupper) { var kl = config.gruppeOgKlasse.Where(gk => gk.Gruppe == g.navn).ToList().ConvertAll(kg => kg.LøbsKlasse); var lll = loebere.Where(l => kl.Contains(l.Løbsklassenavn) && (includeAll || config.Klubber.FirstOrDefault(k => k.Navn.Equals(l.Klub.Navn) || k.NavnKort.Equals(l.Klub.Navn)) != null)).ToList(); if (lll.Count > 0) { sb.AppendLine("<h3>Gruppe " + g.navn + "</h3>"); sb.AppendLine(htmlTable(g.navn, lll.OrderBy(l => l.StartTid).ToList())); } } sb.AppendLine("</body>"); sb.AppendLine("</html>"); } return(sb.ToString()); }