public IHttpActionResult DenunciarComentario(int ComentarioID, [FromBody] String Texto) { PostInteracao POST_INTERACAO = new PostInteracao(); POST_INTERACAO.ComentarioId = ComentarioID; POST_INTERACAO.UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); POST_INTERACAO.Tipo = PostInteracao.TipoInteracao.DenunciaComentario; POST_INTERACAO.Texto = Texto; POST_INTERACAO.Data = DateTime.Now; db.PostsInteracoes.Add(POST_INTERACAO); PostInteracao COMENTARIO = db.PostsInteracoes.Find(ComentarioID); COMENTARIO.QuantidadeDenuncias++; COMENTARIO.Denunciado = true; if (COMENTARIO.QuantidadeDenuncias > 3) //LIMITE DE DENUNCIAS { COMENTARIO.Bloqueado = true; } db.SaveChanges(); return(Ok()); }
public async Task _EnviarComentario() { //NovoComentario NovoComentario.UsuarioId = App.UsuarioLogado.Id; NovoComentario.UsuarioDados = App.UsuarioLogado; NovoComentario.Data = DateTime.Now; NovoComentario.Meu = true; try { using (APIHelper API = new APIHelper()) { await API.PUT("api/posts/comentar/" + POST.Id + "/?texto=" + NovoComentario.Texto, null); } } catch (HTTPException EX) { } catch (Exception EX) { } COMENTARIOS.Add(NovoComentario); MessagingCenter.Send <Object>(this, "ComentariosRecebidos"); POST.EuComentei = true; QuantidadeComentarios++; NovoComentario = new PostInteracao(); }
public IHttpActionResult DenunciarComentario(int ComentarioID, [FromBody] String Texto) { PostInteracao postInteracao = new PostInteracao(); postInteracao.ComentarioId = ComentarioID; postInteracao.UsuarioId = Utilitarios.GetTokenUsuarioLogado(Request); postInteracao.Tipo = PostInteracao.TipoInteracao.DenunciaComentario; postInteracao.Texto = Texto; postInteracao.Data = DateTime.Now; db.PostsInteracoes.Add(postInteracao); PostInteracao comentario = db.PostsInteracoes.Find(ComentarioID); comentario.QuantidadeDenuncias++; comentario.Denunciado = true; if (comentario.QuantidadeDenuncias > Utilitarios.quantidadeDenunciaMaxima()) { comentario.Bloqueado = true; } db.SaveChanges(); return(Ok()); }
public ComentarioParcial(PostInteracao comentario) { _COMENTARIO = comentario; InitializeComponent(); BindingContext = _COMENTARIO; }
async void ExecutePerfilCommand(PostInteracao postInteracao) { var navigationParams = new NavigationParameters(); navigationParams.Add("usuario", postInteracao.UsuarioDados); await _navigationService.NavigateAsync("PerfilPage", navigationParams); }
public IHttpActionResult Curtir(int PostID, bool Curtir) { int UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); PostInteracao POST_INTERACAO = db.PostsInteracoes .FirstOrDefault(pp => pp.PostId == PostID && pp.UsuarioId == UsuarioId && pp.Tipo == PostInteracao.TipoInteracao.Curtida); Post POST = db.Posts.Find(PostID); if (POST_INTERACAO == null) { if (Curtir) { POST_INTERACAO = new PostInteracao(); POST_INTERACAO.PostId = PostID; POST_INTERACAO.UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); POST_INTERACAO.Tipo = PostInteracao.TipoInteracao.Curtida; POST_INTERACAO.Data = DateTime.Now; db.PostsInteracoes.Add(POST_INTERACAO); POST.QuantidadeCurtidas++; //push Usuario UsuarioLogado = db.Usuarios.Find(UsuarioId); List <UsuarioToken> Tokens = db.UsuarioTokens.Where(tt => tt.UsuarioId == POST.UsuarioId).ToList(); foreach (var T in Tokens) { switch (T.Plataforma) { case UsuarioToken.Plataformas.Android: Utilitarios.EnviaNotificacaoAndroid("Curtida", UsuarioLogado.Nome + " curtiu sua postagem.", PostID, T.Token); break; case UsuarioToken.Plataformas.iOS: Utilitarios.EnviaNotificacaoIOS("Curtida", UsuarioLogado.Nome + " curtiu sua postagem.", PostID, T.Token); break; } } } } else { if (!Curtir) { db.PostsInteracoes.Remove(POST_INTERACAO); POST.QuantidadeCurtidas--; } } db.SaveChanges(); return(Ok()); }
public PostDetalheViewModel(INavigationService navigationService, IPageDialogService dialogService) { _navigationService = navigationService; _dialogService = dialogService; NovoComentario = new PostInteracao(); DenunciarCommand = new Command(async() => await ExecuteDenunciarCommand()); EnviarComentarioCommand = new Command(async() => await ExecuteEnviarComentarioCommand()); ExcluirCommand = new Command(async() => await ExecuteExcluirCommand()); PerfilCommand = new DelegateCommand <PostInteracao>(ExecutePerfilCommand); }
public ActionResult DeleteComentario(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PostInteracao postI = db.PostsInteracoes.Find(id); db.PostsInteracoes.Remove(postI); db.SaveChanges(); return(RedirectToAction("ComentariosDenunciados")); }
public PostDetalheViewModel(Post P, Page Pg) { PageParent = Pg; POST = P; BuscaComentarios(); NovoComentario = new PostInteracao(); Curtir = new Command(async() => await _Curtir()); Denunciar = new Command(async() => await _Denunciar()); EnviarComentario = new Command(async() => await _EnviarComentario()); Excluir = new Command(async() => await _Excluir()); }
public IHttpActionResult Comentar(int PostID, String Texto) { PostInteracao POST_INTERACAO = new PostInteracao(); POST_INTERACAO.PostId = PostID; POST_INTERACAO.UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); POST_INTERACAO.Tipo = PostInteracao.TipoInteracao.Comentario; POST_INTERACAO.Data = DateTime.Now; POST_INTERACAO.Texto = Texto; db.PostsInteracoes.Add(POST_INTERACAO); Post POST = db.Posts.Find(PostID); POST.QuantidadeComentarios++; db.SaveChanges(); //push Usuario UsuarioLogado = db.Usuarios.Find(POST_INTERACAO.UsuarioId); List <UsuarioToken> Tokens = db.UsuarioTokens.Where(tt => tt.UsuarioId == POST.UsuarioId).ToList(); String TextoDaNotificacao = Texto; if (TextoDaNotificacao.Length > 30) { TextoDaNotificacao = TextoDaNotificacao.Substring(0, 30); } foreach (var T in Tokens) { switch (T.Plataforma) { case UsuarioToken.Plataformas.Android: Utilitarios.EnviaNotificacaoAndroid("Comentário", UsuarioLogado.Nome + " comentou: " + TextoDaNotificacao, PostID, T.Token); break; case UsuarioToken.Plataformas.iOS: Utilitarios.EnviaNotificacaoIOS("Comentário", UsuarioLogado.Nome + " comentou: " + TextoDaNotificacao, PostID, T.Token); break; } } return(Ok()); }
public ActionResult DetailsComentario(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PostInteracao postI = db.PostsInteracoes.Find(id); if (postI == null) { return(HttpNotFound()); } //Get Denuncias ViewBag.Denuncias = db.PostsInteracoes.Include(p => p.UsuarioDados).Where(dd => dd.Tipo == PostInteracao.TipoInteracao.DenunciaComentario && dd.ComentarioId == postI.Id).ToList(); return(View(postI)); }
public async void DenunciarComentario(PostInteracao Comentario) { Comentario.EuDenunciei = true; try { using (APIHelper API = new APIHelper()) { await API.PUT("api/posts/denunciar-comentario/" + Comentario.Id, null); } } catch (HTTPException EX) { } catch (Exception EX) { } }
public IHttpActionResult Comentar(int PostID, string Texto) { PostInteracao postInteracao = new PostInteracao(); postInteracao.PostId = PostID; postInteracao.UsuarioId = Utilitarios.GetTokenUsuarioLogado(Request); postInteracao.Tipo = PostInteracao.TipoInteracao.Comentario; postInteracao.Data = DateTime.Now; postInteracao.Texto = Texto; db.PostsInteracoes.Add(postInteracao); Post post = db.Posts.Find(PostID); post.QuantidadeComentarios++; db.SaveChanges(); return(Ok()); }
public IHttpActionResult Curtir(int PostID, bool Curtir) { int UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); PostInteracao POST_INTERACAO = db.PostsInteracoes .FirstOrDefault(pp => pp.PostId == PostID && pp.UsuarioId == UsuarioId && pp.Tipo == PostInteracao.TipoInteracao.Curtida); Post POST = db.Posts.Find(PostID); if (POST_INTERACAO == null) { if (Curtir) { POST_INTERACAO = new PostInteracao(); POST_INTERACAO.PostId = PostID; POST_INTERACAO.UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); POST_INTERACAO.Tipo = PostInteracao.TipoInteracao.Curtida; POST_INTERACAO.Data = DateTime.Now; db.PostsInteracoes.Add(POST_INTERACAO); POST.QuantidadeCurtidas++; } } else { if (!Curtir) { db.PostsInteracoes.Remove(POST_INTERACAO); POST.QuantidadeCurtidas--; } } db.SaveChanges(); return(Ok()); }
public IHttpActionResult Comentar(int PostID, String Texto) { PostInteracao POST_INTERACAO = new PostInteracao(); POST_INTERACAO.PostId = PostID; POST_INTERACAO.UsuarioId = Util.Utilitarios.GetTokenUsuarioLogado(Request); POST_INTERACAO.Tipo = PostInteracao.TipoInteracao.Comentario; POST_INTERACAO.Data = DateTime.Now; POST_INTERACAO.Texto = Texto; db.PostsInteracoes.Add(POST_INTERACAO); Post POST = db.Posts.Find(PostID); POST.QuantidadeComentarios++; db.SaveChanges(); return(Ok()); }
public async Task ExecuteEnviarComentarioCommand() { //Novo comentario NovoComentario.UsuarioId = App.UsuarioLogado.Id; NovoComentario.UsuarioDados = App.UsuarioLogado; NovoComentario.Data = DateTime.Now; NovoComentario.Meu = true; try { using (APIHelper API = new APIHelper()) { await API.PUT("api/posts/comentar/" + Post.Id + "?Texto=" + NovoComentario.Texto, null); } } catch (HTTPException EX) { } catch (Exception EX) { } Comentarios.Add(NovoComentario); Post.QuantidadeComentarios++; Post.EuComentei = true; NovoComentario = new PostInteracao(); }
private void CP_OnDenunciaComentario(PostInteracao comentario) { PDVM.DenunciarComentario(comentario); }