Пример #1
0
        public async Task <ValidarTokenResponse> ValidarTokenAsync(ValidarToken peticion)
        {
            ResetContrasenia = new ValidarTokenResponse();
            try
            {
                StringContent request   = new StringContent(JObject.FromObject(peticion).ToString(), Encoding.UTF8, "application/json");
                var           solicitud = await EGuardianAPI.PostAsync(Constants.Endpoint_Auth_Validar_Token, request);

                solicitud.EnsureSuccessStatusCode();
                string respuesta = await solicitud.Content.ReadAsStringAsync();

                ResetContrasenia = JsonConvert.DeserializeObject <ValidarTokenResponse>(respuesta);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("ERROR: " + e.Message);
            }
            return(ResetContrasenia);
        }
Пример #2
0
 public Task <ValidarTokenResponse> ValidarTokenAsync(ValidarToken peticion)
 {
     return(ServicioWeb.ValidarTokenAsync(peticion));
 }
Пример #3
0
        async void Cambiar_Clicked(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(contrasenia.Text))
            {
                await DisplayAlert("", "Por favor, indique su nueva contraseña", "Aceptar");

                contrasenia.Focus();
                return;
            }
            else
            {
                if (!Regex.Match(contrasenia.Text, @"^\S{6,15}$").Success)
                {
                    await DisplayAlert("", "La contraseña debe tener entre 6 y 15 caracteres.", "Aceptar");

                    contrasenia.Focus();
                    return;
                }
            }
            if (String.IsNullOrEmpty(confirmacionContrasenia.Text))
            {
                await DisplayAlert("", "Por favor, confirme su nueva contraseña.", "Aceptar");

                confirmacionContrasenia.Focus();
                return;
            }

            if ((!String.IsNullOrEmpty(contrasenia.Text) && !String.IsNullOrEmpty(confirmacionContrasenia.Text)) && !confirmacionContrasenia.Text.Equals(contrasenia.Text))
            {
                await DisplayAlert("", "Las contraseñas no coinciden", "Aceptar");

                confirmacionContrasenia.Focus();
                return;
            }
            await Navigation.PushPopupAsync(new Indicador("Actualizando contraseña", Color.White));

            try
            {
                ValidarToken peticion = new ValidarToken
                {
                    token       = PwdReset_ID,
                    newPassword = getContrasenia()
                };

                var Respuesta = await App.ManejadorDatos.ValidarTokenAsync(peticion);

                await Navigation.PopPopupAsync();

                if (Respuesta == null)
                {
                    ShowToast(ToastNotificationType.Error, "Cambio de contraseña", "Ha ocurrido algo inesperado en la actualización de contraseña, inténtalo de nuevo.", 7);
                    return;
                }
                else if (Respuesta.result.Equals("SUCCESS"))
                {
                    Login(Usuario.Text, getContrasenia());
                    return;
                }
                else
                {
                    await DisplayAlert("Cambio de contraseña", Respuesta.result, "Aceptar");
                }
            }
            catch
            {
                await DisplayAlert("Cambio de contraseña", "¡Ha ocurrido algo inesperado!", "Aceptar");
            }
        }