Example #1
0
        public ActionResult SingUp(SingUpModel model, HttpPostedFileBase avatar)
        {
            if (ModelState.IsValid)
            {
                var fullFileName = "";

                if (avatar != null && avatar.ContentLength > 0)
                {
                    var fileName = Guid.NewGuid().ToString();
                    var ext      = Path.GetExtension(avatar.FileName);
                    fullFileName = fileName + ext;
                    var fullPath = Path.Combine(Server.MapPath("~/documents/avatars"), fullFileName);
                    avatar.SaveAs(fullPath);
                }

                User user = new User();
                user.FirstName      = model.FirstName;
                user.LastName       = model.LastName;
                user.Username       = model.Username;
                user.Password       = model.Password;
                user.Email          = model.Email;
                user.ProfilePicture = fullFileName;
                user.UserType       = 2;

                AccountService aservice = new AccountService();
                aservice.Create(user);
            }
            return(View());
        }
Example #2
0
        public async Task <BaseResponseModel> RegisterAsync(SingUpModel model)
        {
            User               user          = new User();
            EmailHelper        email         = new EmailHelper(_configuration);
            IdentityResult     result        = new IdentityResult();
            BaseResponseModel  responseModel = new BaseResponseModel();
            ResetPasswordModel resetModel    = new ResetPasswordModel();

            user.UserName  = model.Email;
            user.Email     = model.Email;
            user.FirstName = model.FirstName;
            user.LastName  = model.LastName;
            string role = _roleManager.Roles.FirstOrDefault(p => p.NormalizedName == DefaultRoles.User).ToString();

            result = await _userManager.CreateAsync(user, model.Password);

            if (!result.Succeeded)
            {
                responseModel.IsValid = result.Succeeded;
                responseModel.Message.Add(result.Errors.ToString());
                return(responseModel);
            }

            await _userManager.AddToRoleAsync(user, role);

            resetModel.Email = model.Email;
            resetModel.Url   = model.Url;
            resetModel.Code  = await _userManager.GenerateEmailConfirmationTokenAsync(user);

            string confirmEmailLink = CreateLink(resetModel, "ConfirmEmail");

            email.SendEmail(user.Email, "ConfirmEmail", confirmEmailLink);
            responseModel.IsValid = true;

            return(responseModel);
        }
Example #3
0
        public async Task <BaseResponseModel> RegisterAsync([FromBody] SingUpModel model)
        {
            BaseResponseModel result = await _accountService.RegisterAsync(model);

            return(result);
        }