poke/src/libpoketube/init/superinit.js

90 lines
2.7 KiB
JavaScript
Raw Normal View History

2023-03-02 20:57:20 +01:00
const { fetcher, core, wiki, musicInfo, modules, version, initlog } = require("../libpoketube-initsys.js");
const { IsJsonString, convert, getFirstLine, capitalizeFirstLetter, turntomins, getRandomInt, getRandomArbitrary } = require("../ptutils/libpt-coreutils.js");
2022-11-16 11:26:47 +01:00
const { api } = require("../init/pages-api.js");
2022-11-09 17:47:46 +01:00
function init(app, config, rendertemplate) {
2022-12-05 18:43:26 +01:00
var didstart = false;
2022-12-25 17:10:51 +01:00
2022-12-05 18:43:26 +01:00
initlog("wait a few mins... pt on timeout rn");
2022-11-16 11:26:47 +01:00
2022-12-05 18:43:26 +01:00
app.get("/*", function (req, res, next) {
2023-05-15 18:37:02 +02:00
if (didstart) return next();
2022-11-16 11:26:47 +01:00
2023-05-15 18:37:02 +02:00
return rendertemplate(res, req, "timeout.ejs");
2022-12-05 18:43:26 +01:00
});
2022-11-16 11:26:47 +01:00
2022-12-05 18:43:26 +01:00
setTimeout(function () {
didstart = true;
2022-11-16 11:26:47 +01:00
2022-12-05 18:43:26 +01:00
initlog("Starting superinit");
initlog("[START] Load pages");
if (Math.random() < 0.5) {
initlog("https://poketube.fun/watch?v=lpiB2wMc49g");
2022-11-16 11:26:47 +01:00
}
2022-12-05 18:43:26 +01:00
try {
initlog("Loading video pages ");
require("../init/pages-video.js")(app, config, rendertemplate);
initlog("Loaded video pages ");
initlog("Loading redirects/old pages ");
require("../init/pages-redir.js")(app, config, rendertemplate);
initlog("Loaded redirects/old pages ");
initlog("Loading Download and channel pages");
require("../init/pages-channel-and-download.js")(
app,
config,
rendertemplate
2022-11-16 11:26:47 +01:00
);
2022-12-05 18:43:26 +01:00
initlog("Loaded Download and channel pages");
initlog("Loading api pages");
require("../init/pages-api.js")(app, config, rendertemplate);
initlog("Loaded api pages");
initlog("Loading static pages");
require("../init/pages-static.js")(app, config, rendertemplate);
initlog("Loaded static pages");
initlog("Loading main pages");
require("../init/pages-404-and-main.js")(app, config, rendertemplate);
initlog("Loaded main pages");
initlog("[OK] Load pages");
initlog("Loaded pages - initing poketube finnished :3");
setTimeout(function () {
2023-01-31 11:47:34 +01:00
setInterval(function () {
/* PokeTube Update daemon - checks for updates in poketube */
(async () => {
2023-03-09 16:50:19 +01:00
const url = `https://poketube.fun/api/version.json?v=3`;
2023-01-31 11:47:34 +01:00
let f = await modules
.fetch(url)
.then((res) => res.text())
.then((json) => JSON.parse(json));
if (f.vernum == api) {
console.log("[UPDATE DAEMON] PokeTube is up to date!");
}
if (f.vernum != api) {
console.warn(
"[UPDATE DAEMON] PokeTube is out of date! please re-clone the poketube repo :p "
);
}
})();
2023-06-08 22:56:14 +02:00
}, 3500000); /* setInterval */
}, 3000000);
2022-12-05 18:43:26 +01:00
} catch (err) {
initlog("[FAILED] Load pages \n" + err);
2022-11-16 11:26:47 +01:00
}
2023-06-08 22:56:14 +02:00
}, 3000000);
2022-11-09 17:47:46 +01:00
}
module.exports = {
sinit: init,
};