public async Task <EventUser> RegisterEventUser(EventUsersViewModel user, int roleId) { EventUser itemCollections = null; var salt = Guid.NewGuid().ToString(); var securityAnswerSalt = Crypto.GenerateSalt(); var saltedPassword = user.PasswordHash + salt; var hashedPassword = Crypto.HashPassword(saltedPassword); try { itemCollections = new EventUser { UserLastName = user.UserLastName, UserFirstName = user.UserFirstName, UserAddress = user.UserAddress, EmailAddress = user.EmailAddress, PasswordHash = hashedPassword, PasswordSalt = salt, PhoneNumber = user.PhoneNumber, CreatedOn = DateTime.Now, RoleId = roleId, IsActivated = true }; db.EventUsers.Add(itemCollections); await db.SaveChangesAsync(); } catch (Exception ex) { //log.Error(ex.Message); throw ex; } return(itemCollections); }
public async Task <ActionResult> CreateAdminUser([Bind(Include = "UserId,UserFirstName,UserLastName, UserAddress, EmailAddress,PasswordHash,PasswordSalt,PhoneNumber, RoleId, IsActivated,CreatedOn")] EventUsersViewModel user) { var validateEmail = userRepository.ValidateEmailAddress(user.EmailAddress); if (validateEmail == null) { var getRecord = await userRepository.RegisterEventUser(user, user.RoleId); if (getRecord != null) { ViewBag.DisplayMessage = "success"; ModelState.AddModelError("", "Account created successfully!"); } else { ViewBag.DisplayMessage = "Info"; ModelState.AddModelError("", "Ooops, something went wrong, Account not created! kindly check your input and try again."); } } else { ViewBag.DisplayMessage = "Info"; ModelState.AddModelError("", "This email address has already been used, enter a different email address!"); } LoadDropDownList(); return(View()); }
public async Task <bool> UpdateEventUserDetails(EventUsersViewModel eventUser, string username) { bool status = false; var getRecord = (from r in db.EventUsers.Where(x => x.EmailAddress.Equals(username)) select r).FirstOrDefault(); if (getRecord != null) { try { getRecord.UserFirstName = eventUser.UserFirstName; getRecord.UserLastName = eventUser.UserLastName; getRecord.EmailAddress = eventUser.EmailAddress; getRecord.UserAddress = eventUser.UserAddress; getRecord.PhoneNumber = eventUser.PhoneNumber; await db.SaveChangesAsync(); status = true; } catch (Exception ex) { status = false; throw ex; } } return(status); }
public EventUsersPage(EventUsersViewModel viewModel) { InitializeComponent(); BindingContext = this.viewModel = viewModel; }