private async Task <Tuple <ApplicationUser, string> > RegisterPelanggan(string email, string password) { try { ApplicationUser user = new Models.ApplicationUser { UserName = email, Email = email, LockoutEnabled = false, EmailConfirmed = false }; var created = await UserManager.CreateAsync(user, password); if (created.Succeeded) { string roleName = "Pelanggan"; if (!await AppRoleManager.RoleExistsAsync(roleName)) { var r = new MySql.AspNet.Identity.IdentityRole("125", roleName); var roleCreated = await AppRoleManager.CreateAsync(r); if (!roleCreated.Succeeded) { throw new SystemException("Role Tidak Berhasil Disimpan"); } } var role = await AppRoleManager.FindByNameAsync(roleName); if (role != null) { var added = await UserManager.AddToRoleAsync(user.Id, roleName); if (!added.Succeeded) { throw new SystemException(string.Format("User Tidak Berhasil Di tambahkan Ke Role {0}", roleName)); } } else { throw new SystemException(string.Format("Role {0} Tidak Ditemukan", roleName)); } } else { throw new SystemException("User TIdak Berhasil Dibuat"); } string c = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); string strcode = HttpUtility.UrlEncode(c); var callbackUrl = Url.Link("DefaultApi", new { controller = "User/ConfirmPassword", userId = user.Id, code = strcode }); await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); return(Tuple.Create(user, strcode)); } catch (Exception ex) { throw new SystemException(ex.Message); } }
private async Task <ApplicationUser> RegisterPetugas(string email) { try { var user = new Models.ApplicationUser { UserName = email, Email = email, LockoutEnabled = true, EmailConfirmed = true }; var created = await UserManager.CreateAsync(user, "Petugas#123"); if (created.Succeeded) { string roleName = "Petugas"; if (!await AppRoleManager.RoleExistsAsync(roleName)) { var r = new MySql.AspNet.Identity.IdentityRole("123", roleName); var roleCreated = await AppRoleManager.CreateAsync(r); if (!roleCreated.Succeeded) { throw new SystemException("Role Tidak Berhasil Disimpan"); } } var role = await AppRoleManager.FindByNameAsync(roleName); if (role != null) { var added = await UserManager.AddToRoleAsync(user.Id, roleName); if (!added.Succeeded) { throw new SystemException(string.Format("User Tidak Berhasil Di tambahkan Ke Role {0}", roleName)); } } else { throw new SystemException(string.Format("Role {0} Tidak Ditemukan", roleName)); } } else { throw new SystemException("User TIdak Berhasil Dibuat"); } return(user); } catch (Exception ex) { throw new SystemException(ex.Message); } }