Advertisement
Guest User

Hide sage posts

a guest
Dec 27th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.25 KB | None | 0 0
  1.  
  2. $(document).ready(function () {
  3. if (active_page != 'catalog') {
  4. var hiddenposts = 0;
  5. var hiddensageposts = 0;
  6. var legitnewpost = false;
  7. var hiddendisplay = "Hidden tripless posts";
  8. var hiddensagedisplay = "Hidden sage posts";
  9.  
  10. function filterPost(post) {
  11. if($("#filteron:checked").length > 0) {
  12. var isHidden = $(post).children(".body").is(':hidden');
  13.  
  14. if($("#whitelist:checked").length > 0) {
  15. var hasTrip = $(post).find('.trip').length > 0;
  16. if(!(isHidden || hasTrip)) {
  17. hiddenposts++;
  18. updateHiddenPosts();
  19. $("<span class='trip'> </span>").appendTo($(post).find("label"));
  20. $(post).data('hidden', true);
  21. $(post).children('.body, .files, .video-container').hide();
  22.  
  23. if(removeStubs())
  24. remove(post);
  25.  
  26. } else if (isHidden && !hasTrip) {
  27. hiddenposts--;
  28. updateHiddenPosts();
  29. $(post).data('hidden', false);
  30. $(post).children('.body, .files, .video-container').show();
  31.  
  32. if(removeStubs())
  33. show(post);
  34.  
  35. } else if (isHidden && hasTrip && removeStubs()) {
  36. remove(post);
  37. }
  38.  
  39. updateFavicon(post);
  40. } else if($("#sagefilter:checked").length > 0) {
  41. var hasEmail = $(post).find('.email').length > 0
  42. if(!(isHidden || !hasEmail)) {
  43. hiddensageposts++;
  44. updateHiddenSagePosts();
  45. $(post).data('hidden', true);
  46. $(post).children('.body, .files, .video-container').hide();
  47.  
  48. if(removeStubs())
  49. remove(post);
  50. } else if (isHidden && hasEmail) {
  51. hiddensageposts--;
  52. updateHiddenSagePosts();
  53. $(post).data('hidden', false);
  54. $(post).children('.body, .files, .video-container').show();
  55.  
  56. if(removeStubs())
  57. show(post);
  58. }
  59.  
  60. updateFavicon(post);
  61. }
  62. }
  63. }
  64.  
  65. function updateFavicon(post) {
  66. if(legitnewpost == false) {
  67. if($(post).data('hidden') == true) {
  68. $("link[rel='shortcut icon']").attr("href", "/static/favicon.ico");
  69. } else {
  70. legitnewpost = true;
  71. $("link[rel='shortcut icon']").attr("href", "/static/favicon-reply.ico");
  72. }
  73. }
  74. }
  75.  
  76. function updateHiddenPosts() {
  77. $("#hdnp").text(" | " + hiddendisplay + " " + hiddenposts);
  78. }
  79.  
  80. function updateHiddenSagePosts() {
  81. $("#hdsg").text(" | " + hiddensagedisplay + " " + hiddensageposts);
  82. }
  83.  
  84. function removeStubs() {
  85. return $("#removebl:checked").length > 0;
  86. }
  87.  
  88. function remove(post) {
  89. $(post).next("br").hide();
  90. $(post).hide();
  91. }
  92.  
  93. function show(post) {
  94. $(post).next("br").show();
  95. $(post).show();
  96. }
  97.  
  98. function filterallposts() {
  99. $(".reply").each(function(){
  100. filterPost(this);
  101. });
  102. }
  103.  
  104. function scrollToBottom() {
  105. $("html, body").animate({ scrollTop: $(document).height() }, 0);
  106. }
  107.  
  108. $("#thread_stats").append("<span id='hdnp'> | " + hiddendisplay + " " + hiddenposts + "</span><br>");
  109. $("#thread_stats").append("<span id='hdsg'> | " + hiddensagedisplay + " " + hiddensageposts + "</span><br>");
  110. $("#updater").append("<br><br><input type='checkbox' id='removebl'>Remove stubs</input>");
  111. $("#updater").append("<br><input type='checkbox' id='whitelist'>Whitelist</input>");
  112. $("#updater").append("<br><input type='checkbox' id='sagefilter'>Hide sage</input>");
  113. $("#updater").append("<br><input type='checkbox' id='filteron'>Turn filter on</input>");
  114.  
  115. filterallposts();
  116.  
  117. $(document).on("new_post", function(e, post) {
  118. filterPost(post);
  119. });
  120.  
  121. $(window).on("focus scroll", function() {
  122. if($(this).scrollTop() + $(this).height() >= $('div.post:last').position().top + $('div.post:last').height())
  123. legitnewpost = false;
  124. });
  125.  
  126. /*
  127. $("#removebl").on("click", function() {
  128. $(".reply").each(function() {
  129. if($(this).children(".body").is(':hidden')) {
  130. if(removeStubs())
  131. remove(this);
  132. else
  133. show(this);
  134. }
  135. });
  136. scrollToBottom();
  137. });
  138. */
  139.  
  140. $("#whitelist").on("click", function() {
  141. hiddenposts = 0;
  142. hiddensageposts = 0;
  143. updateHiddenPosts();
  144. updateHiddenSagePosts();
  145. filterallposts();
  146. });
  147.  
  148. $("#sagefilter").on("click", function() {
  149. hiddenposts = 0;
  150. hiddensageposts = 0;
  151. updateHiddenPosts();
  152. updateHiddenSagePosts();
  153. filterallposts();
  154. });
  155.  
  156. $("#removebl").on("click", function() {
  157. hiddenposts = 0;
  158. hiddensageposts = 0;
  159. updateHiddenPosts();
  160. updateHiddenSagePosts();
  161. filterallposts();
  162. });
  163.  
  164. $("#filteron").on("click", function() {
  165. if(!$("#filteron:checked").length) {
  166. hiddenposts = 0;
  167. hiddensageposts = 0;
  168. updateHiddenPosts();
  169. updateHiddenSagePosts();
  170. $(".reply").each(function() {
  171. if($(this).children(".body").is(':hidden') && $(this).find(".trip").text() == " ") {
  172. show(this);
  173. $(this).find(".trip").remove();
  174. $(this).data('hidden', false);
  175. $(this).children('.body, .files, .video-container').show();
  176. }
  177. if($(this).children(".body").is(':hidden') && $(this).find(".email").length > 0) {
  178. show(this);
  179. $(this).data('hidden', false);
  180. $(this).children('.body, .files, .video-container').show();
  181. }
  182. });
  183. scrollToBottom();
  184. } else
  185. filterallposts();
  186. });
  187. }
  188. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement