Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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());
            }
        }