diff --git a/api/subscriptions.js b/api/subscriptions.js index 6c44aaf..b92887c 100644 --- a/api/subscriptions.js +++ b/api/subscriptions.js @@ -20,7 +20,7 @@ module.exports = [ channels = db.prepare(`SELECT Channels.* FROM Channels INNER JOIN Subscriptions ON Channels.ucid = Subscriptions.ucid WHERE token = ? ORDER BY name`).all(user.token) missingChannelCount = channels.reduce((a, c) => a + c.missing, 0) // get refreshed status - refreshed = db.prepare(`SELECT min(refreshed) as min, max(refreshed) as max, count(refreshed) as count FROM Channels INNER JOIN Subscriptions ON Channels.ucid = Subscriptions.ucid WHERE token = ? AND missing = 0`).get(user.token) + refreshed = db.prepare(`SELECT min(refreshed) as min, max(refreshed) as max, count(refreshed) as count FROM Channels INNER JOIN Subscriptions ON Channels.ucid = Subscriptions.ucid WHERE token = ?`).get(user.token) // get watched videos const watchedVideos = user.getWatchedVideos() // get videos diff --git a/background/feed-update.js b/background/feed-update.js index 9cc5a5e..6e46cfc 100644 --- a/background/feed-update.js +++ b/background/feed-update.js @@ -35,7 +35,7 @@ class RefreshQueue { // get the next set of scheduled channels to refresh const afterTime = Date.now() - constants.caching.seen_token_subscriptions_eligible const channels = db.prepare( - "SELECT DISTINCT Subscriptions.ucid FROM SeenTokens INNER JOIN Subscriptions ON SeenTokens.token = Subscriptions.token INNER JOIN Channels ON Channels.ucid = Subscriptions.ucid WHERE Channels.missing = 0 AND SeenTokens.seen > ? ORDER BY SeenTokens.seen DESC, Channels.refreshed ASC" + "SELECT DISTINCT Subscriptions.ucid FROM SeenTokens INNER JOIN Subscriptions ON SeenTokens.token = Subscriptions.token INNER JOIN Channels ON Channels.ucid = Subscriptions.ucid WHERE Channels.missing = 0 AND SeenTokens.seen > ? ORDER BY SeenTokens.seen DESC" ).pluck().all(afterTime) this.addLast(channels) this.lastLoadTime = Date.now() diff --git a/utils/request.js b/utils/request.js index 6f535db..3b94c53 100644 --- a/utils/request.js +++ b/utils/request.js @@ -2,32 +2,12 @@ // @ts-ignore const fetch = require("node-fetch") -async function request(url, options = {}) { +function request(url, options = {}) { if (!options.headers) options.headers = {} options.headers = { "user-agent": "CloudTubeBackend/1.0" } - const res = await fetch(url, options) - - if (res.status >= 400) { - if (res.status == 500) { - let body = await res.text(); - - const traceback_start = '
';
-			const traceback_end = '
'; - - const si = body.indexOf(traceback_start) - if (si >= 0) body = body.slice(si + traceback_start.length); - - const ei = body.indexOf(traceback_end) - if (ei >= 0) body = body.slice(0, ei); - - throw new Error(`Unexpected error in backend:\n\n${body}`); - } else { - throw new Error(`Unexpected response from backend: ${res.status} ${res.statusText}`); - } - } - return res + return fetch(url, options) } module.exports.request = request