Cache boards.json

This commit is contained in:
Zixaphir 2014-02-28 18:28:47 -07:00
parent b4d28414df
commit 5a76a9109c
4 changed files with 20 additions and 46 deletions

View File

@ -3239,8 +3239,7 @@
Index.pageNav(pageNum); Index.pageNav(pageNum);
return; return;
} }
Index.buildIndex(); return Index.buildIndex();
return Index.setPage();
}, },
parseThreadList: function(pages) { parseThreadList: function(pages) {
Index.threadsNumPerPage = pages[0].threads.length; Index.threadsNumPerPage = pages[0].threads.length;
@ -3250,7 +3249,7 @@
Index.liveThreadIDs = Index.liveThreadData.map(function(data) { Index.liveThreadIDs = Index.liveThreadData.map(function(data) {
return data.no; return data.no;
}); });
g.BOARD.threads.forEach(function(thread) { return g.BOARD.threads.forEach(function(thread) {
var _ref; var _ref;
if (_ref = thread.ID, __indexOf.call(Index.liveThreadIDs, _ref) < 0) { if (_ref = thread.ID, __indexOf.call(Index.liveThreadIDs, _ref) < 0) {
return thread.collect(); return thread.collect();
@ -12851,23 +12850,20 @@
}[g.VIEW](); }[g.VIEW]();
}, },
updateBoard: function(boardID) { updateBoard: function(boardID) {
var fullBoardList, onload, req; var fullBoardList;
fullBoardList = $('#full-board-list', Header.boardList); fullBoardList = $('#full-board-list', Header.boardList);
$.rmClass($('.current', fullBoardList), 'current'); $.rmClass($('.current', fullBoardList), 'current');
$.addClass($("a[href*='/" + boardID + "/']", fullBoardList), 'current'); $.addClass($("a[href*='/" + boardID + "/']", fullBoardList), 'current');
Header.generateBoardList(Conf['boardnav'].replace(/(\r\n|\n|\r)/g, ' ')); Header.generateBoardList(Conf['boardnav'].replace(/(\r\n|\n|\r)/g, ' '));
QR.flagsInput(); QR.flagsInput();
onload = function(e) { return $.cache('//a.4cdn.org/boards.json', function(_arg) {
var aboard, board, err, _i, _len, _ref; var aboard, board, err, target, _i, _len, _ref;
if (e.type === 'abort') { target = _arg.target;
req.onloadend = null; if (target.status !== 200) {
return;
}
if (req.status !== 200) {
return; return;
} }
try { try {
_ref = req.response.boards; _ref = target.response.boards;
for (_i = 0, _len = _ref.length; _i < _len; _i++) { for (_i = 0, _len = _ref.length; _i < _len; _i++) {
aboard = _ref[_i]; aboard = _ref[_i];
if (!(aboard.board === boardID)) { if (!(aboard.board === boardID)) {
@ -12891,10 +12887,6 @@
} }
Navigate.updateTitle(board); Navigate.updateTitle(board);
return Navigate.updateSFW(!!board.ws_board); return Navigate.updateSFW(!!board.ws_board);
};
return req = $.ajax('//a.4cdn.org/boards.json', {
onabort: onload,
onloadend: onload
}); });
}, },
updateSFW: function(sfw) { updateSFW: function(sfw) {

View File

@ -3290,8 +3290,7 @@
Index.pageNav(pageNum); Index.pageNav(pageNum);
return; return;
} }
Index.buildIndex(); return Index.buildIndex();
return Index.setPage();
}, },
parseThreadList: function(pages) { parseThreadList: function(pages) {
Index.threadsNumPerPage = pages[0].threads.length; Index.threadsNumPerPage = pages[0].threads.length;
@ -3301,7 +3300,7 @@
Index.liveThreadIDs = Index.liveThreadData.map(function(data) { Index.liveThreadIDs = Index.liveThreadData.map(function(data) {
return data.no; return data.no;
}); });
g.BOARD.threads.forEach(function(thread) { return g.BOARD.threads.forEach(function(thread) {
var _ref; var _ref;
if (_ref = thread.ID, __indexOf.call(Index.liveThreadIDs, _ref) < 0) { if (_ref = thread.ID, __indexOf.call(Index.liveThreadIDs, _ref) < 0) {
return thread.collect(); return thread.collect();
@ -12857,23 +12856,20 @@
}[g.VIEW](); }[g.VIEW]();
}, },
updateBoard: function(boardID) { updateBoard: function(boardID) {
var fullBoardList, onload, req; var fullBoardList;
fullBoardList = $('#full-board-list', Header.boardList); fullBoardList = $('#full-board-list', Header.boardList);
$.rmClass($('.current', fullBoardList), 'current'); $.rmClass($('.current', fullBoardList), 'current');
$.addClass($("a[href*='/" + boardID + "/']", fullBoardList), 'current'); $.addClass($("a[href*='/" + boardID + "/']", fullBoardList), 'current');
Header.generateBoardList(Conf['boardnav'].replace(/(\r\n|\n|\r)/g, ' ')); Header.generateBoardList(Conf['boardnav'].replace(/(\r\n|\n|\r)/g, ' '));
QR.flagsInput(); QR.flagsInput();
onload = function(e) { return $.cache('//a.4cdn.org/boards.json', function(_arg) {
var aboard, board, err, _i, _len, _ref; var aboard, board, err, target, _i, _len, _ref;
if (e.type === 'abort') { target = _arg.target;
req.onloadend = null; if (target.status !== 200) {
return;
}
if (req.status !== 200) {
return; return;
} }
try { try {
_ref = req.response.boards; _ref = target.response.boards;
for (_i = 0, _len = _ref.length; _i < _len; _i++) { for (_i = 0, _len = _ref.length; _i < _len; _i++) {
aboard = _ref[_i]; aboard = _ref[_i];
if (!(aboard.board === boardID)) { if (!(aboard.board === boardID)) {
@ -12897,10 +12893,6 @@
} }
Navigate.updateTitle(board); Navigate.updateTitle(board);
return Navigate.updateSFW(!!board.ws_board); return Navigate.updateSFW(!!board.ws_board);
};
return req = $.ajax('//a.4cdn.org/boards.json', {
onabort: onload,
onloadend: onload
}); });
}, },
updateSFW: function(sfw) { updateSFW: function(sfw) {

View File

@ -562,7 +562,6 @@ Index =
Index.pageNav pageNum Index.pageNav pageNum
return return
Index.buildIndex() Index.buildIndex()
Index.setPage()
parseThreadList: (pages) -> parseThreadList: (pages) ->
Index.threadsNumPerPage = pages[0].threads.length Index.threadsNumPerPage = pages[0].threads.length
@ -570,7 +569,6 @@ Index =
Index.liveThreadIDs = Index.liveThreadData.map (data) -> data.no Index.liveThreadIDs = Index.liveThreadData.map (data) -> data.no
g.BOARD.threads.forEach (thread) -> g.BOARD.threads.forEach (thread) ->
thread.collect() unless thread.ID in Index.liveThreadIDs thread.collect() unless thread.ID in Index.liveThreadIDs
return
buildThreads: -> buildThreads: ->
Index.nodes = [] Index.nodes = []

View File

@ -117,15 +117,11 @@ Navigate =
QR.flagsInput() QR.flagsInput()
onload = (e) -> $.cache '//a.4cdn.org/boards.json', ({target}) ->
if e.type is 'abort' return unless target.status is 200
req.onloadend = null
return
return unless req.status is 200
try try
for aboard in req.response.boards when aboard.board is boardID for aboard in target.response.boards when aboard.board is boardID
board = aboard board = aboard
break break
@ -140,10 +136,6 @@ Navigate =
Navigate.updateTitle board Navigate.updateTitle board
Navigate.updateSFW !!board.ws_board Navigate.updateSFW !!board.ws_board
req = $.ajax '//a.4cdn.org/boards.json',
onabort: onload
onloadend: onload
updateSFW: (sfw) -> updateSFW: (sfw) ->
# TODO: think of a better name for this. Changes style, too. # TODO: think of a better name for this. Changes style, too.
Favicon.el.href = "//s.4cdn.org/image/favicon#{if sfw then '-ws' else ''}.ico" Favicon.el.href = "//s.4cdn.org/image/favicon#{if sfw then '-ws' else ''}.ico"