public async Task <RegisterResponseModel> Register( RegisterModel validModel, UserManager <Entities.UserDb.User> userManager, SignInManager <Entities.UserDb.User> signInManager, IConfiguration configuration) { var newUser = _mapper.Map <Entities.UserDb.User>(validModel); var result = await userManager.CreateAsync(newUser, validModel.Password); //Sign in and generate token if register is succesful if (result.Succeeded) { var user = await userManager.FindByEmailAsync(validModel.Email); AddedToOrderDb(user.Id); await userManager.AddToRoleAsync(user, validModel.RoleName); await signInManager.SignInAsync(user, false); var token = await _tokenGenerator.GenerateJwtToken(validModel.Email, user, configuration); RegisterResponseModel model = new RegisterResponseModel { UserId = user.Id, Token = token }; return(model); } throw new ApplicationException("UNKNOWN_ERROR"); }
public async Task <ActionResult <RegisterResponseModel> > RegisterAsync(RegisterRequestModel request) { var response = new RegisterResponseModel(); var user = await this.userService .GetUserByRegistrationCodeAsync(request.RegistrationCode); if (Object.Equals(user, null)) { response.Status = -1; response.Message = "Invalid Registration Code."; return(Ok(response)); } if (user.IsActivatedCode) { response.Status = -2; response.Message = "The Registration Code Is Taken."; return(Ok(response)); } var hashedPassword = PasswordHasher .HashPassword(request.Password); await this.userService .UpdateUserToRegistered(user.Id, request.Username, hashedPassword, request.Email); response.Status = 1; response.Message = "Success."; return(Ok(response)); }
public IActionResult Regist(RegisterInputModel data, string registype, string conpassword) { RegisterInputModel dataRegister = new RegisterInputModel(); dataRegister.FirstName = data.FirstName; dataRegister.LastName = data.LastName; dataRegister.Username = data.Username; dataRegister.NamaPerusahaan = data.NamaPerusahaan; dataRegister.EmailPerusahaan = data.EmailPerusahaan; dataRegister.NoTelp = data.NoTelp; dataRegister.Kategori = data.Kategori; dataRegister.NPWP = data.NPWP; dataRegister.Website = data.Website; dataRegister.Alamat = data.Alamat; dataRegister.Catatan = data.Catatan; dataRegister.Password = data.Password; JsonConvert.SerializeObject(dataRegister); if (conpassword == data.Password) { using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Admin/"); //HTTP POST var postTask = client.PostAsJsonAsync <RegisterInputModel>("AddSupervisor", dataRegister); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); RegisterResponseModel logincontent = Newtonsoft.Json.JsonConvert.DeserializeObject <RegisterResponseModel>(content.Result); if (logincontent.data != null && logincontent.data.UserID.ToString() != "") { HttpContext.Session.SetString(SessionKeyCurrent, ""); HttpContext.Session.SetString(SessionKeyError, ""); return(RedirectToAction("Index", "Users")); } else { HttpContext.Session.SetString(SessionKeyCurrent, "true"); HttpContext.Session.SetString(SessionKeyError, "Fail to register."); return(RedirectToAction("Register", "Users")); } } } } HttpContext.Session.SetString(SessionKeyCurrent, "true"); HttpContext.Session.SetString(SessionKeyError, "Server Error. Please contact administrator."); return(RedirectToAction("Register", "Users")); }
public async Task <ActionResult> Answer(Guid idAd, Guid idQuestion, [FromBody] RegisterResponseModel responseModel) { responseModel.IdQuestion = idQuestion; var response = Map <Response>(responseModel); var result = await _service.AnswerAsync(idAd, response); if (!result.Sucess) { return(BadRequest(result.Errors)); } return(new StatusCodeResult(StatusCodes.Status201Created)); }
public ActionResult <RegisterResponseModel> Register([FromBody] RegisterInputModel data) { try { RegisterBL userBL = new RegisterBL(DbContext); return(userBL.Register(data, RoleEnum.MediaOwner)); } catch (Exception ex) { RegisterResponseModel logres = new RegisterResponseModel(); logres.Message = ex.Message; logres.Response = false; return(logres); } }
public async Task <RegisterResponseModel> Register(RegisterRequestModel model) { var result = new RegisterResponseModel(); var user = new ApplicationUser { FullName = model.Name, Email = model.Name, UserName = model.Email }; try { var createUserResult = await _userManager.CreateAsync(user); if (createUserResult.Succeeded) { var addClaimsResult = await _userManager.AddClaimsAsync(user, new Claim[] { new Claim("name", model.Name), new Claim("email", model.Email), new Claim("tenantId", model.TenantId), new Claim("role", RoleOptions.User) }); if (!addClaimsResult.Succeeded) { await _userManager.DeleteAsync(user); result.Success = false; result.Error = addClaimsResult.Errors?.FirstOrDefault()?.Description; } } else { result.Success = false; result.Error = createUserResult.Errors?.FirstOrDefault()?.Description; } } catch (Exception ex) { result.Success = false; result.Error = ex.Message; } return(result); }
public static async Task <RegisterResponseModel> Register(RegisterRequestModel request) { var channel = new Channel(ConfigurationManager.AppSettings["Server"], int.Parse(ConfigurationManager.AppSettings["Port"]), ChannelCredentials.Insecure); var invoker = new DefaultCallInvoker(channel); RegisterResponseModel res = null; using (var call = invoker.AsyncDuplexStreamingCall(ServiceDefinition.Register, null, new CallOptions { })) { var responseCompleted = call.ResponseStream .ForEachAsync(async response => { res = response; }); await call.RequestStream.WriteAsync(request); await call.RequestStream.CompleteAsync(); await responseCompleted; } return(res); }
public RegisterResponseModel Register(RegisterInputModel data, RoleEnum roleEnum) { UserRepository userRepo = new UserRepository(DbContext); var checkUserName = userRepo.FindByUserName(data.Username); if (checkUserName == null) { Guid id = Guid.NewGuid(); User temp = new User(); temp.ID = id; temp.PasswordHash = data.Password.ConvertToMD5(); temp.FirstName = data.FirstName; temp.LastName = data.LastName; temp.UserName = data.Username; temp.PhoneNumber = data.NoTelp; temp.CreateDate = DateTime.Now; temp.CreateByUserID = id; if (roleEnum == RoleEnum.MediaOwner || roleEnum == RoleEnum.MediaBuyer) { temp.IsActive = false; } else { temp.IsActive = true; } userRepo = new UserRepository(DbContext); var response = userRepo.Insert(temp, false); //insert ke table userRole UserRole userRole = new UserRole(); RoleRepository roleRepo = new RoleRepository(DbContext); userRole.ID = Guid.NewGuid(); userRole.UserID = temp.ID; //RoleID di ambil dari table role userRole.RoleID = roleRepo.GetRole((int)roleEnum).FirstOrDefault().ID; userRole.CreateDate = DateTime.Now; userRole.CreateByUserID = id; UserRoleRepository userRoleRepository = new UserRoleRepository(DbContext); var res2 = userRoleRepository.Insert(userRole, false); //INSERT TO COMPANY TABLE Company dataComp = new Company(); dataComp.ID = Guid.NewGuid(); dataComp.NPWP = data.NPWP; dataComp.Website = data.Website; dataComp.Alamat = data.Alamat; dataComp.CompanyName = data.NamaPerusahaan; dataComp.Email = data.EmailPerusahaan; dataComp.UserID = temp.ID; dataComp.Kategory = data.Kategori; dataComp.CreateByUserID = id; dataComp.CreateDate = DateTime.Now; CompanyRepository comRepo = new CompanyRepository(DbContext); comRepo.Insert(dataComp, false); //INSERT TO TABLE CONTACT ContactPerson temCon = new ContactPerson(); temCon.ID = Guid.NewGuid(); temCon.CompanyID = dataComp.ID; temCon.Email = data.Username; temCon.Name = data.FirstName + " " + data.LastName; temCon.UserID = temp.ID; temCon.CreateDate = DateTime.Now; temCon.CreateByUserID = id; ContactPersonRepository conRepo = new ContactPersonRepository(DbContext); conRepo.Insert(temCon, true); RegisterResponseModel result = new RegisterResponseModel(); result.Message = response.Message; result.Response = response.Result; RegisterOutputModel output = new RegisterOutputModel(); output.FirstName = temp.FirstName; output.LastName = temp.LastName; output.UserName = temp.UserName; output.UserID = temp.ID; result.data = output; result.Message = "Daftar berhasil."; result.Response = true; return(result); } else { RegisterResponseModel result = new RegisterResponseModel(); result.Message = "Email sudah terdaftar!!"; result.Response = false; return(result); } }
public ActionResult Index(string dummy) { var data = new RegisterModel(); var response = new RegisterResponseModel(); if (Settings.ReCaptchaPublic != "" && Settings.ReCaptchaPrivate != "") { if (UserValidation.IsValidReCaptcha(Request["g-recaptcha-response"])) { response.ReCaptcha.Success = true; } else { response.ReCaptcha.Success = false; response.ReCaptcha.Reason = "Invalid ReCaptcha"; } } else { response.ReCaptcha.Success = true; } data.Username = Request["username"]; data.Password = Request["password"]; data.ConfirmPassword = Request["confirmPassword"]; data.Email = Request["email"]; if (_userMethods.UserExists(data.Username)) { response.Username.Success = false; response.Username.Reason = "This username has already been taken"; } else { response.Username.Success = true; } if (!UserValidation.IsValidPassword(data.Password)) { response.Password.Success = false; response.Password.Reason = "Password must contain:<br/>A Capital Letter<br/>A Lowercase Letter<br/>A Number<br/>A Special Character"; } else if (data.Password != data.ConfirmPassword) { response.Password.Success = false; response.Password.Reason = "The passwords do not match"; } else { response.Password.Success = true; } if (!UserValidation.IsValidEmail(data.Email)) { response.Email.Success = false; response.Email.Reason = "Invalid email address"; } else if (_userMethods.EmailExists(data.Email)) { response.Email.Success = false; response.Email.Reason = "Email address already in use"; } else { response.Email.Success = true; } if (!response.IsValidRegistration()) { return(View(new Tuple <RegisterModel, RegisterResponseModel, bool>(data, response, false))); } RPNETForum.Users.Create(data); return(View("Complete")); }
public IActionResult Regist(RegisterInputModel data, string registype, string conpassword) { RegisterInputModel dataRegister = new RegisterInputModel(); dataRegister.FirstName = data.FirstName; dataRegister.LastName = data.LastName; dataRegister.Username = data.Username; dataRegister.NamaPerusahaan = data.NamaPerusahaan; dataRegister.EmailPerusahaan = data.EmailPerusahaan; dataRegister.NoTelp = data.NoTelp; dataRegister.Kategori = data.Kategori; dataRegister.NPWP = data.NPWP; dataRegister.Website = data.Website; dataRegister.Alamat = data.Alamat; dataRegister.Catatan = data.Catatan; dataRegister.Password = data.Password; JsonConvert.SerializeObject(dataRegister); if (conpassword == data.Password) { if (registype == "MO") { using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "MediaOwner/"); //HTTP POST var postTask = client.PostAsJsonAsync <RegisterInputModel>("Register", dataRegister); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); RegisterResponseModel logincontent = Newtonsoft.Json.JsonConvert.DeserializeObject <RegisterResponseModel>(content.Result); if (logincontent.data != null && logincontent.data.UserID.ToString() != "") { HttpContext.Session.SetString(SessionKeyCurrent, ""); HttpContext.Session.SetString(SessionKeyError, ""); //if (HttpContext.Session.GetString(Loginfrom) == "ADM/SPV") //{ // return RedirectToAction("AdminLogon", "Login"); //} //else if (HttpContext.Session.GetString(Loginfrom) == "MDO") //{ // return RedirectToAction("OwnerLogon", "Login"); //} //else //{ // return RedirectToAction("OwnerLogon", "Login"); //} return(RedirectToAction("Logon", "Login")); } else { HttpContext.Session.SetString(SessionKeyCurrent, "true"); HttpContext.Session.SetString(SessionKeyError, "Gagal mendaftarkan."); return(RedirectToAction("ChangePassword", "Profile")); } } } } else if (registype == "MB") { using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "MediaBuyer/"); //HTTP POST var postTask = client.PostAsJsonAsync <RegisterInputModel>("Register", dataRegister); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); RegisterResponseModel logincontent = Newtonsoft.Json.JsonConvert.DeserializeObject <RegisterResponseModel>(content.Result); if (logincontent.data != null && logincontent.data.UserID.ToString() != "") { HttpContext.Session.SetString(SessionKeyCurrent, ""); HttpContext.Session.SetString(SessionKeyError, ""); //if (HttpContext.Session.GetString(Loginfrom) == "ADM/SPV") //{ // return RedirectToAction("AdminLogon", "Login"); //} //else if (HttpContext.Session.GetString(Loginfrom) == "MDO") //{ // return RedirectToAction("OwnerLogon", "Login"); //} //else //{ // return RedirectToAction("OwnerLogon", "Login"); //} return(RedirectToAction("Logon", "Login")); } else { HttpContext.Session.SetString(SessionKeyCurrent, "true"); HttpContext.Session.SetString(SessionKeyError, "Gagal mendaftarkan."); return(RedirectToAction("ChangePassword", "Profile")); } } } } } HttpContext.Session.SetString(SessionKeyCurrent, "true"); HttpContext.Session.SetString(SessionKeyError, "Terjadi kesalahan. Mohon hubungi admin."); return(RedirectToAction("ChangePassword", "Profile")); }