Exemplo n.º 1
0
        private async void BtnPostar_Clicked(object sender, EventArgs e)
        {
            //Valida Foto
            if (PostagemVM.POST.Foto == null)
            {
                await DisplayAlert("Erro", "Precisa de uma foto para postar", "OK");

                return;
            }

            //Valida Descrição
            if (String.IsNullOrEmpty(PostagemVM.POST.Descricao))
            {
                await DisplayAlert("Erro", "Informe uma descrição", "OK");

                return;
            }

            LOAD.INICIA("Gravando Postagem...");

            //Posta na API
            await PostagemVM.Postar();

            //Finaliza e mostra mensagem
            LOAD.FINALIZA();

            txtDescricao.Text = "";

            await DisplayAlert("Postado!", "Postagem realizada com sucesso.", "OK");
        }
Exemplo n.º 2
0
        private async void Busca_SearchButtonPressed(object sender, EventArgs e)
        {
            LOAD.INICIA("Realizando busca de usuários...");
            await ListaUsuarios.BuscaUsuarios(txtBusca.Text);

            LOAD.FINALIZA();
        }
Exemplo n.º 3
0
        protected override void OnAppearing()
        {
            base.OnAppearing();

            MessagingCenter.Subscribe <Object>(this, "DadosUsuarioAtualizados", (sender) =>
            {
                LOAD.FINALIZA();
                PVM.BuscaPostsUsuario();
            });

            //Recebe dados dos posts do usuário
            MessagingCenter.Subscribe <Object>(this, "PostsUsuarioAtualizados", (sender) =>
            {
                //Limpa as colunas
                PostsColuna1.Children.Clear();
                PostsColuna2.Children.Clear();

                bool PrimeiraColuna = true;

                foreach (var C in PVM.POSTS)
                {
                    PostMiniParcial PMP = new PostMiniParcial(C);
                    PMP.OnClicaPost    += PMP_OnClicaPost;

                    if (PrimeiraColuna)
                    {
                        PostsColuna1.Children.Add(PMP);
                    }
                    else
                    {
                        PostsColuna2.Children.Add(PMP);
                    }

                    PrimeiraColuna = !PrimeiraColuna;
                }
            });

            MessagingCenter.Subscribe <Object, byte[]>(this, "FotoColetada", (sender, imagem) =>
            {
                PVM.TrocarFoto(imagem);
                AtualizandoFoto = false;
            });

            if (!AtualizandoFoto)
            {
                LOAD.INICIA("Buscando dados do Usuário...");
                PVM.BuscaDadosUsuario();
            }
        }
Exemplo n.º 4
0
        async void AD_OnUsuarioAlterado(Models.Usuario usarioAlterado)
        {
            LOAD.INICIA("Atualizando dados...");
            await PVM.AlterarDados(usarioAlterado);

            //Atualiza dados locais
            Usuario DadosAtuais = PVM.USUARIO;

            DadosAtuais.Nome  = usarioAlterado.Nome;
            DadosAtuais.Email = usarioAlterado.Email;

            PVM.USUARIO = DadosAtuais;

            LOAD.FINALIZA();
        }
Exemplo n.º 5
0
        public Login()
        {
            InitializeComponent();

            BindingContext = new LoginViewModel();

            this.btnEntrar.Clicked += async(sender, e) =>
            {
                try
                {
                    if (String.IsNullOrEmpty(txtEmail.Text))
                    {
                        await DisplayAlert("Atenção", "Informe um e-mail.", "OK");

                        return;
                    }

                    if (String.IsNullOrEmpty(txtSenha.Text))
                    {
                        await DisplayAlert("Atenção", "Informe uma senha.", "OK");

                        return;
                    }

                    LOAD.INICIA("Validando Usuário...");

                    await((LoginViewModel)BindingContext).Entrar();
                }
                catch (HTTPException EX)
                {
                    await DisplayAlert("Atenção", EX.Message, "OK");
                }
                catch (Exception EX)
                {
                    await DisplayAlert("Erro", "Ocorreu um erro. Tente novamente mais tarde", "OK");
                }
                finally
                {
                    LOAD.FINALIZA();
                }
            };

            this.btnNovoUsuario.Clicked += async(sender, e) =>
            {
                await Navigation.PushModalAsync(new Cadastro());
            };
        }
Exemplo n.º 6
0
        public async void Cadastrar(object sender, EventArgs args)
        {
            try
            {
                //Valida campos
                if (String.IsNullOrEmpty(txtNome.Text))
                {
                    await DisplayAlert("Atenção", "Informe um nome.", "OK");

                    return;
                }

                if (String.IsNullOrEmpty(txtEmail.Text))
                {
                    await DisplayAlert("Atenção", "Informe um e-mail.", "OK");

                    return;
                }

                if (String.IsNullOrEmpty(txtSenha.Text))
                {
                    await DisplayAlert("Atenção", "Informe uma senha.", "OK");

                    return;
                }

                LOAD.INICIA("Realizando Cadastro...");

                await((CadastroViewModel)BindingContext).Cadastrar();
            }
            catch (HTTPException EX)
            {
                await DisplayAlert("Atenção", EX.Message, "OK");
            }
            catch
            {
                await DisplayAlert("Erro", "Ocorreu um erro. Tente novamente mais tarde", "OK");
            }
            finally
            {
                LOAD.FINALIZA();
            }
        }
Exemplo n.º 7
0
        public async void Config(TipoLista tipo, int idUsuario)
        {
            Tipo      = tipo;
            IdUsuario = idUsuario;

            switch (tipo)
            {
            case TipoLista.Seguidos:
                Title = "Quem ele segue";
                LOAD.INICIA("Trazendo quem o usuário segue...");
                await Lista.BuscaSeguidos(IdUsuario);

                LOAD.FINALIZA();
                break;

            case TipoLista.Seguidores:
                Title = "Quem segue ele";
                LOAD.INICIA("Trazendo quem segue o usuário...");
                await Lista.BuscaSeguidores(IdUsuario);

                LOAD.FINALIZA();
                break;
            }
        }