Esempio n. 1
0
 private TournamentInfo IsTournamentActive(List <TournamentInfo> allSearchJoinable)
 {
     foreach (var tournamentInfo in allSearchJoinable)
     {
         var currentTournament = GetTournamentInfo(tournamentInfo.tag);
         if (currentTournament != null && currentTournament.currentPlayers < currentTournament.maxPlayers && currentTournament.status.ToLower() == "inprogress")
         {
             {
                 TournamentInfo.SetRealStartDate(new List <TournamentInfo> {
                     currentTournament
                 });
                 return(currentTournament);
             }
         }
     }
     return(null);
 }
Esempio n. 2
0
        public TournamentSection GetTournaments()
        {
            TournamentSection result = new TournamentSection();
            var opened = GetOpenedTournaments();

            if (opened != null && opened.Any())
            {
                result.All.AddRange(opened.Where(s => s.status.ToLower() != "ended"));
            }

            var known    = GetKnownTournaments();
            var allKnown = new List <TournamentInfo>();

            if (known != null && known.Any())
            {
                //  result.All.AddRange(known.Where(s => s.status.ToLower() != "ended"));
                allKnown = known.Where(s => (s.maxPlayers > s.currentPlayers && s.status.ToLower() != "ended")).ToList();
            }

            // var allOpened = opened.Where(s => (s.maxCapacity>s.playerCount && s.status.ToLower() != "ended"));



            result.All.Sort();
            var allSearchJoinable = result.All.Where(s => s.maxPlayers > s.currentPlayers).ToList();

            allSearchJoinable.Sort();

            List <TournamentInfo> realCheckedJoinable = new List <TournamentInfo>();

            foreach (var tournamentInfo in allSearchJoinable)
            {
                GetTournamentInfo(tournamentInfo.tag);
                if (tournamentInfo.currentPlayers < tournamentInfo.maxPlayers)
                {
                    realCheckedJoinable.Add(tournamentInfo);
                    break;
                }
            }

            // var promotionTournaments = allSearchJoinable.Skip(0).Take(6).ToList();

            var promotionTournaments = allSearchJoinable.Skip(0).Take(6).ToList();

            promotionTournaments.Sort();
            TournamentInfo.SetRealStartDate(promotionTournaments);

            int count = 1;

            result.TournamentPromotion = new List <TournamentPromotion>();
            var promotion = new TournamentPromotion();

            foreach (var promotionTournament in allSearchJoinable)
            {
                if (count == 1)
                {
                    promotion.Title = "Open";
                    result.TournamentPromotion.Add(promotion);
                    promotion.TournamentLeft = promotionTournament;
                }
                if (count == 2)
                {
                    promotion.TournamentMiddle = promotionTournament;
                }
                if (count == 3)
                {
                    promotion.TournamentRight = promotionTournament;
                }
                if (count == 4)
                {
                    promotion = new TournamentPromotion {
                        Title = "Highest Players Capacity"
                    };
                    result.TournamentPromotion.Add(promotion);
                    promotion.TournamentLeft = promotionTournament;
                }
                if (count == 5)
                {
                    promotion.TournamentMiddle = promotionTournament;
                }
                if (count == 6)
                {
                    promotion.TournamentRight = promotionTournament;
                }

                count++;
            }
            result.All.AddRange(allKnown);

            return(result);
        }