Пример #1
0
        ///<inheritdoc/>
        public async Task SendEmailRegistr(string confirmationLink, UserDTO userDto)
        {
            var user = await _userManager.FindByIdAsync(userDto.Id);

            user.EmailSendedOnRegister = DateTime.Now;
            await _userManager.UpdateAsync(user);

            await _emailConfirmation.SendEmailAsync(user.Email, "Підтвердження реєстрації ",
                                                    $"Підтвердіть реєстрацію, перейшовши за :  <a href='{confirmationLink}'>посиланням</a> ", "Адміністрація сайту EPlast");
        }
Пример #2
0
 public Task SendEmailAdmin(ContactsDto contactDTO)
 {
     return(_emailConfirmation.SendEmailAsync("*****@*****.**",
                                              "Питання користувачів",
                                              $"Контактні дані користувача : Електронна пошта {contactDTO.Email}, " +
                                              $"Ім'я {contactDTO.Name}," +
                                              $"Телефон {contactDTO.PhoneNumber}  " +
                                              $"Опис питання : {contactDTO.FeedBackDescription}",
                                              contactDTO.Email));
 }
Пример #3
0
 public async Task <IActionResult> SendContacts(ContactsViewModel contactsViewModel)
 {
     if (!ModelState.IsValid)
     {
         ModelState.AddModelError("", "Дані введені неправильно");
         return(View("Contacts"));
     }
     else
     {
         await _emailConfirmation.SendEmailAsync("*****@*****.**",
                                                 "Питання користувачів",
                                                 $"Контактні дані користувача : Електронна пошта {contactsViewModel.Email}, Ім'я {contactsViewModel.Name}, Телефон {contactsViewModel.PhoneNumber}" +
                                                 $"  Опис питання : {contactsViewModel.FeedBackDescription}",
                                                 contactsViewModel.Email);
     }
     return(RedirectToAction("FeedBackSended", "Home"));
 }
Пример #4
0
        public async Task <IActionResult> Register(RegisterViewModel registerVM)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    ModelState.AddModelError("", "Дані введені неправильно");
                    return(View("Register"));
                }

                var registeredUser = await _userManager.FindByEmailAsync(registerVM.Email);

                if (registeredUser != null)
                {
                    ModelState.AddModelError("", "Користувач з введеною електронною поштою вже зареєстрований в системі, " +
                                             "можливо він не підтвердив свою реєстрацію");
                    return(View("Register"));
                }
                else
                {
                    var user = new User()
                    {
                        Email            = registerVM.Email,
                        UserName         = registerVM.Email,
                        LastName         = registerVM.SurName,
                        FirstName        = registerVM.Name,
                        RegistredOn      = DateTime.Now,
                        ImagePath        = "default.png",
                        SocialNetworking = false,
                        UserProfile      = new UserProfile()
                    };

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

                    if (!result.Succeeded)
                    {
                        ModelState.AddModelError("", "Пароль має містити цифри та літери, мінімальна довжина повинна складати 8");
                        return(View("Register"));
                    }
                    else
                    {
                        await _userManager.AddToRoleAsync(user, "Прихильник");

                        var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);

                        var confirmationLink = Url.Action(
                            nameof(ConfirmingEmail),
                            "Account",
                            new { code = code, userId = user.Id },
                            protocol: HttpContext.Request.Scheme);

                        user.EmailSendedOnRegister = DateTime.Now;
                        await _userManager.UpdateAsync(user);

                        await _emailConfirmation.SendEmailAsync(registerVM.Email, "Підтвердження реєстрації ",
                                                                $"Підтвердіть реєстрацію, перейшовши за :  <a href='{confirmationLink}'>посиланням</a> ", "Адміністрація сайту EPlast");

                        return(View("AcceptingEmail"));
                    }
                }
            }
            catch (Exception e)
            {
                _logger.LogError("Exception: {0}", e.Message);
                return(RedirectToAction("HandleError", "Error", new { code = 500 }));
            }
        }