public async Task <IActionResult> SignUp([FromBody] SignUpRequestModel requestModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } SignUpResponseModel responseModel = await _accountService.SignUpAsync(requestModel); if (responseModel.IdentityResult.Succeeded) { string callbackUrl = CreateCallbackUrl("ConfirmEmail", new { userId = responseModel.Id, code = responseModel.SignUpToken, redirectUrl = requestModel.RedirectUrl }); await _emailHelper.SendEmailAsync(requestModel.Email, "Confirm your account", $"Please confirm your registration using the link: <a title='Confirmation' href='{callbackUrl}'>link</a>"); } if (!responseModel.IdentityResult.Succeeded) { foreach (IdentityError error in responseModel.IdentityResult.Errors) { ModelState.AddModelError(string.Empty, error.Description); } return(BadRequest(ModelState)); } return(Ok()); }
public async Task <ActionResult <long> > SignUp(UserDto userDto) { SignUpResponseModel signUpResponseModel = new SignUpResponseModel(); if (userDto != null) { //User Already Exists UserResponseModel userResponseModel = _userRepository.GetUserByUserEmail(userDto.Email); if (userResponseModel != null && userResponseModel.Data != null && userResponseModel.Data.Count > 0) { signUpResponseModel.StatusCode = 409; signUpResponseModel.Message = "User Already Exists!"; signUpResponseModel.UserID = 0; signUpResponseModel.ClassCode = "0"; } else { DataTable userDataTable = TranslateUserDtoToDataTable(userDto); DataTable userEducationDataTable = TranslateUserEducationDtoToDataTable(userDto.userEducation); DataTable userExperienceDataTable = TranslateUserExperienceDtoToDataTable(userDto.userExperience); DataTable userGuardianDataTable = TranslateUserGuardianDtoToDataTable(userDto.userGuardian); signUpResponseModel = _userRepository.SignUp(userDataTable, userEducationDataTable, userExperienceDataTable, userGuardianDataTable); } } signUpResponseModel.ClassCode = "0"; return(Ok(signUpResponseModel)); }
public async Task <SignUpResponseModel> SignUpAsync(SignUpRequestModel requestModel) { ApplicationUser user = requestModel.MapToEntity(new ApplicationUser()); SignUpResponseModel responseModel = new SignUpResponseModel(); responseModel.IdentityResult = await _userManager.CreateAsync(user, requestModel.Password); if (responseModel.IdentityResult.Succeeded) { responseModel.Id = user.Id; responseModel.SignUpToken = await _userManager.GenerateEmailConfirmationTokenAsync(user); return(responseModel); } return(responseModel); }
public static async Task <Tuple <SignUpResponseModel, ErrorModel> > ForgotPassword(PasswordReset UserDetail) { using (HttpClientHelper client = new HttpClientHelper()) { var passengerObj = new SignUpResponseModel(); ErrorModel errorModel = null; await client.ProcessClientRequestAsync <SignUpResponseModel>(GigUrl.GigmsForgotPassword, HttpMethod.Post, UserDetail, success => { passengerObj = success; }, error => { errorModel = error; } ); return(new Tuple <SignUpResponseModel, ErrorModel>(passengerObj, errorModel)); } }
public SignUpResponseModel SignUp(DataTable userDataTable, DataTable userEducationDataTable, DataTable userExperienceDataTable, DataTable userGuardianDataTable) { SignUpResponseModel signUpResponseModel = new SignUpResponseModel(); DataTable dataTable = new DataTable(); SqlConnection conn = new SqlConnection(DbHelper.DbConnectionString); try { SqlCommand command = new SqlCommand(@"dbo.uspSignUpSaveUser", conn); command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@UserSigupUDT", userDataTable); command.Parameters.AddWithValue("@UserExperienceUDT", userExperienceDataTable); command.Parameters.AddWithValue("@UserEducationUDT", userEducationDataTable); command.Parameters.AddWithValue("@UserGuardianUDT", userGuardianDataTable); SqlDataAdapter dataAdapter = new SqlDataAdapter(command); dataAdapter.Fill(dataTable); foreach (DataRow row in dataTable.Rows) { signUpResponseModel.UserID = row["UserID"] != DBNull.Value ? Convert.ToInt64(row["UserID"].ToString()) : 0; signUpResponseModel.ClassCode = row["ClassCode"] != DBNull.Value ? Convert.ToString(row["ClassCode"]) : string.Empty; } signUpResponseModel.Message = "Created"; signUpResponseModel.StatusCode = 201; } catch (Exception ex) { signUpResponseModel.UserID = 0; signUpResponseModel.ClassCode = "0"; signUpResponseModel.Message = "Internal Server Error"; signUpResponseModel.StatusCode = 500; } finally { conn.Close(); } return(signUpResponseModel); }
public async Task <string> SignUpAsync(TraineeSignupModel signupModel) { Debug.WriteLine(JsonConvert.SerializeObject(signupModel)); if (CrossConnectivity.Current.IsConnected) { var uri = new Uri("https://arkho-app.org:6443/FitnessApp/manageservices/v1/members/signup"); try { var json = JsonConvert.SerializeObject(signupModel); var content = new StringContent(json, Encoding.UTF8, "application/json"); HttpResponseMessage response = null; response = await client.PostAsync(uri, content); if (response.IsSuccessStatusCode) { var responseJson = response.Content.ReadAsStringAsync().Result; SignUpResponseModel responseItem = JsonConvert.DeserializeObject <Models.SignUpResponseModel>(responseJson); if (responseItem.status.status == "SUCCESS" || responseItem.status.status == "Success") { if (signupModel.profile == "Trainer" && responseItem.status.IsStripeAccountCreated == "false") { App.TrainerStripeUrl = responseItem.status.StripeRedirectUrl; } LoginRequestModel loginRequestModel = new LoginRequestModel(App.SelectedView, signupModel.email, App.SelectedView, signupModel.password); var message = await App.TodoManager.Login(loginRequestModel); if (message == "SUCCESS" || message == "Success") { return("Success"); } else { return("Internal Server Error. Please try again."); } } else { return("Internal Server Error. Please try again."); } } else { return("Internal Server Error. Please try again."); } } catch (Exception ex) { Debug.WriteLine(@"ERROR {0}", ex.Message); return("Internal Server Error. Please try again."); } } else { return("Internet Connectivity error. Please try again."); } }