Esempio n. 1
0
        //
        // ──────────────────────────────────────────────────────────────────────────
        //   :::::: C O N S T R U C T O R S : :  :   :    :     :        :          :
        // ──────────────────────────────────────────────────────────────────────────
        //

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="dm">The dm conversation</param>
        /// <param name="userId">The id of the caller</param>
        /// <param name="isAdmin">True if the caller is an admin, false otherwise</param>
        /// <param name="_context">The database context</param>
        public DMTitle(Data.Models.DirectMessageTitle dm, Guid userId, bool isAdmin, Data.ApplicationDBContext _context)
        {
            _context.Entry(dm).Reference("receiver").Load();
            _context.Entry(dm).Reference("Sender").Load();
            Data.Models.User recv = dm.receiver;
            Data.Models.User load = userId == recv.id ? dm.Sender : recv;

            this.id             = dm.id.ToString();
            this.receiver       = load.nickname;
            this.emailReceiver  = isAdmin ? load.email : null;
            this.lastUpdate     = dm.lastUpdate;
            this.closed         = dm.closed;
            this.unreadMessages = isAdmin ? dm.unreadMessagesForAdmin : dm.unreadMessagesForUser;
            this.title          = dm.title;
        }
Esempio n. 2
0
        //
        // ──────────────────────────────────────────────────────────────────────────
        //   :::::: C O N S T R U C T O R S : :  :   :    :     :        :          :
        // ──────────────────────────────────────────────────────────────────────────
        //

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="bet">The fb</param>
        /// <param name="_context">The database context</param>
        /// <param name="includeResult">True to include the result of the match, false otherwise</param>
        public GroupBet(Data.Models.FootballBet bet, Data.ApplicationDBContext _context, bool includeResult)
        {
            _context.Entry(bet).Reference("MatchDay").Load();
            _context.Entry(bet.MatchDay).Reference("Competition").Load();
            _context.Entry(bet).Reference("type").Load();
            _context.Entry(bet).Reference("typePay").Load();
            _context.Entry(bet.MatchDay).Reference("HomeTeam").Load();
            _context.Entry(bet.MatchDay).Reference("AwayTeam").Load();

            this.bet          = bet.id.ToString();
            this.competition  = bet.MatchDay.Competition.name;
            this.betName      = bet.MatchDay.HomeTeam.name + " vs " + bet.MatchDay.AwayTeam.name;
            this.matchdayDate = bet.MatchDay.date;
            this.typeBet      = new NameWinRate(bet.type);
            this.typePay      = new NameWinRate(bet.typePay);
            this.minBet       = bet.minBet;
            this.maxBet       = bet.maxBet;
            this.lastBetTime  = bet.dateLastBet;
            if (Util.CheckBetType.isJackpot(bet, _context))
            {
                this.usersJoined = bet.usersJoined;
            }
            if (includeResult)
            {
                this.firstHalfHomeGoals  = bet.MatchDay.firstHalfHomeGoals;
                this.firstHalfAwayGoals  = bet.MatchDay.firstHalfAwayGoals;
                this.secondHalfHomeGoals = bet.MatchDay.secondHalfHomeGoals;
                this.secondHalfAwayGoals = bet.MatchDay.secondHalfAwayGoals;
                this.fullTimeHomeGoals   = bet.MatchDay.fullTimeHomeGoals;
                this.fullTimeAwayGoals   = bet.MatchDay.fullTimeAwayGoals;
            }
        }