Esempio n. 1
0
        /// <summary>
        /// Обработчик регистрации нового пользователя
        /// </summary>
        /// <returns>Переадресовывает на рабочую область сайта</returns>
        public async Task <IActionResult> OnPostRegister(DtoFormRegisterUser registerUser)
        {
            var answ = await _authManager.RegisterAsync(registerUser);

            if (!answ.IsSuccess)
            {
                TempData["RegNotify"] = answ.Reason;
                TempData["RegClass"]  = "regNotify";
                IdentityState         = REGISTER;
                return(Page());
            }

            TempData["Notification"] = string.Format(answ.Reason, registerUser.Name);

            return(RedirectToPage("/Index", new { area = "Workspace", hasNotify = true }));
        }
Esempio n. 2
0
        /// <summary>
        /// Метод регистрации новго пользователя
        /// </summary>
        /// <param name="registerUser">Объект данных из формы ввода</param>
        /// <returns>Объект ответа</returns>
        public async Task <DtoInterlayerIdentity> RegisterAsync(DtoFormRegisterUser registerUser)
        {
            if (await AppUserMailHasExist(registerUser.Mail))
            {
                return new DtoInterlayerIdentity
                       {
                           IsSuccess = false,
                           Reason    = $"{registerUser.Name}, така поштова скринька вже зареєстрована"
                       }
            }
            ;

            await _appUsers.AddAsync(_mapper.Map <AppUser>(registerUser));

            await LoginAsync(_mapper.Map <DtoFormLoginUser>(registerUser));

            return(new DtoInterlayerIdentity
            {
                IsSuccess = true,
                Reason = "{0}, ваш обліковий запис успішно створено!"
            });
        }