public async Task<ActionResult> Register(BlogRegisterModel model)
{
if (!ModelState.IsValid) return View(model);
var user = new BlogUser { UserName = model.Username, Email = model.Email };
var result = await UserManager.CreateAsync(user, model.Password);
//Add User to the selected Roles
if (result.Succeeded)
{
var roleResult = await UserManager.AddToRolesAsync(user.Id, new[] { "Bloggity Staff" });
if (!roleResult.Succeeded)
{
AddErrors(roleResult);
return View();
}
var blogUser = await _userHelper.AddBlogUser(model);
if (blogUser.Error != null)
{
ViewBag.UserCreationError = blogUser.Error.Message;
return View(model);
}
await SignInAsync(user, false);
return RedirectToAction("Index", "Home");
}
AddErrors(result);
return View();
}