public async Task <ResponseModels.LoginResponseModel> LoginAsync(RequestModels.LoginRequestModel model, Enums.Views page = Enums.Views.None) { var json = JsonConvert.SerializeObject(model); ResponseModels.LoginResponseModel response = await CreatHttpPOSTRequestAsync <ResponseModels.LoginResponseModel>(ConfigSettings.EndPoint.Identity.LOGIN, body : json, page : page); return(response); }
private async void LoginBtn_Clicked(object sender, EventArgs e) { LoginRequestModel_StackError.IsVisible = false; _View = this.Content; if (!ValidationHelper.IsFormValid(LoginRequestModel)) { LoginRequestModel_Error.Text = ValidationMesages.LoginErrorMessage; LoginRequestModel_StackError.IsVisible = true; return; } ResponseModel.LoginResponseModel loginResponseModel = await identityService.LoginAsync(LoginRequestModel); if (loginResponseModel.code != "200") { LoginRequestModel_Error.Text = ValidationMesages.LoginErrorMessage; LoginRequestModel_StackError.IsVisible = true; } else { //add credentials to storage await AddCredentialsToStorageAsync(); //add Authrize token To storage await secureStorageService.SaveAsync(SecureStorageKey.AuthorizedToken, new AuthorizedToken { Token = loginResponseModel.token, RefreshToken = loginResponseModel.refreshToken }); if (loginResponseModel.data.parent.kids.Any()) { loginResponseModel.data.parent.kids[0].IsHighlighted = true.ToString(); } // save user info into storage bool isAuthorizedInfoSaved = await secureStorageService.SaveAsync(SecureStorageKey.AuthorizedUserInfo, loginResponseModel.data.parent); //save SelectedKid in Storage await secureStorageService.SaveAsync(SecureStorageKey.SelectedKids, new List <KidDetail> { loginResponseModel.data.parent.kids.FirstOrDefault() }); await App.AppNavigation.PushAsync(new MainPage(isNeedToListnerConfigured : false) { ContentView = new DashboardView() }); //await PopupNavigation.Instance.PushAsync(new CommentSectionPopup()); } }