예제 #1
0
        public async Task <IActionResult> LiteSession(string id1, string id2)
        {
            int?token   = null;
            var session = _db.Sessions.FindById(id1);

            if (session != null && session.IdVerification == id2)
            {
                // Connected
                _db.RecordStats(s => s.Devices++);
                token = _db.ShareTokens.FindOne(x => x.SessionId == id1)?.Id;
            }
            else
            {
                token = CreateSession(id1, id2, liteSession: true);

                await _hub.AddSessionNotification(id1, "Session Created", true);
            }

            var vm = new LiteSessionModel
            {
                SessionId           = id1,
                SessionVerification = id2,

                Token    = token,
                Messages = GetMessagesInternal(id1, id2, -1).ToArray()
            };

            ViewData["LiteMode"] = true;
            return(View(vm));
        }
예제 #2
0
        public IActionResult LiteSessionDeletePrompt(string id1, string id2)
        {
            if (!IsValidSession(id1, id2))
            {
                return(RedirectToAction(nameof(HomeController.Index), "Home"));
            }

            var vm = new LiteSessionModel
            {
                SessionId           = id1,
                SessionVerification = id2
            };

            return(View(vm));
        }