Пример #1
0
        public async Task<IActionResult> Engage(Guid? id)
        {
            if (id == null)
                return NotFound();

            var channel = await context.Channels.FirstOrDefaultAsync(x => x.Id == id);
            if (channel == null)
                return NotFound();

            // Check the current user is authorised
            var cookie = new CookieService(context);
            var currentUser = await cookie.CurrentUser(Request);
            if (currentUser == null)
                return Redirect(Constants.Routes.Login);

            var channelAuth = new ChannelAuthService(context);
            var auth = await channelAuth.UserIsAuthed(channel, currentUser);
            if (!auth)
                return Redirect(Constants.Routes.AuthUserToChannel + id.ToString());

            return View();
        }
Пример #2
0
        protected async Task SetUp()
        {
            context        = DbService.NewTestContext();
            userService    = new UserService(context);
            channelService = new ChannelService(context);
            messageService = new MessageService(context);
            authService    = new ChannelAuthService(context);

            user = await userService.ExistingUser(Lorem);

            if (user == null)
            {
                user = await userService.CreateUser(Lorem, Lorem, Lorem);
            }

            channel = await channelService.CreateChannel(Lorem, Lorem, user);

            packet = JsonConvert.SerializeObject(new MessagePacket
            {
                UserCookie = user.CookieId,
                Channel    = channel.Id,
                Message    = Lorem
            });
        }
Пример #3
0
 public ChannelAuthController(ActiveBearContext _context)
 {
     context            = _context;
     channelAuthService = new ChannelAuthService(context);
     cookieService      = new CookieService(context);
 }