License system implemented

This commit is contained in:
2024-11-25 18:55:28 +01:00
parent 1b0f48d374
commit 2e15d4a960
22 changed files with 313 additions and 18 deletions

View File

@@ -1,7 +1,8 @@
import { Request, Response, NextFunction, Router } from 'express'
import fs from "fs"
import fs, { createReadStream } from "fs"
import multer from "multer"
const upload = multer({ dest: './backend/images/' })
import licenses from "../data/licenses.json"
export const files = Router()
@@ -32,17 +33,20 @@ files.get("/:folder", async (req: Request, res: Response) => {
let result = []
let fileNames = fs.readdirSync("./backend/images/" + req.params.folder + "/")
fileNames.forEach(file => {
let resData = fs.readFileSync("./backend/images/" + req.params.folder + "/" + file, "utf8")
let resData = ""
let url = "http://localhost:3000/static/" + req.params.folder + "/" + file
if (file.endsWith("html") || file.endsWith("js")) {
resData = fs.readFileSync("./backend/images/" + req.params.folder + "/" + file, "utf8")
}
// todo License, Author, URL
result.push({
name: file,
size: fs.statSync("./backend/images/" + req.params.folder + "/" + file).size,
content: resData,
url: "http://localhost:3000/static/" + req.params.folder + "/" + file,
url: url,
copyright: licenses.find(data => data.image == file)
})
})