private void GenerateComments(StringBuilder sb, RankingOverview ranking, string commentTemplateString) { var entriesWithComments = ranking.RankedEntries.Concat(ranking.UnrankedEntries) .Where(rankingEntry => !string.IsNullOrWhiteSpace(rankingEntry.Comment)) .OrderBy(rankingEntry => rankingEntry.JamEntry.Title) .ThenBy(rankingEntry => rankingEntry.JamEntry.Team.Description) .ToList(); if (!entriesWithComments.Any()) { return; } sb.Append("\n\n"); sb.Append("[size=6]Comments:[/size]"); sb.Append("\n\n"); sb.Append("[spoiler]"); var entryTemplate = EntryTemplateParser.Parse(commentTemplateString); foreach (var rankingEntry in entriesWithComments) { sb.Append("\n"); sb.Append(entryTemplate.FormatEntry(rankingEntry)); } sb.Append("[/spoiler]"); }
// ----- // Setup // ----- public AppModel() { Jam = new JamOverview { Entries = new List <JamEntry>() }; PlayerDataManager = new JamPlayerDataManager { AppModel = this }; Ranking = new RankingOverview(); RatingCriteria = CreateDefaultRatingCriteria(); }
// ----- // Setup // ----- public AppModel() { Jam = new JamOverview { Entries = new List <JamEntry>(), AwardCriteria = new List <JamAwardCriterion>() }; PlayerDataManager = new JamPlayerDataManager { AppModel = this }; RatingCriteria = CreateDefaultRatingCriteria(); Ranking = new RankingOverview(); Awards = new AwardsOverview(); Exporter = new Exporter(this); }
private void GenerateTop3(StringBuilder sb, RankingOverview ranking) { if (!ranking.RankedEntries.Any()) { return; } sb.Append("\n\n"); sb.Append("[size=6]Top 3:[/size]"); var top3Entries = ranking.RankedEntries.Take(3); foreach (var rankingEntry in top3Entries) { var jamEntry = rankingEntry.JamEntry; sb.Append("\n\n"); sb.Append($"[size=5][b]{ jamEntry.Title }[/b] by { jamEntry.Team.Description }[/size]\n"); sb.Append("\n"); sb.Append(rankingEntry.Comment); } }
private void GenerateRanking(StringBuilder sb, RankingOverview ranking) { if (!ranking.RankedEntries.Any()) { return; } sb.Append("\n\n"); sb.Append($"[size=6]Ranking:[/size]"); sb.Append("\n\n"); sb.Append($"[spoiler][list=1]"); foreach (var rankingEntry in ranking.RankedEntries) { var jamEntry = rankingEntry.JamEntry; sb.Append("\n"); sb.Append($"[*][b]{ jamEntry.Title }[/b] by { jamEntry.Team.Description }"); } sb.Append("\n"); sb.Append("[/list][/spoiler]"); }