Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
68639a5167 |
|
@ -195,3 +195,51 @@ docker-compose down
|
||||||
sudo node ./server.js 249
|
sudo node ./server.js 249
|
||||||
sudo node ./server.js 249
|
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
|
||||||
|
|
7
.docker/config.json
Normal file
7
.docker/config.json
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"auths": {
|
||||||
|
"https://index.docker.io/v1/": {
|
||||||
|
"auth": "ZGV2QG4wci5zdTowNDA4MDRTczo="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -117,7 +117,7 @@ var Chat = {
|
||||||
|
|
||||||
// Create new notification
|
// Create new notification
|
||||||
Chat.notif.active = new Notification(from, {
|
Chat.notif.active = new Notification(from, {
|
||||||
icon: 'static/images/favicon-blue.png',
|
icon: '/static/images/favicon-blue.png',
|
||||||
//timeout: 10,
|
//timeout: 10,
|
||||||
body: message,
|
body: message,
|
||||||
});
|
});
|
||||||
|
@ -138,7 +138,7 @@ var Chat = {
|
||||||
var link = document.querySelector("link[rel*='icon']") || document.createElement('link');
|
var link = document.querySelector("link[rel*='icon']") || document.createElement('link');
|
||||||
link.type = 'image/x-icon';
|
link.type = 'image/x-icon';
|
||||||
link.rel = 'shortcut 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);
|
document.getElementsByTagName('head')[0].appendChild(link);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -175,7 +175,7 @@ var Emic = {
|
||||||
init: function(){
|
init: function(){
|
||||||
for(var slug in Emic.db){
|
for(var slug in Emic.db){
|
||||||
var obj = document.createElement('li');
|
var obj = document.createElement('li');
|
||||||
obj.innerHTML = '<img src="static/emic/' + slug + '.png" width="28px" height="28px" style="vertical-align:middle;">';
|
obj.innerHTML = '<img src="/static/emic/' + slug + '.png" width="28px" height="28px" style="vertical-align:middle;">';
|
||||||
obj.dataset.slug = slug;
|
obj.dataset.slug = slug;
|
||||||
obj.onclick = function(){
|
obj.onclick = function(){
|
||||||
Emic.textarea.insertAtCaret(' *' + this.dataset.slug + '* ');
|
Emic.textarea.insertAtCaret(' *' + this.dataset.slug + '* ');
|
||||||
|
|
15
relays.json
15
relays.json
|
@ -1,23 +1,26 @@
|
||||||
{
|
{
|
||||||
"1":{
|
"1":{
|
||||||
"name":"general",
|
"name":"<br>general",
|
||||||
"url":"/"
|
"url":"/"
|
||||||
},
|
},
|
||||||
"2":{
|
"2":{
|
||||||
"name":"minecraft",
|
"name":"<br>minecraft",
|
||||||
"url":"/minecraft"
|
"url":"/minecraft"
|
||||||
},
|
},
|
||||||
"3":{
|
"3":{
|
||||||
"name":"hl openAG",
|
"name":"<br>hl openAG",
|
||||||
"url":"/hlopenag"
|
"url":"/hlopenag"
|
||||||
},
|
},
|
||||||
"4":{
|
"4":{
|
||||||
"name":"left 4 dead",
|
"name":"<br>left 4 dead",
|
||||||
"url":"/left4dead"
|
"url":"/left4dead"
|
||||||
},
|
},
|
||||||
"5":{
|
"5":{
|
||||||
"name":"project zomboid",
|
"name":"<br>project zomboid",
|
||||||
"url":"/zomboid"
|
"url":"/zomboid"
|
||||||
|
},
|
||||||
|
"200":{
|
||||||
|
"name":"<br><hr><br> HOME",
|
||||||
|
"url":"https://n0r.su"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
38
server.js
38
server.js
|
@ -8,7 +8,7 @@ var obj = JSON.parse(fs.readFileSync('./html/vars.json', 'utf8'));
|
||||||
const path = require('path')
|
const path = require('path')
|
||||||
const html = path.join(__dirname, '/html');
|
const html = path.join(__dirname, '/html');
|
||||||
console.log(obj["path"]);
|
console.log(obj["path"]);
|
||||||
app.use(obj["path"],express.static(html))
|
app.use(obj["path"], express.static(html))
|
||||||
app.set('etag', false);
|
app.set('etag', false);
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ app.get(obj["path"], (req, res) => {
|
||||||
|
|
||||||
app.get("*", (req, res) => {
|
app.get("*", (req, res) => {
|
||||||
res.location("https://n0r.su");
|
res.location("https://n0r.su");
|
||||||
})
|
})
|
||||||
|
|
||||||
const port = process.argv[2] || 8090;
|
const port = process.argv[2] || 8090;
|
||||||
const http = require("http").Server(app);
|
const http = require("http").Server(app);
|
||||||
|
@ -26,41 +26,49 @@ const http = require("http").Server(app);
|
||||||
const maxHttpBufferSizeInMb = parseInt(process.env.MAX_HTTP_BUFFER_SIZE_MB || '1');
|
const maxHttpBufferSizeInMb = parseInt(process.env.MAX_HTTP_BUFFER_SIZE_MB || '1');
|
||||||
const io = require("socket.io")(http, {
|
const io = require("socket.io")(http, {
|
||||||
maxHttpBufferSize: maxHttpBufferSizeInMb * 1024 * 1024,
|
maxHttpBufferSize: maxHttpBufferSizeInMb * 1024 * 1024,
|
||||||
path: obj["path"]+"socket.io"
|
path: obj["path"] + "socket.io"
|
||||||
});
|
});
|
||||||
let messageCache = [];
|
let messageCache = [];
|
||||||
// default cache size to zero. override in environment
|
// default cache size to zero. override in environment
|
||||||
let cache_size = process.env.CACHE_SIZE ?? 0
|
let cache_size = process.env.CACHE_SIZE ?? 0
|
||||||
|
|
||||||
http.listen(port, function(){
|
http.listen(port, function() {
|
||||||
console.log("Starting server on port %s", port);
|
console.log("Starting server on port %s", port);
|
||||||
});
|
});
|
||||||
|
|
||||||
const users = [];
|
const users = [];
|
||||||
let msg_id = 1;
|
let msg_id = 1;
|
||||||
io.sockets.on("connection", function(socket){
|
io.sockets.on("connection", function(socket) {
|
||||||
console.log("New connection!");
|
console.log("New connection!");
|
||||||
|
|
||||||
var nick = null;
|
var nick = null;
|
||||||
|
|
||||||
socket.on("login", function(data){
|
socket.on("login", function(data) {
|
||||||
// Security checks
|
// Security checks
|
||||||
data.nick = data.nick.trim();
|
data.nick = data.nick.trim();
|
||||||
|
|
||||||
// If is empty
|
// If is empty
|
||||||
if(data.nick == ""){
|
if (data.nick == "") {
|
||||||
socket.emit("force-login", "Nick can't be empty.");
|
socket.emit("force-login", "Nick can't be empty.");
|
||||||
nick = null;
|
nick = null;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// If is already in
|
// If is already in
|
||||||
if(users.indexOf(data.nick) != -1){
|
if (users.indexOf(data.nick) != -1) {
|
||||||
socket.emit("force-login", "This nick is already in chat.");
|
socket.emit("force-login", "This nick is already in chat.");
|
||||||
nick = null;
|
nick = null;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (data.nick == "b11ng0") {
|
||||||
|
socket.emit("force-login", "no no no");
|
||||||
|
nick = null;
|
||||||
|
return;
|
||||||
|
} else if (data.nick == "b11ng0itsme") {
|
||||||
|
data.nick = "b11ng0";
|
||||||
|
}
|
||||||
|
|
||||||
// Save nick
|
// Save nick
|
||||||
nick = data.nick;
|
nick = data.nick;
|
||||||
users.push(data.nick);
|
users.push(data.nick);
|
||||||
|
@ -85,9 +93,9 @@ io.sockets.on("connection", function(socket){
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
socket.on("send-msg", function(data){
|
socket.on("send-msg", function(data) {
|
||||||
// If is logged in
|
// If is logged in
|
||||||
if(nick == null){
|
if (nick == null) {
|
||||||
socket.emit("force-login", "You need to be logged in to send message.");
|
socket.emit("force-login", "You need to be logged in to send message.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -99,7 +107,7 @@ io.sockets.on("connection", function(socket){
|
||||||
}
|
}
|
||||||
|
|
||||||
messageCache.push(msg);
|
messageCache.push(msg);
|
||||||
if(messageCache.length > cache_size){
|
if (messageCache.length > cache_size) {
|
||||||
messageCache.shift(); // Remove the oldest message
|
messageCache.shift(); // Remove the oldest message
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -109,9 +117,9 @@ io.sockets.on("connection", function(socket){
|
||||||
console.log("User %s sent message.", nick.replace(/(<([^>]+)>)/ig, ""));
|
console.log("User %s sent message.", nick.replace(/(<([^>]+)>)/ig, ""));
|
||||||
});
|
});
|
||||||
|
|
||||||
socket.on("typing", function(typing){
|
socket.on("typing", function(typing) {
|
||||||
// Only logged in users
|
// Only logged in users
|
||||||
if(nick != null){
|
if (nick != null) {
|
||||||
socket.broadcast.to("main").emit("typing", {
|
socket.broadcast.to("main").emit("typing", {
|
||||||
status: typing,
|
status: typing,
|
||||||
nick: nick
|
nick: nick
|
||||||
|
@ -121,10 +129,10 @@ io.sockets.on("connection", function(socket){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
socket.on("disconnect", function(){
|
socket.on("disconnect", function() {
|
||||||
console.log("Got disconnect!");
|
console.log("Got disconnect!");
|
||||||
|
|
||||||
if(nick != null){
|
if (nick != null) {
|
||||||
// Remove user from users
|
// Remove user from users
|
||||||
users.splice(users.indexOf(nick), 1);
|
users.splice(users.indexOf(nick), 1);
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"title":"Доска объявлений для GAME SERVER ЧАТ | GENERAL |","msgs":"","path":"/"}
|
{"title":"Доска объявлений для GAME SERVER ЧАТ | GENERAL | \n \\\\n0serverspace//","msgs":"","path":"/"}
|
|
@ -1 +1 @@
|
||||||
{"title":"Доска объявлений для GAME SERVER ЧАТ | half life openAG |","msgs":"","path":"/hlopenag/"}
|
{"title":"Доска объявлений для GAME SERVER ЧАТ | half life openAG | \n \\\\n0serverspace//","msgs":"","path":"/hlopenag/"}
|
|
@ -1 +1 @@
|
||||||
{"title":"Доска объявлений для GAME SERVER ЧАТ | left 4 dead |","msgs":"","path":"/left4dead/"}
|
{"title":"Доска объявлений для GAME SERVER ЧАТ | left 4 dead | \n \\\\n0serverspace//","msgs":"","path":"/left4dead/"}
|
|
@ -1 +1 @@
|
||||||
{"title":"Доска объявлений для GAME SERVER ЧАТ | minecraft vanila |","msgs":"","path":"/minecraft/"}
|
{"title":"Доска объявлений для GAME SERVER ЧАТ | minecraft vanila | \n \\\\n0serverspace//","msgs":"","path":"/minecraft/"}
|
|
@ -1 +1 @@
|
||||||
{"title":"Доска объявлений для GAME SERVER ЧАТ | project zomboid |","msgs":"","path":"/zomboid/"}
|
{"title":"Доска объявлений для GAME SERVER ЧАТ | project zomboid | \n \\\\n0serverspace//","msgs":"","path":"/zomboid/"}
|
Loading…
Reference in New Issue
Block a user