Advertisement
Unofficialpage

Untitled

Mar 30th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.48 KB | None | 0 0
  1. public void topPostMonth() {
  2. Calendar c = Calendar.getInstance();
  3. c.add(Calendar.DATE, -30);
  4. final Date d = c.getTime();
  5.  
  6. final FirebaseFirestore db = FirebaseFirestore.getInstance();
  7.  
  8. CollectionReference dbPost = FirebaseFirestore.getInstance().collection("Posting");
  9.  
  10. dbPost.orderBy("time", com.google.firebase.firestore.Query.Direction.DESCENDING).endBefore(d).limit(10).get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
  11. @Override
  12. public void onComplete(@NonNull Task<QuerySnapshot> task) {
  13.  
  14. for (final DocumentSnapshot snapshotPost : task.getResult()) {
  15. final String postID = snapshotPost.getId();
  16.  
  17. Log.i("postID", postID);
  18.  
  19. CollectionReference likeNumber = db.collection("Likes").document(postID).collection("like-id");
  20. likeNumber.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
  21. @Override
  22. public void onComplete(@NonNull final Task<QuerySnapshot> task2) {
  23. if (task2.getException() == null) {
  24.  
  25. if (!task2.getResult().isEmpty()) {
  26.  
  27. numberLikes = task2.getResult().size();
  28.  
  29.  
  30.  
  31.  
  32. CollectionReference dislikeNumber = db.collection("Dislikes").document(postID).collection("dislike-id");
  33. dislikeNumber.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
  34. @Override
  35. public void onComplete(@NonNull Task<QuerySnapshot> task3) {
  36.  
  37. if (task3.getException() == null) {
  38.  
  39. numberDisliks = task3.getResult().getDocuments().size();
  40.  
  41. if (task3.getResult().isEmpty()){
  42. numberDisliks = 0;
  43. }
  44.  
  45. pointsTotal = numberLikes - numberDisliks;
  46.  
  47.  
  48.  
  49. Post model = snapshotPost.toObject(Post.class).withId(postID).setTotalPosints(pointsTotal);
  50. postArrayList.add(model);
  51. Collections.sort(postArrayList, new Comparator<Post>() {
  52. @Override
  53. public int compare(Post o1, Post o2) {
  54. return ((Integer) o2.getTotalPoints()).compareTo((Integer) o1.getTotalPoints());
  55. }
  56. });
  57. postAdapter.notifyDataSetChanged();
  58.  
  59.  
  60. Log.i("Like post: " + postID, String.valueOf(numberLikes));
  61. }
  62.  
  63.  
  64. }
  65.  
  66. });
  67.  
  68.  
  69. }
  70. }
  71. }
  72.  
  73. });
  74.  
  75. numberLikes = 0;
  76.  
  77. }
  78.  
  79. }
  80. });
  81.  
  82.  
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement