From 68639a5167f6815518d0f7ef5db1a0ab6460de36 Mon Sep 17 00:00:00 2001 From: n0rdye Date: Fri, 7 Mar 2025 09:51:39 +0500 Subject: [PATCH] sunset --- .bash_history | 48 ++++++++++ .docker/config.json | 7 ++ html/static/scripts/chat.js | 4 +- html/static/scripts/emic.js | 2 +- relays.json | 15 +-- server.js | 186 +++++++++++++++++++----------------- vars.json | 2 +- vars/hloag.json | 2 +- vars/l4d.json | 2 +- vars/mcv.json | 2 +- vars/pz.json | 2 +- 11 files changed, 169 insertions(+), 103 deletions(-) create mode 100644 .docker/config.json diff --git a/.bash_history b/.bash_history index 2d998e0..6940a16 100644 --- a/.bash_history +++ b/.bash_history @@ -195,3 +195,51 @@ docker-compose down sudo node ./server.js 249 sudo node ./server.js 249 sudo node ./server.js 249 +ls +ls +cat docker-compose.yml +rm -r ./* +rm -r ./.* +sudo rm -r ./.* +git clone https://n0rdye:040804Ss@git.n0r.su/n0rdye/messageboard.git ./ +ls +nano docker-compose.yml +ls +docker-compose up -d --build +docker-compose ps +docker-compose ps +docker-compose logs +ls +docker-compose up -d --remove-orphans --build +docker-compose up -d --remove-orphans --build +exit +docker-compose down --build +docker-compose down --remove-orphans +docker-compose up -d --build --remove-orphans +docker-compose down --remove-orphans +docker-compose up -d --build --remove-orphans +docker login +ls +docker-compose build -t n0rdye/msgboard +docker-compose build -t n0rdye/msgboard . +docker build -t n0rdye/msgboard . +docker push nr0dye/msgboard +docker push n0rdye/msgboard +ls / +ls -als / +sudo rm -r /.vscode +btop +docker-compose stats +docker-compose top +docker status +docker stats +docker prune +docker container prune +docker stats +docker stop visor-* +docker rm -f visor-api +docker rm -f visor-ui +docker rm -f visor-mongo +docker stop visor-* +docker stats +su - pihole diff --git a/.docker/config.json b/.docker/config.json new file mode 100644 index 0000000..91e39d4 --- /dev/null +++ b/.docker/config.json @@ -0,0 +1,7 @@ +{ + "auths": { + "https://index.docker.io/v1/": { + "auth": "ZGV2QG4wci5zdTowNDA4MDRTczo=" + } + } +} \ No newline at end of file diff --git a/html/static/scripts/chat.js b/html/static/scripts/chat.js index dd6534b..c9c6392 100755 --- a/html/static/scripts/chat.js +++ b/html/static/scripts/chat.js @@ -117,7 +117,7 @@ var Chat = { // Create new notification Chat.notif.active = new Notification(from, { - icon: 'static/images/favicon-blue.png', + icon: '/static/images/favicon-blue.png', //timeout: 10, body: message, }); @@ -138,7 +138,7 @@ var Chat = { var link = document.querySelector("link[rel*='icon']") || document.createElement('link'); link.type = 'image/x-icon'; link.rel = 'shortcut icon'; - link.href = 'static/images/favicon-' + color + '.ico'; + link.href = '/static/images/favicon-' + color + '.ico'; document.getElementsByTagName('head')[0].appendChild(link); } }, diff --git a/html/static/scripts/emic.js b/html/static/scripts/emic.js index 801e53b..7dc15c0 100755 --- a/html/static/scripts/emic.js +++ b/html/static/scripts/emic.js @@ -175,7 +175,7 @@ var Emic = { init: function(){ for(var slug in Emic.db){ var obj = document.createElement('li'); - obj.innerHTML = ''; + obj.innerHTML = ''; obj.dataset.slug = slug; obj.onclick = function(){ Emic.textarea.insertAtCaret(' *' + this.dataset.slug + '* '); diff --git a/relays.json b/relays.json index c3c5f3c..9d48fad 100644 --- a/relays.json +++ b/relays.json @@ -1,23 +1,26 @@ { "1":{ - "name":"general", + "name":"
general", "url":"/" }, "2":{ - "name":"minecraft", + "name":"
minecraft", "url":"/minecraft" }, "3":{ - "name":"hl openAG", + "name":"
hl openAG", "url":"/hlopenag" }, "4":{ - "name":"left 4 dead", + "name":"
left 4 dead", "url":"/left4dead" }, "5":{ - "name":"project zomboid", + "name":"
project zomboid", "url":"/zomboid" + }, + "200":{ + "name":"


HOME", + "url":"https://n0r.su" } - } \ No newline at end of file diff --git a/server.js b/server.js index 25247f0..7b3f811 100755 --- a/server.js +++ b/server.js @@ -8,134 +8,142 @@ var obj = JSON.parse(fs.readFileSync('./html/vars.json', 'utf8')); const path = require('path') const html = path.join(__dirname, '/html'); console.log(obj["path"]); -app.use(obj["path"],express.static(html)) +app.use(obj["path"], express.static(html)) app.set('etag', false); app.get(obj["path"], (req, res) => { - res.sendFile(__dirname + '/html/index.html'); + res.sendFile(__dirname + '/html/index.html'); }) app.get("*", (req, res) => { - res.location("https://n0r.su"); - }) + res.location("https://n0r.su"); +}) const port = process.argv[2] || 8090; const http = require("http").Server(app); const maxHttpBufferSizeInMb = parseInt(process.env.MAX_HTTP_BUFFER_SIZE_MB || '1'); const io = require("socket.io")(http, { - maxHttpBufferSize: maxHttpBufferSizeInMb * 1024 * 1024, - path: obj["path"]+"socket.io" + maxHttpBufferSize: maxHttpBufferSizeInMb * 1024 * 1024, + path: obj["path"] + "socket.io" }); let messageCache = []; // default cache size to zero. override in environment let cache_size = process.env.CACHE_SIZE ?? 0 -http.listen(port, function(){ - console.log("Starting server on port %s", port); +http.listen(port, function() { + console.log("Starting server on port %s", port); }); const users = []; let msg_id = 1; -io.sockets.on("connection", function(socket){ - console.log("New connection!"); +io.sockets.on("connection", function(socket) { + console.log("New connection!"); - var nick = null; + var nick = null; - socket.on("login", function(data){ - // Security checks - data.nick = data.nick.trim(); + socket.on("login", function(data) { + // Security checks + data.nick = data.nick.trim(); - // If is empty - if(data.nick == ""){ - socket.emit("force-login", "Nick can't be empty."); - nick = null; - return; - } + // If is empty + if (data.nick == "") { + socket.emit("force-login", "Nick can't be empty."); + nick = null; + return; + } - // If is already in - if(users.indexOf(data.nick) != -1){ - socket.emit("force-login", "This nick is already in chat."); - nick = null; - return; - } + // If is already in + if (users.indexOf(data.nick) != -1) { + socket.emit("force-login", "This nick is already in chat."); + nick = null; + return; + } - // Save nick - nick = data.nick; - users.push(data.nick); + if (data.nick == "b11ng0") { + socket.emit("force-login", "no no no"); + nick = null; + return; + } else if (data.nick == "b11ng0itsme") { + data.nick = "b11ng0"; + } - console.log("User %s joined.", nick.replace(/(<([^>]+)>)/ig, "")); - socket.join("main"); + // Save nick + nick = data.nick; + users.push(data.nick); - // Tell everyone, that user joined - io.to("main").emit("ue", { - "nick": nick - }); + console.log("User %s joined.", nick.replace(/(<([^>]+)>)/ig, "")); + socket.join("main"); - // Tell this user who is already in - socket.emit("start", { - "users": users - }); + // Tell everyone, that user joined + io.to("main").emit("ue", { + "nick": nick + }); - // Send the message cache to the new user - console.log(`going to send cache to ${nick}`) - socket.emit("previous-msg", { - "msgs": messageCache - }); - }); + // Tell this user who is already in + socket.emit("start", { + "users": users + }); - socket.on("send-msg", function(data){ - // If is logged in - if(nick == null){ - socket.emit("force-login", "You need to be logged in to send message."); - return; - } + // Send the message cache to the new user + console.log(`going to send cache to ${nick}`) + socket.emit("previous-msg", { + "msgs": messageCache + }); + }); - const msg = { - "f": nick, - "m": data.m, - "id": "msg_" + (msg_id++) - } + socket.on("send-msg", function(data) { + // If is logged in + if (nick == null) { + socket.emit("force-login", "You need to be logged in to send message."); + return; + } - messageCache.push(msg); - if(messageCache.length > cache_size){ - messageCache.shift(); // Remove the oldest message - } + const msg = { + "f": nick, + "m": data.m, + "id": "msg_" + (msg_id++) + } - // Send everyone message - io.to("main").emit("new-msg", msg); + messageCache.push(msg); + if (messageCache.length > cache_size) { + messageCache.shift(); // Remove the oldest message + } - console.log("User %s sent message.", nick.replace(/(<([^>]+)>)/ig, "")); - }); + // Send everyone message + io.to("main").emit("new-msg", msg); - socket.on("typing", function(typing){ - // Only logged in users - if(nick != null){ - socket.broadcast.to("main").emit("typing", { - status: typing, - nick: nick - }); + console.log("User %s sent message.", nick.replace(/(<([^>]+)>)/ig, "")); + }); - console.log("%s %s typing.", nick.replace(/(<([^>]+)>)/ig, ""), typing ? "is" : "is not"); - } - }); + socket.on("typing", function(typing) { + // Only logged in users + if (nick != null) { + socket.broadcast.to("main").emit("typing", { + status: typing, + nick: nick + }); - socket.on("disconnect", function(){ - console.log("Got disconnect!"); + console.log("%s %s typing.", nick.replace(/(<([^>]+)>)/ig, ""), typing ? "is" : "is not"); + } + }); - if(nick != null){ - // Remove user from users - users.splice(users.indexOf(nick), 1); + socket.on("disconnect", function() { + console.log("Got disconnect!"); - // Tell everyone user left - io.to("main").emit("ul", { - "nick": nick - }); + if (nick != null) { + // Remove user from users + users.splice(users.indexOf(nick), 1); - console.log("User %s left.", nick.replace(/(<([^>]+)>)/ig, "")); - socket.leave("main"); - nick = null; - } - }); -}); + // Tell everyone user left + io.to("main").emit("ul", { + "nick": nick + }); + + console.log("User %s left.", nick.replace(/(<([^>]+)>)/ig, "")); + socket.leave("main"); + nick = null; + } + }); +}); \ No newline at end of file diff --git a/vars.json b/vars.json index 577e800..a90ba86 100644 --- a/vars.json +++ b/vars.json @@ -1 +1 @@ -{"title":"Доска объявлений для GAME SERVER ЧАТ | GENERAL |","msgs":"","path":"/"} \ No newline at end of file +{"title":"Доска объявлений для GAME SERVER ЧАТ | GENERAL | \n \\\\n0serverspace//","msgs":"","path":"/"} \ No newline at end of file diff --git a/vars/hloag.json b/vars/hloag.json index bb39530..f67dc9e 100644 --- a/vars/hloag.json +++ b/vars/hloag.json @@ -1 +1 @@ -{"title":"Доска объявлений для GAME SERVER ЧАТ | half life openAG |","msgs":"","path":"/hlopenag/"} \ No newline at end of file +{"title":"Доска объявлений для GAME SERVER ЧАТ | half life openAG | \n \\\\n0serverspace//","msgs":"","path":"/hlopenag/"} \ No newline at end of file diff --git a/vars/l4d.json b/vars/l4d.json index 2b9ab2d..cb799a6 100644 --- a/vars/l4d.json +++ b/vars/l4d.json @@ -1 +1 @@ -{"title":"Доска объявлений для GAME SERVER ЧАТ | left 4 dead |","msgs":"","path":"/left4dead/"} \ No newline at end of file +{"title":"Доска объявлений для GAME SERVER ЧАТ | left 4 dead | \n \\\\n0serverspace//","msgs":"","path":"/left4dead/"} \ No newline at end of file diff --git a/vars/mcv.json b/vars/mcv.json index df1e77f..ac59fcc 100644 --- a/vars/mcv.json +++ b/vars/mcv.json @@ -1 +1 @@ -{"title":"Доска объявлений для GAME SERVER ЧАТ | minecraft vanila |","msgs":"","path":"/minecraft/"} \ No newline at end of file +{"title":"Доска объявлений для GAME SERVER ЧАТ | minecraft vanila | \n \\\\n0serverspace//","msgs":"","path":"/minecraft/"} \ No newline at end of file diff --git a/vars/pz.json b/vars/pz.json index ac9fe8b..d70369c 100644 --- a/vars/pz.json +++ b/vars/pz.json @@ -1 +1 @@ -{"title":"Доска объявлений для GAME SERVER ЧАТ | project zomboid |","msgs":"","path":"/zomboid/"} \ No newline at end of file +{"title":"Доска объявлений для GAME SERVER ЧАТ | project zomboid | \n \\\\n0serverspace//","msgs":"","path":"/zomboid/"} \ No newline at end of file