Images for admins and stuff

This commit is contained in:
Kasper Rynning-Tønnesen
2017-10-11 18:24:54 +02:00
parent 94d7d50789
commit 2daa9607d2
5 changed files with 36 additions and 8 deletions

View File

@@ -13,7 +13,11 @@ function chat(msg, guid, offline, socket) {
data.length < 151 && data.replace(/\s/g, '').length){
db.collection("user_names").find({"guid": guid}, function(err, docs) {
if(docs.length == 1) {
io.to(coll).emit('chat', {from: docs[0].name, msg: ": " + data});
var icon = false;
if(docs[0].icon) {
icon = docs[0].icon;
}
io.to(coll).emit('chat', {from: docs[0].name, msg: ": " + data, icon: icon});
} else if(docs.length == 0){
get_name(guid, {announce: false, channel: coll, message: data, all: false});
}
@@ -38,7 +42,11 @@ function all_chat(msg, guid, offline, socket) {
data.length < 151 && data.replace(/\s/g, '').length){
db.collection("user_names").find({"guid": guid}, function(err, docs) {
if(docs.length == 1) {
io.sockets.emit('chat.all', {from: docs[0].name, msg: ": " + data, channel: coll});
var icon = false;
if(docs[0].icon) {
icon = docs[0].icon;
}
io.sockets.emit('chat.all', {from: docs[0].name, msg: ": " + data, channel: coll, icon: icon});
} else if(docs.length == 0) {
get_name(guid, {announce: false, channel: coll, message: data, all: true});
}
@@ -65,6 +73,7 @@ function namechange(data, guid, socket) {
var name = data.name;
db.collection("registered_users").find({"_id": name.toLowerCase()}, function(err, docs) {
var accepted_password = false;
var icon = false;
if(docs.length == 0) {
if(new_password) {
return;
@@ -72,6 +81,9 @@ function namechange(data, guid, socket) {
accepted_password = true;
db.collection("registered_users").update({"_id": name.toLowerCase()}, {$set: {password: Functions.hash_pass(password)}}, {upsert: true}, function() {});
} else if(docs[0].password == Functions.hash_pass(password)) {
if(docs[0].icon) {
icon = docs[0].icon;
}
accepted_password = true;
if(new_password) {
db.collection("registered_users").update({"_id": name.toLowerCase(), password: Functions.hash_pass(password)}, {$set: {password: Functions.hash_pass(new_password)}}, function() {});
@@ -81,7 +93,7 @@ function namechange(data, guid, socket) {
db.collection("user_names").find({"guid": guid}, function(err, names) {
var old_name = names[0].name;
db.collection("user_names").update({"_id": "all_names"}, {$pull: {names: old_name}}, function() {});
db.collection("user_names").update({"guid": guid}, {$set: {name: name}}, function(err, docs) {
db.collection("user_names").update({"guid": guid}, {$set: {name: name, icon: icon}}, function(err, docs) {
db.collection("user_names").update({"_id": "all_names"}, {$addToSet: {names: name}}, function(err, docs) {
socket.emit('name', {type: "name", accepted: true});
if(old_name != name && !first) {
@@ -114,7 +126,7 @@ function generate_name(guid, announce_payload) {
var tmp_name = Functions.rndName(guid, 8);
db.collection("user_names").update({"_id": "all_names"}, {$addToSet: {names: tmp_name}}, {upsert: true}, function(err, updated) {
if(updated.nModified == 1 || (updated.hasOwnProperty("upserted") && n == 1)) {
db.collection("user_names").update({"guid": guid}, {$set: {name: tmp_name}}, {upsert: true}, function(err, update){
db.collection("user_names").update({"guid": guid}, {$set: {name: tmp_name, icon: false}}, {upsert: true}, function(err, update){
name = tmp_name;
if(announce_payload.announce) {
io.to(announce_payload.channel).emit('chat', {from: announce_payload.old_name, msg: " changed name to " + name});

View File

@@ -126,6 +126,12 @@
font-size: 0.75rem;
}
.chat-icon {
width: 15px;
margin-right: 2px;
vertical-align: middle;
}
#chatForm {
padding-left: 14px;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -115,11 +115,16 @@ var Chat = {
color = "0" + color;
}
}
var icon_add = "";
if(inp.hasOwnProperty("icon") && inp.icon != false) {
icon_add = "<img class='chat-icon' src='" + inp.icon + "' alt='" + inp.from + "'>";
}
color = Helper.hexToRgb(color.substring(0,6));
var color_temp = Helper.rgbToHsl([color.r, color.g, color.b], false);
var _time = new Date();
var time = Helper.pad(_time.getHours()) + ":" + Helper.pad(_time.getMinutes());
$("#chatall").append("<li title='"+inp.channel+"''><span class='time_color'>" + time + "</span> <span style='color:"+color_temp+";'>"+inp.from+"</span><span class='channel-info-all-chat'> " + inp.channel + " </span></li>");
$("#chatall").append("<li title='"+inp.channel+"'><span class='time_color'>" + time + "</span> " + icon_add + "<span style='color:"+color_temp+";'>"+inp.from+"</span><span class='channel-info-all-chat'> " + inp.channel + " </span></li>");
var in_text = document.createTextNode(inp.msg);
$("#chatall li:last")[0].appendChild(in_text);
document.getElementById("chatall").scrollTop = document.getElementById("chatall").scrollHeight;
@@ -143,6 +148,11 @@ var Chat = {
$("#chatchannel").children()[0].remove()
}
var icon_add = "";
if(data.hasOwnProperty("icon") && data.icon != false) {
icon_add = "<img class='chat-icon' src='" + data.icon + "' alt='" + data.from + "'>";
}
var color = Helper.intToARGB(Helper.hashCode(data.from));
if(color.length < 6) {
for(x = color.length; x < 6; x++) {
@@ -153,7 +163,7 @@ var Chat = {
var color_temp = Helper.rgbToHsl([color.r, color.g, color.b], false);
var _time = new Date();
var time = Helper.pad(_time.getHours()) + ":" + Helper.pad(_time.getMinutes());
$("#chatchannel").append("<li><span class='time_color'>" + time + "</span> <span style='color:"+color_temp+";'>"+data.from+"</span></li>");
$("#chatchannel").append("<li><span class='time_color'>" + time + "</span> " + icon_add + "<span style='color:"+color_temp+";'>"+data.from+"</span></li>");
var in_text = document.createTextNode(data.msg);
$("#chatchannel li:last")[0].appendChild(in_text);
document.getElementById("chatchannel").scrollTop = document.getElementById("chatchannel").scrollHeight;