diff --git a/index.js b/index.js index b1822fa..6f1a066 100644 --- a/index.js +++ b/index.js @@ -23,6 +23,29 @@ app.listen(PORT, () => { console.log("Now listening on PORT: " + PORT) }) +app.get("/api/v1/randomIMG*", (req, res) => { + var folder = req.params[0] + var dirContent = fs.readdirSync(path.join(directory, folder)) + + var files = [] + var imageFormats = [".png", ".jpg", ".jpeg", ".webp"] + for (let index = 0; index < dirContent.length; index++) { + const file = dirContent[index]; + for (let index = 0; index < imageFormats.length; index++) { + const extension = imageFormats[index]; + if (file.includes(extension)) { + files.push(file) + break + } + } + } + if (files.length > 0) { + res.redirect(path.join('/', folder, files[Math.floor(Math.random() * files.length)])) + } else { + res.send("No Images in this directory") + } +}) + app.get("/*", (req, res) => { var file = req.params[0] var absPath = path.join(directory, file) @@ -32,11 +55,11 @@ app.get("/*", (req, res) => { try { var dirContents = fs.readdirSync(absPath) } catch (error) { - res.send(baseStart + "

404: not found!

" + baseEnd) + res.send(baseStart.replace("{TITLE}", "404: not found!") + "

404: not found!

" + baseEnd) return } - res.write(baseStart) + res.write(baseStart.replace("{TITLE}", '/' + file)) if (file != '') { res.write('Parent Directory
') diff --git a/resources/base.html b/resources/base.html index f876865..9aaedd0 100644 --- a/resources/base.html +++ b/resources/base.html @@ -4,7 +4,7 @@ - Document + {TITLE} {CONTENT} diff --git a/test.png b/test.png new file mode 100644 index 0000000..e69de29