public ActionResult Confirm(string name, string securityCode) { int id = WebSecurity.GetUserId(name); // Pobranie usługobiorcy po identyfikatorze użytkownika (nie wiadomo, czy potwierdzany użytkownik jest usługodawcą, czy usługobiorcą) var customer = _customerRepo.GetCustomerByUserId(id); // Pobranie usługodawcy po identyfikatorze użytkownika (nie wiadomo, czy potwierdzany użytkownik jest usługodawcą, czy usługobiorcą) var provider = _serviceProviderRepo.GetServiceProviderByUserId(id); // Jeśli użytkownik nie jest usługodawcą lub usługobiorcą, to jest to błąd. if (customer == null && provider == null) { TempData["Error"] = "Błąd weryfikacji konta!"; return(RedirectToAction("Index", "Home")); } else { string hashDateInDatebase = string.Empty; if (customer != null) { hashDateInDatebase = Konto.CalculateConfirmationCode(name, customer.Email, customer.RegistrationDate); } else { hashDateInDatebase = Konto.CalculateConfirmationCode(name, provider.Email, provider.RegistrationDate); } // Jeżeli wyliczony kod zabezpieczający jest taki sam jak kod przesłany, to konto jest potwierdzone. if (securityCode.Equals(hashDateInDatebase, StringComparison.InvariantCultureIgnoreCase)) { if (provider != null) { // Potwierdzenie konta usługodawcy provider.IsConfirmed = true; _serviceProviderRepo.SaveChanges(); } else { // Potwierdzenie konta usługobiorcy customer.IsConfirmed = true; _customerRepo.SaveChanges(); } TempData["Message"] = "Pomyślnie potwierdzono adres e-mail!"; } else { // Jeżeli wyliczony kod zabezpieczający jest różny od kodu przesłanego to zwracany jest błąd. TempData["Error"] = "Błąd weryfikacji konta!"; } } return(RedirectToAction("Index", "Home")); }
public ActionResult Edit(int id, FormCollection formValues) { // Pobranie użytkownika po identyfikatorze var provider = _providerRepo.GetServiceProviderById(id); // Uaktualnienie modelu o nowe dane if (TryUpdateModel(provider)) { // Zapisanie zmian w bazie danych _providerRepo.SaveChanges(); TempData["Message"] = "Pomyślnie zmodyfikowano usługodawcę!"; return(RedirectToAction("Details", new { id = provider.Id })); } else { TempData["Error"] = "Wystąpił błąd!"; return(View(provider)); } }
public ActionResult Create(ServiceProvider serviceProvider) { serviceProvider.RegistrationDate = DateTime.Now; serviceProvider.UserId = User.Identity.GetUserId(); serviceProvider.IsConfirmed = false; if (ModelState.IsValid) { try { _serviceProviderRepo.Add(serviceProvider); _serviceProviderRepo.SaveChanges(); } catch (Exception) { TempData["Error"] = "Uzupełnij poprawnie formularz!"; } TempData["Message"] = "Profil usługobiorcy został poprawnie dodany"; return(RedirectToAction("Index")); } return(View(serviceProvider)); }