Esempio n. 1
0
 public ActionResult WebPageClose()
 {
     if (!string.IsNullOrEmpty(HttpContext.Session.GetString("roomId")))
     {
         var userEmail = HttpContext.Session.GetString("userEmail");
         var roomid    = HttpContext.Session.GetString("roomId");
         _roomUserDB.deleteRoomUser(userEmail);
         if (_roomUserDB.getUsersInRoom(roomid).Count == 0)
         {
             _roomDB.deleteRoom(roomid);
         }
         Activity roomActivity = new Activity
         {
             user_email       = HttpContext.Session.GetString("userEmail"),
             user_first_name  = HttpContext.Session.GetString("firstName"),
             user_last_name   = HttpContext.Session.GetString("lastName"),
             activity_type    = "Leave room",
             activity_details = HttpContext.Session.GetString("roomName"),
             last_activity    = DateTime.Now,
         };
         _activityDB.logActivity(roomActivity);
         HttpContext.Session.Remove("roomId");
         HttpContext.Session.Remove("roomName");
     }
     return(Ok());
 }
        public IActionResult Login([Bind] User user)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var result = _userDB.loginUser(user);
                    if (result.error)
                    {
                        TempData["msg"] = result.message;
                        return(View("~/Views/Login/Index.cshtml"));
                    }
                    else
                    {
                        var temp = _userDB.getUser(user);
                        if (temp != null)
                        {
                            _userDB.updateUserSignIn(temp.user_email);
                            HttpContext.Session.SetString("firstName", temp.user_first_name);
                            HttpContext.Session.SetString("lastName", temp.user_last_name);
                            HttpContext.Session.SetString("userEmail", temp.user_email);
                            HttpContext.Session.SetString("userRole", temp.user_role);

                            Activity activity = new Activity
                            {
                                user_email       = temp.user_email,
                                user_first_name  = temp.user_first_name,
                                user_last_name   = temp.user_last_name,
                                activity_type    = "Sign in",
                                activity_details = "",
                                last_activity    = DateTime.Now,
                            };
                            _activityDB.logActivity(activity);
                            TempData["msg"] = result.message;
                            return(RedirectToAction("Index", "Main"));
                        }
                        else
                        {
                            TempData["msg"] = "Failed to retrieve user information.";
                            return(View("~/Views/Login/Index.cshtml"));
                        }
                    }
                }
            }
            catch (Exception e)
            {
                TempData["msg"] = e.Message;
            }
            return(View("~/Views/Login/Index.cshtml"));
        }
        private void logActivity(string activityType, string activity_details)
        {
            Activity activity = new Activity
            {
                user_email       = HttpContext.Session.GetString("userEmail"),
                user_first_name  = HttpContext.Session.GetString("firstName"),
                user_last_name   = HttpContext.Session.GetString("lastName"),
                activity_type    = activityType,
                activity_details = activity_details,
                last_activity    = DateTime.Now,
            };

            _activityDB.logActivity(activity);
        }