Rebuild the pagelist when searching.
This commit is contained in:
parent
ac7b7661ca
commit
07bca42d63
@ -117,31 +117,39 @@ Index =
|
|||||||
Index.setPage()
|
Index.setPage()
|
||||||
Index.scrollToIndex()
|
Index.scrollToIndex()
|
||||||
|
|
||||||
|
getPagesNum: ->
|
||||||
|
if Index.isSearching
|
||||||
|
Math.ceil (Index.sortedNodes.length / 2) / Index.threadsNumPerPage
|
||||||
|
else
|
||||||
|
Index.pagesNum
|
||||||
|
getMaxPageNum: ->
|
||||||
|
Math.max 0, Index.getPagesNum() - 1
|
||||||
togglePagelist: ->
|
togglePagelist: ->
|
||||||
Index.pagelist.hidden = Conf['Index Mode'] isnt 'paged'
|
Index.pagelist.hidden = Conf['Index Mode'] isnt 'paged'
|
||||||
buildPagelist: ->
|
buildPagelist: ->
|
||||||
pagesRoot = $ '.pages', Index.pagelist
|
pagesRoot = $ '.pages', Index.pagelist
|
||||||
if pagesRoot.childElementCount isnt Index.pagesNum
|
maxPageNum = Index.getMaxPageNum()
|
||||||
|
if pagesRoot.childElementCount isnt maxPageNum + 1
|
||||||
nodes = []
|
nodes = []
|
||||||
for i in [0..Index.pagesNum - 1]
|
for i in [0..maxPageNum] by 1
|
||||||
a = $.el 'a',
|
a = $.el 'a',
|
||||||
textContent: i
|
textContent: i
|
||||||
href: if i then i else './'
|
href: if i then i else './'
|
||||||
nodes.push $.tn('['), a, $.tn '] '
|
nodes.push $.tn('['), a, $.tn '] '
|
||||||
$.rmAll pagesRoot
|
$.rmAll pagesRoot
|
||||||
$.add pagesRoot, nodes
|
$.add pagesRoot, nodes
|
||||||
Index.setPage()
|
|
||||||
Index.togglePagelist()
|
Index.togglePagelist()
|
||||||
setPage: ->
|
setPage: ->
|
||||||
pageNum = Index.getCurrentPage()
|
pageNum = Index.getCurrentPage()
|
||||||
pagesRoot = $ '.pages', Index.pagelist
|
maxPageNum = Index.getMaxPageNum()
|
||||||
|
pagesRoot = $ '.pages', Index.pagelist
|
||||||
# Previous/Next buttons
|
# Previous/Next buttons
|
||||||
prev = pagesRoot.previousSibling.firstChild
|
prev = pagesRoot.previousSibling.firstChild
|
||||||
next = pagesRoot.nextSibling.firstChild
|
next = pagesRoot.nextSibling.firstChild
|
||||||
href = Math.max pageNum - 1, 0
|
href = Math.max pageNum - 1, 0
|
||||||
prev.href = if href is 0 then './' else href
|
prev.href = if href is 0 then './' else href
|
||||||
prev.firstChild.disabled = href is pageNum
|
prev.firstChild.disabled = href is pageNum
|
||||||
href = Math.min pageNum + 1, Index.pagesNum - 1
|
href = Math.min pageNum + 1, maxPageNum
|
||||||
next.href = if href is 0 then './' else href
|
next.href = if href is 0 then './' else href
|
||||||
next.firstChild.disabled = href is pageNum
|
next.firstChild.disabled = href is pageNum
|
||||||
# <strong> current page
|
# <strong> current page
|
||||||
@ -218,6 +226,7 @@ Index =
|
|||||||
Index.sort()
|
Index.sort()
|
||||||
Index.buildIndex()
|
Index.buildIndex()
|
||||||
Index.buildPagelist()
|
Index.buildPagelist()
|
||||||
|
Index.setPage()
|
||||||
parseThreadList: (pages) ->
|
parseThreadList: (pages) ->
|
||||||
Index.pagesNum = pages.length
|
Index.pagesNum = pages.length
|
||||||
Index.threadsNumPerPage = pages[0].threads.length
|
Index.threadsNumPerPage = pages[0].threads.length
|
||||||
@ -334,6 +343,8 @@ Index =
|
|||||||
Index.searchInput.dataset.searching = 1
|
Index.searchInput.dataset.searching = 1
|
||||||
Index.pageBeforeSearch = Index.getCurrentPage()
|
Index.pageBeforeSearch = Index.getCurrentPage()
|
||||||
pageNum = 0
|
pageNum = 0
|
||||||
|
else
|
||||||
|
pageNum = Index.getCurrentPage()
|
||||||
else
|
else
|
||||||
pageNum = Index.pageBeforeSearch
|
pageNum = Index.pageBeforeSearch
|
||||||
delete Index.pageBeforeSearch
|
delete Index.pageBeforeSearch
|
||||||
@ -344,8 +355,12 @@ Index =
|
|||||||
delete Index.searchInput.dataset.searching
|
delete Index.searchInput.dataset.searching
|
||||||
<% } %>
|
<% } %>
|
||||||
Index.sort()
|
Index.sort()
|
||||||
|
# Go to the last available page if we were past the limit.
|
||||||
|
pageNum = Math.min pageNum, Index.getMaxPageNum() if Conf['Index Mode'] is 'paged'
|
||||||
|
Index.buildPagelist()
|
||||||
if Index.currentPage is pageNum
|
if Index.currentPage is pageNum
|
||||||
Index.buildIndex()
|
Index.buildIndex()
|
||||||
|
Index.setPage()
|
||||||
else
|
else
|
||||||
Index.pageNav pageNum
|
Index.pageNav pageNum
|
||||||
querySearch: (query) ->
|
querySearch: (query) ->
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user