Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public SignUp2ViewModel()
- {
- SendInfoAWSCommand = new Command(async ()=> await SendInfoAWS());
- }
- public Command SendInfoAWSCommand { get; }
- const string AppClientID = "sum stuff";
- const string PoolID = " sum place";
- static Amazon.RegionEndpoint Region = Amazon.RegionEndpoint.USWest2;
- async Task SendInfoAWS()
- {
- IsBusy = true;
- await Task.Delay(500);
- AmazonCognitoIdentityProviderClient provider = new AmazonCognitoIdentityProviderClient(new Amazon.Runtime.AnonymousAWSCredentials(), Region);
- SignUpRequest signUpRequest = new SignUpRequest()
- {
- ClientId = AppClientID,
- Username = usuario,
- Password = senha
- };
- List<AttributeType> attributes = new List<AttributeType>()
- {
- new AttributeType(){Name = "email", Value = email }
- };
- signUpRequest.UserAttributes = attributes;
- try
- {
- SignUpResponse result = await provider.SignUpAsync(signUpRequest);
- }
- catch (Exception e)
- {
- IsBusy = false;
- await Application.Current.MainPage.DisplayAlert("Error", ("Contact has NOT been saved" + e.Message + " "), "OK");
- return;
- }
- IsBusy = false;
- await Application.Current.MainPage.DisplayAlert("Save", "Contact has been saved", "OK");
- }
- string email;
- string usuario;
- string senha;
- bool isBusy = false;
- public string Email
- {
- get
- {
- return email;
- }
- set
- {
- email = value;
- OnPropertyChanged();
- }
- }
- public string Usuario
- {
- get
- {
- return usuario;
- }
- set
- {
- usuario = value;
- OnPropertyChanged();
- }
- }
- public string Senha
- {
- get
- {
- return senha;
- }
- set
- {
- senha = value;
- OnPropertyChanged();
- }
- }
- public bool IsBusy
- {
- get { return isBusy; }
- set
- {
- isBusy = value;
- OnPropertyChanged();
- SendInfoAWSCommand.ChangeCanExecute();
- }
- }
- public event PropertyChangedEventHandler PropertyChanged;
- void OnPropertyChanged([CallerMemberName] string name = "")
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
- }
- }
- }
- public SignInViewModel()
- {
- SendInfoAWSCommand = new Command(async () => await SendInfoAWS());
- }
- public Command SendInfoAWSCommand { get; }
- static string usuario;
- static string senha;
- static bool isBusy = false;
- public string Usuario
- {
- get
- {
- return usuario;
- }
- set
- {
- usuario = value;
- OnPropertyChanged();
- }
- }
- public string Senha
- {
- get
- {
- return senha;
- }
- set
- {
- senha = value;
- OnPropertyChanged();
- }
- }
- public bool IsBusy
- {
- get { return isBusy; }
- set
- {
- isBusy = value;
- OnPropertyChanged();
- SendInfoAWSCommand.ChangeCanExecute();
- }
- }
- const string AppClientID = "same place";
- const string PoolID = " other suff";
- static Amazon.RegionEndpoint Region = Amazon.RegionEndpoint.USWest2;
- public event PropertyChangedEventHandler PropertyChanged;
- void OnPropertyChanged([CallerMemberName] string name = "")
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
- }
- public async Task SendInfoAWS()
- {
- IsBusy = true;
- await Task.Delay(500);
- AmazonCognitoIdentityProviderClient provider = new AmazonCognitoIdentityProviderClient(new Amazon.Runtime.AnonymousAWSCredentials(), Region);
- CognitoUserPool userPool = new CognitoUserPool(PoolID, AppClientID, provider);
- CognitoUser user = new CognitoUser(usuario, AppClientID, userPool, provider);
- InitiateSrpAuthRequest authRequest = new InitiateSrpAuthRequest()
- {
- Password = senha
- };
- AuthFlowResponse authFlowResponse = null;
- try
- {
- authFlowResponse = await user.StartWithSrpAuthAsync(authRequest).ConfigureAwait(false);
- }
- catch (Exception e)
- {
- isBusy = false;
- await Application.Current.MainPage.DisplayAlert("Login Failed", (" " + e.Message + " "), "OK");
- return;
- }
- IsBusy = false;
- GetUserRequest getUserRequest = new GetUserRequest();
- getUserRequest.AccessToken = authFlowResponse.AuthenticationResult.AccessToken;
- await Application.Current.MainPage.DisplayAlert("Login Successful", "Welcome!", "OK");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement