Exemple #1
0
        public virtual ActionResult AddUser(AddUserModel userModel)
        {
            ModelState.Remove("BirthDay");
            if (!ModelState.IsValid)
            {
                return(PartialView(MVC.Admin.Shared.Views._ValidationSummery));
            }

            var newUser = new User
            {
                Email        = userModel.Email,
                IP           = Request.ServerVariables["REMOTE_ADDR"],
                Password     = Encryption.EncryptingPassword(userModel.Password),
                CreatedDate  = DateAndTime.GetDateTime(),
                Role         = _roleService.GetRoleByRoleId(userModel.RoleId),
                UserName     = userModel.UserName,
                UserMetaData = new UserMetaData
                {
                    BirthDay    = userModel.BirthDay,
                    Description = userModel.Description,
                    FirstName   = userModel.FirstName,
                    LastName    = userModel.LastName,
                    Major       = userModel.Major,
                }
            };

            AddUserStatus status = _userService.Add(newUser);
            string        message;

            if (status == AddUserStatus.AddingUserSuccessfully)
            {
                message = "کاربر جدید با موفقیت در سیستم ثبت شد";
                _uow.SaveChanges();
                return(PartialView(MVC.Admin.Shared.Views._Alert,
                                   new Alert {
                    Message = message, Mode = AlertMode.Success
                }));
            }
            switch (status)
            {
            case AddUserStatus.EmailExist:
                message = "ایمیل وارد شده تکراری است";
                break;

            case AddUserStatus.UserNameExist:
                message = "نام کاربری تکراری است";
                break;

            default:
                message = "نام کاربری یا ایمیل تکراری است";
                break;
            }
            return(PartialView(MVC.Admin.Shared.Views._Alert, new Alert {
                Mode = AlertMode.Error, Message = message
            }));
        }
Exemple #2
0
        public virtual ActionResult Register(RegisterModel model)
        {
            if (!ModelState.IsValid)
            {
                return(PartialView(MVC.User.Views._Register, model));
            }
            var newUser = new User
            {
                CreatedDate   = DateAndTime.GetDateTime(),
                Email         = model.Email,
                IP            = Request.ServerVariables["REMOTE_ADDR"],
                IsBaned       = false,
                UserName      = model.UserName,
                Password      = Encryption.EncryptingPassword(model.Password),
                UserMetaData  = new UserMetaData(),
                Role          = _roleService.GetRoleByRoleName("user"),
                LastLoginDate = DateAndTime.GetDateTime()
            };

            AddUserStatus addingNewUserResult = _userService.Add(newUser);

            if (addingNewUserResult == AddUserStatus.EmailExist)
            {
                ModelState.AddModelError("", "ایمیل وارد شده قبلا درسیستم ثبت شده است.");
                return(PartialView(MVC.User.Views._Register, model));
            }

            if (addingNewUserResult == AddUserStatus.UserNameExist)
            {
                ModelState.AddModelError("", "نام کاربری تکراری است.");
                return(PartialView(MVC.User.Views._Register, model));
            }

            _uow.SaveChanges();

            SetAuthCookie(model.UserName, "user", false);

            return(Json(new { result = "success" }));
        }