コード例 #1
0
        //[CheckReferrer]
        public virtual async Task<ActionResult> Create(AddUserViewModel viewModel)
        {
            #region Validation
            if (_userManager.CheckUserNameExist(viewModel.UserName, null))
                this.AddErrors("UserName", "این نام کاربری قبلا در سیستم ثبت شده است");
            if (_userManager.CheckNameForShowExist(viewModel.NameForShow, null))
                this.AddErrors("NameForShow", "این نام نمایشی قبلا  در سیستم ثبت شده است");
            if (!viewModel.Password.IsSafePasword())
                this.AddErrors("Password", "این کلمه عبور به راحتی قابل تشخیص است");
            if (_userManager.CheckEmailExist(viewModel.Email, null))
                this.AddErrors("Email", "این ایمیل قبلا در سیستم ثبت شده است");
            if (_userManager.CheckFacebookIdExist(viewModel.FaceBookId, null))
                this.AddErrors("FaceBookId", "این آد دی قبلا در سیستم ثبت شده است");
            if (_userManager.CheckFacebookIdExist(viewModel.GooglePlusId, null))
                this.AddErrors("GooglePlusId", "این آد دی قبلا در سیستم ثبت شده است");
            #endregion

            if (!ModelState.IsValid)
            {
                await PopulateRoles(viewModel.RoleIds);
                await PopulatePermissions(viewModel.PermissionIds);
                return View(viewModel);
            }
            if (viewModel.RoleIds == null || viewModel.RoleIds.Length < 1)
            {
                ToastrWarning("لطفا برای  کاربر مورد نظر ، گروه کاربری تعیین کنید");
                await PopulateRoles();
                await PopulatePermissions();
                return View(viewModel);
            }

            var avatarName = "avatar.jpg";
            if (viewModel.AvatarImage != null && viewModel.AvatarImage.ContentLength > 0)
            {
                avatarName = this.UploadFile(viewModel.AvatarImage);
            }
            viewModel.AvatarFileName = avatarName;
            await _userManager.AddUser(viewModel);
            ToastrSuccess("عملیات ثبت  کاربر جدید با موفقیت انجام شد");
            return RedirectToAction(MVC.Administrator.User.ActionNames.List, MVC.Administrator.User.Name);
        }
コード例 #2
0
 public virtual async Task<ActionResult> Create()
 {
     await PopulateRoles();
     await PopulatePermissions();
     var viewModel = new AddUserViewModel
     {
         CanUploadFile = true,
         CanModifyFirsAndLastName = true,
         CanChangeProfilePicture = true,
         CommentPermission = CommentPermissionType.WithApprove
     };
     return View(viewModel);
 }