Example #1
0
        public IEnumerable <BanView> GetBanView(IEnumerable <Ban> list)
        {
            var bans    = list as Ban[] ?? list.ToArray();
            var guids   = bans.Select(x => x.GuidIp).ToArray();
            var players = _playerRepository.GetPlayers(guids);

            return(bans.Select(x =>
            {
                var p = players.FirstOrDefault(y => y.GUID == x.GuidIp);

                var ban = new BanView
                {
                    Num = x.Num,
                    GuidIp = x.GuidIp,
                    Reason = x.Reason,
                    Minutesleft = x.Minutesleft
                };

                if (p != null)
                {
                    ban.PlayerComment = p.Comment;
                    ban.PlayerName = p.Name;
                }
                return ban;
            }).ToList());
        }
Example #2
0
        public async Task <IEnumerable <BanView> > GetBanViewAsync(IEnumerable <Ban> list)
        {
            using (_log.Time("GetBanViewAsync"))
            {
                var bans    = list as Ban[] ?? list.ToArray();
                var guids   = bans.Select(x => x.GuidIp).ToArray();
                var players = await _playerRepository.GetPlayersAsync(guids);

                return(bans.Select(x =>
                {
                    var p = players.FirstOrDefault(y => y.GUID == x.GuidIp);

                    var ban = new BanView
                    {
                        Num = x.Num,
                        GuidIp = x.GuidIp,
                        Reason = x.Reason,
                        Minutesleft = x.Minutesleft,
                    };

                    if (p != null)
                    {
                        ban.PlayerComment = p.Comment;
                        ban.PlayerName = p.Name;
                        ban.SteamId = p.SteamId;
                    }
                    return ban;
                }).ToList());
            }
        }
Example #3
0
        public void TestBanConvert()
        {
            var service = CreateService <BanViewSource>();

            //var tailoredDate = (new DateTime((DateTime.Now.AddDays(5).Ticks / 10000000) * 10000000)).ToUniversalTime(); //, DateTime.Now.Kind); //DateTime.Now.AddDays(5);
            var tailoredDate = new DateTime((DateTime.Now.AddDays(5).Ticks / 10000000) * 10000000);
            //tailoredDate.Ticks = tailoredDate.Ticks;

            //Just some standard content view
            var view = new BanView()
            {
                id           = 99,
                createUserId = 88,
                bannedUserId = 76,
                expireDate   = tailoredDate,
                message      = "Wowwee zowwoieeiy",
                type         = BanType.@public,
                createDate   = DateTime.Now
            };

            var temp  = service.FromView(view);
            var view2 = service.ToView(temp);

            Assert.Equal(view, view2);
        }
 public Task <ActionResult <BanView> > AddBanView([FromBody] SimpleBanData banData)
 {
     return(MatchExceptions(async() =>
     {
         var uid = GetUserIdStrict();
         var realBan = new BanView()
         {
             bannedUserId = banData.bannedUserId,
             type = banData.type,
             expireDate = DateTime.UtcNow.AddHours(banData.banHours),
             message = banData.message
         };
         return await CachedWriter.WriteAsync(realBan, uid);
     }));
 }
Example #5
0
 public Task <ActionResult <BanView> > PostAsync([FromBody] BanView ban)
 {
     return(ThrowToAction(() => service.WriteAsync(ban, GetRequesterNoFail())));
 }
 public Task <ActionResult <BanView> > WriteBanVariableAsync([FromBody] BanView ban) =>
 MatchExceptions(() => WriteAsync(ban));