예제 #1
0
        public static async Task LoginFB(UserFB usr)
        {
            Console.WriteLine("entra a registrar");

            await Task.Run(async() =>
            {
                try
                {
                    var responseApi = await FbService.PostLogin(usr.id_fbk);


                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        if (responseApi != null)
                        {
                            if (responseApi["codigo"].ToString() == "1")
                            {
                                var s          = responseApi["data"].ToString();
                                var userLogged = Newtonsoft.Json.JsonConvert.DeserializeObject <UserFB>(s);

                                if (userLogged != null)
                                {
                                    GeneralSetting.UserSettings = JsonConvert.SerializeObject(userLogged);
                                    App.NavigateToProfile();
                                }                                //usuario nuevo registrar pagina
                                else
                                {
                                    var app      = Current as App;
                                    app.MainPage = new NavigationPage(new RegistroPage(usr))
                                    {
                                        BarBackgroundColor = (Color)App.Current.Resources["AzulColor"]
                                    };
                                }
                            }
                            else
                            {
                                var app      = Current as App;
                                app.MainPage = new NavigationPage(new RegistroPage(usr))
                                {
                                    BarBackgroundColor = (Color)App.Current.Resources["AzulColor"]
                                };
                            }
                        }
                    });
                }
                catch (Exception e)
                {
                    Console.WriteLine("ha ocurrido un error");
                }
            });
        }
예제 #2
0
        public async Task IniciarSesion(string email, string password)
        {
            Console.WriteLine("entra a registrar");

            await Task.Run(async() =>
            {
                try
                {
                    var responseApi = await UserService.PostLogin(email, password);


                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        if (responseApi != null)
                        {
                            if (responseApi["codigo"].ToString() == "1")
                            {
                                var s          = responseApi["data"].ToString();
                                var userLogged = Newtonsoft.Json.JsonConvert.DeserializeObject <UserFB>(s);

                                if (userLogged != null)
                                {
                                    GeneralSetting.UserSettings = JsonConvert.SerializeObject(userLogged);
                                    App.NavigateToProfile();
                                    Loading(false);
                                }
                            }
                            else
                            {
                                Loading(false);
                                await DisplayAlert("Usuario", responseApi["mensaje"].ToString(), "Aceptar");
                            }
                        }
                        else
                        {
                            Loading(false);
                            await DisplayAlert("Usuario", "Ha ocurrido un error.", "Aceptar");
                        }
                    });
                }
                catch (Exception e)
                {
                    Loading(false);
                    Console.WriteLine("ha ocurrido un error");
                }
            });
        }
예제 #3
0
        public async Task Registrar(UserFB usr)
        {
            Console.WriteLine("entra a registrar");

            await Task.Run(async() =>
            {
                try
                {
                    var responseApi = await FbService.PostUserFB(usr);

                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        if (responseApi != null)
                        {
                            if (responseApi["codigo"].ToString() == "1")
                            {
                                var s       = responseApi["data"].ToString();
                                var newUser = Newtonsoft.Json.JsonConvert.DeserializeObject <UserFB>(s);

                                if (newUser != null)
                                {
                                    //await DisplayAlert("Usuario", "Usuario creado con exito", "Aceptar");
                                    GeneralSetting.UserSettings = JsonConvert.SerializeObject(newUser);
                                    App.NavigateToProfile();
                                    Loading(false);
                                }
                            }
                            else
                            {
                                await DisplayAlert("Usuario", responseApi["mensaje"].ToString(), "Aceptar");
                            }
                        }
                        else
                        {
                            Loading(false);
                            await DisplayAlert("Usuario", "Ha ocurrido un error", "Aceptar");
                        }
                    });
                }
                catch (Exception e)
                {
                    Loading(false);
                    await DisplayAlert("Usuario", "Ha ocurrido un error " + e.Message, "Aceptar");
                }
            });
        }
예제 #4
0
        async void TapEnviar_Tapped(object sender, EventArgs e)
        {
            var pasa_validacion = true;

            if (!string.IsNullOrEmpty(txtTitulo.Text) && !string.IsNullOrEmpty(editorDescription.Text))
            {
                //si viene el mail entonces validar
                if (!string.IsNullOrEmpty((txtMail.Text)))
                {
                    if (!GlobalHelpers.EmailBienEscrito(txtMail.Text))
                    {
                        await DisplayAlert("¡Uh oh!", "Email no valido.", "Aceptar");

                        pasa_validacion = false;
                    }
                }
                if (pasa_validacion)
                {
                    Loading(true);
                    var r = await _reclamoService.CrearReclamo(txtTitulo.Text,
                                                               editorDescription.Text,
                                                               txtNombre.Text,
                                                               txtMail.Text,
                                                               txtTelefono.Text,
                                                               map.coordinate.Latitude.ToString(),
                                                               map.coordinate.Longitude.ToString(),
                                                               stackMultimediaCausa.listMatriz.Where(x => x.usada).Select(x => x.bytes).ToList(),
                                                               txtReferencia.Text);

                    Loading(false);

                    await DisplayAlert("Reclamo enviado", r, "Aceptar");

                    //await Navigation.PushAsync(new MisReclamosPage());
                    App.NavigateToProfile();
                }
            }
            else
            {
                await DisplayAlert("¡Uh oh!", "Título y descripción son obligatorios para realizar tu reclamo.", "Aceptar");
            }
        }
예제 #5
0
        public LoginPage()
        {
            InitializeComponent();

            NavigationPage.SetHasNavigationBar(this, false);


            tapIniciarComoAnonimo         = new TapGestureRecognizer();
            tapIniciarComoAnonimo.Tapped += (sender, e) => { App.NavigateToProfile(); };


            tapIniciarSesion         = new TapGestureRecognizer();
            tapIniciarSesion.Tapped += TapIniciarSesion_Tapped;

            slIniciarSesion.GestureRecognizers.Add(tapIniciarSesion);

            // lblCrearCuenta.GestureRecognizers.Add(tapCrearCuenta);


            lblIngresarAnonimo.GestureRecognizers.Add(tapIniciarComoAnonimo);



            tapOlvido         = new TapGestureRecognizer();
            tapOlvido.Tapped += async(sender, e) => {
                await Navigation.PushAsync(new RecuperarContraseñaPage());
            };

            lblOlvidar.GestureRecognizers.Add(tapOlvido);

            tapFb         = new TapGestureRecognizer();
            tapFb.Tapped += async(object sender, EventArgs e) => {
                await Navigation.PushAsync(new FacebookPage());
            };

            imgFb.GestureRecognizers.Add(tapFb);

            Loading(false);
        }
예제 #6
0
        public async Task SolicitarCambioContraseña(string email)
        {
            await Task.Run(async() =>
            {
                try
                {
                    var responseApi = await UserService.PostResetPasswordRequest(email);

                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        Loading(false);
                        if (responseApi != null)
                        {
                            if (responseApi["codigo"].ToString() == "1")
                            {
                                await DisplayAlert("Recuperar Contraseña", "te hemos enviado un link al mail registrado. Debes seguir las instrucciones allí indicadas para continuar con el proceso.", "Aceptar");
                                App.NavigateToProfile();
                            }
                            else
                            {
                                await DisplayAlert("Recuperar Contraseña", responseApi["mensaje"].ToString(), "Aceptar");
                            }
                        }
                        else
                        {
                            Loading(false);
                            await DisplayAlert("Usuario", "Ha ocurrido un error", "Aceptar");
                        }
                    });
                }
                catch (Exception e)
                {
                    Loading(false);
                    await DisplayAlert("Usuario", "Ha ocurrido un error " + e.Message, "Aceptar");
                }
            });
        }