diff --git a/.dockerignore b/.dockerignore index 73a25a7..2af4c5e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -26,7 +26,11 @@ **/values.dev.yaml **/build **/dist -public/css/*.css -public/courses/*.txt LICENSE README.md + +data/main_db.json +data/test_db.json +stack.env +public/css/*.css +public/courses/*.txt diff --git a/.gitignore b/.gitignore index 714b14b..9cabe0c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,9 @@ # Custom +stack.env public/css/* public/courses/* data/* -!data/main_db.json +!data/main_db.example.json # Logs logs diff --git a/Dockerfile b/Dockerfile index cb08123..5a20af3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,6 +51,8 @@ COPY . . RUN pnpm run build # This project specific +RUN mv stack.env.example stack.env +RUN mv data/main_db.example.json data/main_db.json RUN chmod -R 777 data/ RUN chmod -R 777 public/ # End diff --git a/config.js b/config.js index ebc36bc..94215ad 100644 --- a/config.js +++ b/config.js @@ -1,4 +1,6 @@ -require("dotenv").config(); +require("dotenv").config({ + path: "stack.env", +}); module.exports = { /* Set true for production database */ @@ -17,4 +19,4 @@ module.exports = { cookieSecret: process.env.COOKIE || "", /* Discord webhook url or leave empty */ webhook_url: process.env.WEBHOOK || "", -}; \ No newline at end of file +}; diff --git a/data/main_db.example.json b/data/main_db.example.json new file mode 100644 index 0000000..c20988b --- /dev/null +++ b/data/main_db.example.json @@ -0,0 +1,12 @@ +{ + "admins": { + "YOUR_STEAMID64": true + }, + "keys": {}, + "courses": {}, + "locked": {}, + "rating": {}, + "records": {}, + "usernames": {}, + "ratelimits": {} +} \ No newline at end of file diff --git a/routes/index.js b/routes/index.js index d35d695..128e33b 100644 --- a/routes/index.js +++ b/routes/index.js @@ -21,10 +21,10 @@ router.get("/", async (req, res) => { /* Pages Count */ const coursesCount = Object.keys(courses).length; const pagesCount = Math.max(Math.ceil(coursesCount / 20), 0); - if (page === "Page") page = 1; if (page * 20 - coursesCount >= 20) page = 1; + /* Pages Dropdown */ let pagesDropdown = ""; for (let i = 1; i <= pagesCount; i++) { @@ -118,7 +118,7 @@ router.get("/", async (req, res) => { plays: "DESC", }; - if (sortType === "none" || sortType === "Sort") + if (sortType === "none" || sortType === "Sort by") sortedCodesData = codesData.sort((a, b) => { return b.time - a.time; }); diff --git a/stack.env.example b/stack.env.example new file mode 100644 index 0000000..ab9dc98 --- /dev/null +++ b/stack.env.example @@ -0,0 +1,8 @@ +PROD=true +DOMAIN=http://localhost:6547 +PORT=6547 +RATELIMIT=5000 +IPCHANGETIME=10800000 +STEAMKEY=NO_KEY +COOKIE=NO_COOKIE +WEBHOOK="" \ No newline at end of file