Пример #1
0
        public void ChangeInfo(ChangeUserInfo model)
        {
            BlogUser odlModel = repository.GetUserByAccount(model.Account);

            odlModel.Name     = model.Name;
            odlModel.Account  = model.Account;
            odlModel.Password = md5tool.GetMD5(model.Password);
            repository.UpdateUser(model.Account, odlModel);
        }
Пример #2
0
        private void button6_Click(object sender, RoutedEventArgs e)
        {
            //Change info
            ChangeUserInfo changeUserInfo = new ChangeUserInfo();
            var            p = new Point();

            changeUserInfo.Top  = this.PointToScreen(p).Y;
            changeUserInfo.Left = this.PointToScreen(p).X;
            changeUserInfo.ShowDialog();
        }
Пример #3
0
        /// <summary>
        /// Change the info of the user
        /// </summary>
        /// <param name="info">The new info of the user</param>
        /// See <see cref="Areas.UserInfo.Models.ChangeUserInfo"/> to know the param structure
        /// <returns>IActionResult of the change user info action</returns>
        /// See <see cref="Areas.UserInfo.Models.UserData"/> to know the response structure
        public IActionResult changeUser([FromBody] ChangeUserInfo info)
        {
            User user = TokenUserManager.getUserFromToken(HttpContext, _context);

            if (!user.open)
            {
                return(BadRequest(new { error = "YoureBanned" }));
            }
            bool isAdmin = AdminPolicy.isAdmin(user, _context);

            try {
                user.nickname = !isAdmin?changeNickname(info.nickname, user.nickname) : user.nickname;

                user.password   = changePassword(info.oldpassword, info.newPassword, user.password);
                user.profileImg = !isAdmin ? info.image ?? user.profileImg : user.profileImg;

                _context.Update(user);
                _context.SaveChanges();
            } catch (DbUpdateException) {
                return(StatusCode(500));
            } catch (Exception e) {
                if (e.Message == "")
                {
                    return(BadRequest());
                }
                else
                {
                    return(BadRequest(new { error = e.Message }));
                }
            }

            string successRes = "";

            if (_changePass)
            {
                successRes = "PassChanged";
            }

            UserData userShow = new UserData
            {
                email      = user.email,
                nickname   = user.nickname,
                img        = user.profileImg,
                groups     = GroupsOfUser.get(user, _context),
                timeSignUp = user.dateSignUp
            };

            return(Ok(new { success = successRes, info = userShow }));
        }
Пример #4
0
        public ActionResult ChangeInfo(ChangeUserInfo model)
        {
            if (ModelState.IsValid)
            //判断是否验证通过
            {
                string sessionValidCode = Session["validatecode"] == null ? string.Empty : Session["validatecode"].ToString();
                var    currentLoginUser = Session["loginuser"] == null ? null : (User)Session["loginuser"];
                if (!model.Code.Equals(sessionValidCode))
                {
                    return(RedirectToAction("ChangeInfo", "Home", new { msg = "验证码错误!请重新输入" }));
                }
                try
                {
                    var odlModel = db.Users.FirstOrDefault(m => m.Account == currentLoginUser.Account);
                    odlModel.Name     = model.Name;
                    odlModel.Account  = currentLoginUser.Account;
                    odlModel.Password = md5tool.GetMD5(model.Password);
                    DbEntityEntry entry = db.Entry(odlModel);
                    entry.State = EntityState.Modified;
                    int res = db.SaveChanges();
                    //保存数据库
                }
                catch (DbUpdateException)
                {
                    return(RedirectToAction("ChangeInfo", "Home", new { msg = "数据库更新出错!请重新输入" }));
                }
                catch (ObjectDisposedException)
                {
                    return(RedirectToAction("ChangeInfo", "Home", new { msg = "数据上下文连接已过期!请重新输入" }));
                }
                catch (InvalidOperationException)
                {
                    return(RedirectToAction("ChangeInfo", "Home", new { msg = "数据实体处理异常!请重新输入" }));
                }
                catch (Exception)
                {
                    //TODO:异常报告
                    return(RedirectToAction("ChangeInfo", "Home", new { msg = "数据库异常!请重新输入" }));

                    throw;
                }
            }
            //TODO:注册完毕后记录登录信息
            return(Redirect("/"));
        }
Пример #5
0
 public ActionResult ChangeInfo(ChangeUserInfo model)
 {
     if (ModelState.IsValid)
     //判断是否验证通过
     {
         string sessionValidCode = Session["validatecode"] == null ? string.Empty : Session["validatecode"].ToString();
         var    currentLoginUser = Session["loginuser"] == null ? null : (BlogUser)Session["loginuser"];
         if (!model.Code.Equals(sessionValidCode))
         {
             return(RedirectToAction("ChangeInfo", "Home", new { msg = "验证码错误!请重新输入" }));
         }
         model.Account = currentLoginUser.Account;
         home.ChangeInfo(model);//完成数据修改
         BlogUser LoginModel = home.Login(new LoginUser {
             Account = model.Account, Password = model.Password
         });
         Session["loginuser"] = LoginModel;
     }
     return(RedirectToAction("index", "Home", new { Cmsg = "修改成功!" }));
 }
Пример #6
0
 public IHttpActionResult ChangeUserInfo(ChangeUserInfo user)
 {
     _messageDispatcher.SendCommand(user);
     return(Ok());
 }
Пример #7
0
        public IEnumerable Handle(ChangeUserInfo c)
        {
            var item = Mapper.DynamicMap <UserInfoChanged>(c);

            yield return(item);
        }