animes & books page data is fetched auto now
This commit is contained in:
@@ -4,14 +4,16 @@ const fastify = require("fastify")({
|
||||
|
||||
const path = require("path");
|
||||
const jwt = require("jsonwebtoken");
|
||||
const cron = require("node-cron");
|
||||
const { initHeadless } = require("./electron/shared/headless");
|
||||
const { initDatabase } = require("./electron/shared/database");
|
||||
const { loadExtensions } = require("./electron/shared/extensions");
|
||||
const { init } = require("./electron/api/rpc/rpc.controller");
|
||||
const {refreshTrendingAnime, refreshTopAiringAnime} = require("./electron/api/anime/anime.service");
|
||||
const {refreshPopularBooks, refreshTrendingBooks} = require("./electron/api/books/books.service");
|
||||
|
||||
const dotenv = require("dotenv");
|
||||
|
||||
const isPackaged = process.env.IS_PACKAGED === "true";
|
||||
|
||||
const envPath = isPackaged
|
||||
? path.join(process.resourcesPath, ".env")
|
||||
: path.join(__dirname, ".env");
|
||||
@@ -102,6 +104,8 @@ fastify.register(userRoutes, { prefix: "/api" });
|
||||
fastify.register(anilistRoute, { prefix: "/api" });
|
||||
fastify.register(listRoutes, { prefix: "/api" });
|
||||
|
||||
const sleep = ms => new Promise(r => setTimeout(r, ms));
|
||||
|
||||
const start = async () => {
|
||||
try {
|
||||
initDatabase("anilist");
|
||||
@@ -110,12 +114,31 @@ const start = async () => {
|
||||
initDatabase("userdata");
|
||||
init();
|
||||
|
||||
const refreshAll = async () => {
|
||||
await refreshTrendingAnime();
|
||||
await sleep(300);
|
||||
await refreshTopAiringAnime();
|
||||
await sleep(300);
|
||||
await refreshTrendingBooks();
|
||||
await sleep(300);
|
||||
await refreshPopularBooks();
|
||||
};
|
||||
|
||||
cron.schedule("*/30 * * * *", async () => {
|
||||
try {
|
||||
await refreshAll();
|
||||
console.log("cache refreshed");
|
||||
} catch (e) {
|
||||
console.error("refresh failed", e);
|
||||
}
|
||||
});
|
||||
|
||||
await loadExtensions();
|
||||
await initHeadless();
|
||||
await refreshAll();
|
||||
|
||||
await fastify.listen({ port: 54322, host: "0.0.0.0" });
|
||||
console.log(`Server running at http://localhost:54322`);
|
||||
|
||||
await initHeadless();
|
||||
} catch (err) {
|
||||
fastify.log.error(err);
|
||||
process.exit(1);
|
||||
|
||||
Reference in New Issue
Block a user