diff --git a/src/Filtering/ThreadHiding.coffee b/src/Filtering/ThreadHiding.coffee index 8eb7ad224..307820770 100755 --- a/src/Filtering/ThreadHiding.coffee +++ b/src/Filtering/ThreadHiding.coffee @@ -19,7 +19,29 @@ ThreadHiding = thread = Get.threadFromRoot root if thread.isHidden and thread.stub and !root.contains thread.stub ThreadHiding.makeStub thread, root - return + ThreadHiding.updateToggle() + updateToggle: -> + hiddenCount = 0 + for threadID, thread of g.BOARD.threads when thread.isHidden + hiddenCount++ if thread.ID in Index.liveThreadIDs + unless hiddenCount + ThreadHiding.removeToggle() + return + unless ThreadHiding.toggler + ThreadHiding.addToggle() + $('#hidden-count', Index.navLinks).textContent = if hiddenCount is 1 + '1 hidden thread' + else + "#{hiddenCount} hidden threads" + addToggle: -> + ThreadHiding.toggler = $.el 'span', + id: 'hidden-label' + innerHTML: ' — ' + $.add Index.navLinks, ThreadHiding.toggler + removeToggle: -> + return unless ThreadHiding.toggler + $.rm ThreadHiding.toggler + delete ThreadHiding.toggler syncCatalog: -> # Sync hidden threads from the catalog into the index. @@ -188,6 +210,7 @@ ThreadHiding = return if thread.isHidden threadRoot = thread.OP.nodes.root.parentNode thread.isHidden = true + ThreadHiding.updateToggle() return threadRoot.hidden = true unless makeStub @@ -199,3 +222,4 @@ ThreadHiding = delete thread.stub threadRoot = thread.OP.nodes.root.parentNode threadRoot.hidden = thread.isHidden = false + ThreadHiding.updateToggle()