private bool ConfirmAccount(string confirmationToken) { MwaDBContext context = new MwaDBContext(); MechWarrior user = context.Users.SingleOrDefault(u => u.ConfirmationToken == confirmationToken); if (user != null) { user.IsConfirmed = true; DbSet <MechWarrior> dbSet = context.Set <MechWarrior>(); dbSet.Attach(user); context.Entry(user).State = EntityState.Modified; context.SaveChanges(); return(true); } return(false); }
public async Task <IHttpActionResult> RegisterExternal(RegisterExternalBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } ExternalLoginData externalLogin = ExternalLoginData.FromIdentity(User.Identity as ClaimsIdentity); if (externalLogin == null) { return(InternalServerError()); } var user = new MechWarrior { UserName = model.UserName, Email = model.Email, FactionName = model.FactionName, RegimentName = model.RegimentName, BattalionName = model.BattalionName, CompanyName = model.CompanyName, LanceName = model.LanceName, RankName = model.RankName, ImageUrl = model.ImageUrl }; user.Logins.Add(new IdentityUserLogin { LoginProvider = externalLogin.LoginProvider, ProviderKey = externalLogin.ProviderKey }); IdentityResult result = await UserManager.CreateAsync(user); IHttpActionResult errorResult = GetErrorResult(result); if (errorResult != null) { return(errorResult); } return(Ok()); }
public async Task <IHttpActionResult> Register(RegisterBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } string confirmationToken = CreateConfirmationToken(); var user = new MechWarrior { UserName = model.UserName, Email = model.Email, FactionName = model.FactionName, RegimentName = model.RegimentName, BattalionName = model.BattalionName, CompanyName = model.CompanyName, LanceName = model.LanceName, RankName = model.RankName, ImageUrl = model.ImageUrl, ConfirmationToken = confirmationToken, IsConfirmed = false }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { SendEmailConfirmation(model.Email, model.UserName, confirmationToken); return(Ok()); } IHttpActionResult errorResult = GetErrorResult(result); if (errorResult != null) { return(errorResult); } return(Ok()); }