コード例 #1
0
ファイル: UserController.cs プロジェクト: MeloYelo/MeloYelo
        public ActionResult Create(UserCreateViewModel model)
        {
            if(ModelState.IsValid)
            {
                model.Name = model.Name.Trim();

                if(model.Name.Length >= 3)
                {
                    User user = new User();
                    user.CreateDateTime = DateTime.Now;
                    user.Name = model.Name;
                    DocumentSession.Store(user);
                    DocumentSession.SaveChanges();
                    if(!user.Id.IsNullOrWhiteSpace())
                    {
                        CurrentUser = user;
                        FormsAuthentication.SetAuthCookie(user.Id, true);
                        return RedirectToAction("Create", "Room");
                    }
                }
                else
                {
                    ModelState.AddModelError("Name", "Name is not valid");
                }
            }
            return View(model);
        }
コード例 #2
0
        public static UserModel Convert(User user)
        {
            UserModel model = new UserModel
            {
                Username = user.Username,
                Password = user.Password
            };

            return model;
        }
コード例 #3
0
        public static UserFullModel Convert(User user)
        {
            UserFullModel model = new UserFullModel
            {
                UserId = user.Id,
                Picture = user.Picture,
                Username = user.Username,
                IsOnline =user.IsOnline,
                PostCount = user.Posts.Count,
                ChatRoomCount = user.ChatRooms.Count
            };

            return model;
        }
コード例 #4
0
ファイル: HomeController.cs プロジェクト: jd78/Chat
        public ActionResult GoToChat(User model)
        {
            if(!ModelState.IsValid)
                return View("Index");

            if (_userService.Login(model.Username))
            {
                Session.Add("User", model);
                return Redirect("/Chat/index");
            }

            ViewBag.Error = "Username already registered, please choose a different username";
            return View("Index");
        }
コード例 #5
0
        public HttpResponseMessage LoginUser(UserModelLogin user)
        {
            Chat.Models.User userFull = new Chat.Models.User()
            {
                Username = user.Username,
                Password = user.Password
            };

            var userLog = this.repository.LoginUser(userFull);

            var loggedUser = new UserModelLogged()
            {
                Nickname = userLog.Nickname,
                SessionKey = userLog.SessionKey
            };

            return Request.CreateResponse(HttpStatusCode.OK, loggedUser);
        }
コード例 #6
0
        public HttpResponseMessage LoginUser(UserModelLogin user)
        {
            Chat.Models.User userFull = new Chat.Models.User()
            {
                Username = user.Username,
                Password = user.Password
            };

            var userLog = this.repository.LoginUser(userFull);

            var loggedUser = new UserModelLogged()
            {
                Nickname   = userLog.Nickname,
                SessionKey = userLog.SessionKey
            };


            return(Request.CreateResponse(HttpStatusCode.OK, loggedUser));
        }
コード例 #7
0
ファイル: UsersController.cs プロジェクト: NoMoree/trunk
        public HttpResponseMessage RegisterUser(UserModelRegister user)
        {
            Chat.Models.User userFull = new Chat.Models.User()
            {
                Username = user.Username,
                Password = user.Password,
                Nickname = user.Nickname,
                ImageUrl = imgUrl
            };

            var userReg = this.repository.Add(userFull);
            var userLog = this.repository.LoginUser(userReg);

            var loggedUser = new UserModelLogged()
            {
                Nickname   = userLog.Nickname,
                SessionKey = userLog.SessionKey,
                ImageUrl   = userLog.ImageUrl
            };

            return(Request.CreateResponse(HttpStatusCode.OK, loggedUser));
        }
コード例 #8
0
ファイル: UsersController.cs プロジェクト: NoMoree/trunk
        public HttpResponseMessage RegisterUser(UserModelRegister user)
        {
            Chat.Models.User userFull = new Chat.Models.User()
            {
                Username = user.Username,
                Password = user.Password,
                Nickname = user.Nickname,
                ImageUrl = imgUrl
            };

            var userReg = this.repository.Add(userFull);
            var userLog = this.repository.LoginUser(userReg);

            var loggedUser = new UserModelLogged()
            {
                Nickname = userLog.Nickname,
                SessionKey = userLog.SessionKey,
                ImageUrl = userLog.ImageUrl
            };

            return Request.CreateResponse(HttpStatusCode.OK, loggedUser);
        }
コード例 #9
0
ファイル: ChatController.cs プロジェクト: jd78/Chat
 public ActionResult Logout(User model)
 {
     _userService.Logout(model.Username);
     Session.Remove("User");
     return Redirect("/Home/index");
 }
コード例 #10
0
 protected override void OnAuthorization(AuthorizationContext filterContext)
 {
     base.OnAuthorization(filterContext);
     CurrentUser = GetCurrentUser();
 }