Refactor hidden threads count.
It concerns filtered threads too, not just manually hidden threads.
This commit is contained in:
parent
0092c53783
commit
aeb1147bb3
@ -24,29 +24,7 @@ ThreadHiding =
|
|||||||
else unless root.contains thread.stub
|
else unless root.contains thread.stub
|
||||||
# When we come back to a page, the stub is already there.
|
# When we come back to a page, the stub is already there.
|
||||||
ThreadHiding.makeStub thread, root
|
ThreadHiding.makeStub thread, root
|
||||||
ThreadHiding.updateToggle()
|
return
|
||||||
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: ' — <span id="hidden-count"></span>'
|
|
||||||
$.add Index.navLinks, ThreadHiding.toggler
|
|
||||||
removeToggle: ->
|
|
||||||
return unless ThreadHiding.toggler
|
|
||||||
$.rm ThreadHiding.toggler
|
|
||||||
delete ThreadHiding.toggler
|
|
||||||
|
|
||||||
syncCatalog: ->
|
syncCatalog: ->
|
||||||
# Sync hidden threads from the catalog into the index.
|
# Sync hidden threads from the catalog into the index.
|
||||||
@ -179,7 +157,7 @@ ThreadHiding =
|
|||||||
return if thread.isHidden
|
return if thread.isHidden
|
||||||
threadRoot = thread.OP.nodes.root.parentNode
|
threadRoot = thread.OP.nodes.root.parentNode
|
||||||
thread.isHidden = true
|
thread.isHidden = true
|
||||||
ThreadHiding.updateToggle()
|
Index.updateHideToggle()
|
||||||
|
|
||||||
unless makeStub
|
unless makeStub
|
||||||
threadRoot.hidden = threadRoot.nextElementSibling.hidden = true # <hr>
|
threadRoot.hidden = threadRoot.nextElementSibling.hidden = true # <hr>
|
||||||
@ -194,4 +172,4 @@ ThreadHiding =
|
|||||||
threadRoot = thread.OP.nodes.root.parentNode
|
threadRoot = thread.OP.nodes.root.parentNode
|
||||||
threadRoot.nextElementSibling.hidden =
|
threadRoot.nextElementSibling.hidden =
|
||||||
threadRoot.hidden = thread.isHidden = false
|
threadRoot.hidden = thread.isHidden = false
|
||||||
ThreadHiding.updateToggle()
|
Index.updateHideToggle()
|
||||||
|
|||||||
@ -249,6 +249,29 @@ Index =
|
|||||||
$.before a, strong
|
$.before a, strong
|
||||||
$.add strong, a
|
$.add strong, a
|
||||||
|
|
||||||
|
updateHideToggle: ->
|
||||||
|
hiddenCount = 0
|
||||||
|
for threadID, thread of g.BOARD.threads when thread.isHidden
|
||||||
|
hiddenCount++ if thread.ID in Index.liveThreadIDs
|
||||||
|
unless hiddenCount
|
||||||
|
Index.removeHideToggle()
|
||||||
|
return
|
||||||
|
unless Index.toggler
|
||||||
|
Index.addHideToggle()
|
||||||
|
$('#hidden-count', Index.navLinks).textContent = if hiddenCount is 1
|
||||||
|
'1 hidden thread'
|
||||||
|
else
|
||||||
|
"#{hiddenCount} hidden threads"
|
||||||
|
addHideToggle: ->
|
||||||
|
Index.toggler = $.el 'span',
|
||||||
|
id: 'hidden-label'
|
||||||
|
innerHTML: ' — <span id="hidden-count"></span>'
|
||||||
|
$.add Index.navLinks, Index.toggler
|
||||||
|
removeHideToggle: ->
|
||||||
|
return unless Index.toggler
|
||||||
|
$.rm Index.toggler
|
||||||
|
delete Index.toggler
|
||||||
|
|
||||||
update: (pageNum) ->
|
update: (pageNum) ->
|
||||||
return unless navigator.onLine
|
return unless navigator.onLine
|
||||||
Index.req?.abort()
|
Index.req?.abort()
|
||||||
@ -367,6 +390,7 @@ Index =
|
|||||||
$.nodes Index.nodes
|
$.nodes Index.nodes
|
||||||
Main.callbackNodes Thread, threads
|
Main.callbackNodes Thread, threads
|
||||||
Main.callbackNodes Post, posts
|
Main.callbackNodes Post, posts
|
||||||
|
Index.updateHideToggle()
|
||||||
$.event 'IndexRefresh'
|
$.event 'IndexRefresh'
|
||||||
buildReplies: (threadRoots) ->
|
buildReplies: (threadRoots) ->
|
||||||
posts = []
|
posts = []
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user