Don't prune data for threads on kissu.moe while they're in the archive.

This commit is contained in:
ccd0 2019-12-12 18:40:05 -08:00
parent 334f7e2a52
commit aca7ed0a55
3 changed files with 20 additions and 6 deletions

View File

@ -138,11 +138,20 @@ class DataBoard
$.cache threadsList, ->
return unless @status is 200
archiveList = g.SITE.urls.archiveListJSON?({siteID, boardID})
return that.ajaxCleanParse(boardID, @response) unless archiveList
archiveListHTML = g.SITE.urls.archive?({siteID, boardID})
response1 = @response
$.cache archiveList, ->
return unless @status is 200
that.ajaxCleanParse(boardID, response1, @response)
if archiveList
$.cache archiveList, ->
return unless @status is 200
that.ajaxCleanParse(boardID, response1, @response)
else if g.SITE.archiveListParse and archiveListHTML
$.cache archiveListHTML, ->
return unless @status is 200 or @status is 404
response2 = if @status is 404 then [] else g.SITE.archiveListParse(@response)
that.ajaxCleanParse(boardID, response1, response2)
, {responseType: 'document'}
else
that.ajaxCleanParse(boardID, @response)
ajaxCleanParse: (boardID, response1, response2) ->
siteID = g.SITE.ID

View File

@ -208,7 +208,7 @@ $.whenModified = (url, bucket, cb, options={}) ->
do ->
reqs = $.dict()
$.cache = (url, cb, options={}) ->
{ajax} = options
{ajax, responseType} = options
if (req = reqs[url])
if req.callbacks
req.callbacks.push cb
@ -221,7 +221,7 @@ do ->
for cb in @callbacks
do (cb) => $.queueTask => cb.call @, {isCached: false}
delete @callbacks
req = (ajax or $.ajax) url, {onloadend}
req = (ajax or $.ajax) url, {onloadend, responseType}
req.callbacks = [cb]
reqs[url] = req
$.cleanCache = (testf) ->

View File

@ -45,6 +45,7 @@ SW.tinyboard =
post: ({postID}) -> "##{postID}"
index: ({siteID, boardID}) -> "#{Conf['siteProperties'][siteID]?.root or "http://#{siteID}/"}#{boardID}/"
catalog: ({siteID, boardID}) -> "#{Conf['siteProperties'][siteID]?.root or "http://#{siteID}/"}#{boardID}/catalog.html"
archive: ({siteID, boardID}) -> "#{Conf['siteProperties'][siteID]?.root or "http://#{siteID}/"}#{boardID}/archive/"
threadJSON: ({siteID, boardID, threadID}) ->
root = Conf['siteProperties'][siteID]?.root
if root then "#{root}#{boardID}/res/#{threadID}.json" else ''
@ -107,6 +108,7 @@ SW.tinyboard =
nav:
prev: '.pages > form > [value=Previous]'
next: '.pages > form > [value=Next]'
archiveThreadID: '#archive-list td:first-of-type'
classes:
highlight: 'highlighted'
@ -206,3 +208,6 @@ SW.tinyboard =
catalogPin: (threadRoot) ->
threadRoot.dataset.sticky = 'true'
archiveListParse: (response) ->
$$(SW.tinyboard.selectors.archiveThreadID, response).map((x) -> +x.textContent)