diff --git a/src/Filtering/ThreadHiding.coffee b/src/Filtering/ThreadHiding.coffee index 0241703d2..ff9cfdd16 100644 --- a/src/Filtering/ThreadHiding.coffee +++ b/src/Filtering/ThreadHiding.coffee @@ -24,7 +24,29 @@ ThreadHiding = else unless root.contains thread.stub # When we come back to a page, the stub is already there. 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. @@ -157,6 +179,7 @@ ThreadHiding = return if thread.isHidden threadRoot = thread.OP.nodes.root.parentNode thread.isHidden = true + ThreadHiding.updateToggle() unless makeStub threadRoot.hidden = threadRoot.nextElementSibling.hidden = true #