mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-03-24 05:10:38 +01:00
Chat now supports markdown
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
var db = require('./database'),
|
||||
async = require('async'),
|
||||
user = require('./user'),
|
||||
plugins = require('./plugins');
|
||||
meta = require('./meta');
|
||||
|
||||
|
||||
@@ -62,14 +63,13 @@ var db = require('./database'),
|
||||
return next(err);
|
||||
}
|
||||
|
||||
if (message.fromuid === fromuid) {
|
||||
message.content = 'You : ' + message.content;
|
||||
} else {
|
||||
message.content = tousername + ' : ' + message.content;
|
||||
}
|
||||
Messaging.parse(message.content, message.fromuid, fromuid, tousername, function(result) {
|
||||
message.content = result;
|
||||
messages.push(message);
|
||||
next(null);
|
||||
});
|
||||
|
||||
|
||||
messages.push(message);
|
||||
next(null);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -84,6 +84,22 @@ var db = require('./database'),
|
||||
});
|
||||
};
|
||||
|
||||
Messaging.parse = function (message, fromuid, myuid, tousername, callback) {
|
||||
plugins.fireHook('filter:post.parse', message, function(err, parsed) {
|
||||
if (err) {
|
||||
return callback(message);
|
||||
}
|
||||
var username;
|
||||
if (fromuid === myuid) {
|
||||
username = "<span class='chat-user chat-user-you'>You</span>: ";
|
||||
} else {
|
||||
username = "<span class='chat-user'>" + tousername + "</span>: ";
|
||||
}
|
||||
var result = username + parsed;
|
||||
callback(result);
|
||||
});
|
||||
};
|
||||
|
||||
Messaging.updateChatTime = function(uid, toUid, callback) {
|
||||
db.sortedSetAdd('uid:' + uid + ':chats', Date.now(), toUid, function(err) {
|
||||
if (callback) {
|
||||
|
||||
@@ -97,38 +97,40 @@ SocketModules.chats.send = function(data, sessionData) {
|
||||
});
|
||||
});
|
||||
}
|
||||
Messaging.parse(msg, sessionData.uid, sessionData.uid, toUsername, function(parsed) {
|
||||
Messaging.addMessage(sessionData.uid, touid, msg, function(err, message) {
|
||||
var numSockets = 0,
|
||||
x;
|
||||
|
||||
Messaging.addMessage(sessionData.uid, touid, msg, function(err, message) {
|
||||
var numSockets = 0,
|
||||
x;
|
||||
if (sessionData.userSockets[touid]) {
|
||||
numSockets = sessionData.userSockets[touid].length;
|
||||
|
||||
if (sessionData.userSockets[touid]) {
|
||||
numSockets = sessionData.userSockets[touid].length;
|
||||
for (x = 0; x < numSockets; ++x) {
|
||||
sessionData.userSockets[touid][x].emit('event:chats.receive', {
|
||||
fromuid: sessionData.uid,
|
||||
username: username,
|
||||
// todo this isnt very nice, but can't think of a better way atm
|
||||
message: parsed.replace("chat-user-you'>You", "'>" + username),
|
||||
timestamp: Date.now()
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
for (x = 0; x < numSockets; ++x) {
|
||||
sessionData.userSockets[touid][x].emit('event:chats.receive', {
|
||||
fromuid: sessionData.uid,
|
||||
username: username,
|
||||
message: finalMessage,
|
||||
timestamp: Date.now()
|
||||
});
|
||||
}
|
||||
}
|
||||
if (sessionData.userSockets[sessionData.uid]) {
|
||||
|
||||
if (sessionData.userSockets[sessionData.uid]) {
|
||||
numSockets = sessionData.userSockets[sessionData.uid].length;
|
||||
|
||||
numSockets = sessionData.userSockets[sessionData.uid].length;
|
||||
|
||||
for (x = 0; x < numSockets; ++x) {
|
||||
sessionData.userSockets[sessionData.uid][x].emit('event:chats.receive', {
|
||||
fromuid: touid,
|
||||
username: toUsername,
|
||||
message: 'You : ' + msg,
|
||||
timestamp: Date.now()
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
for (x = 0; x < numSockets; ++x) {
|
||||
sessionData.userSockets[sessionData.uid][x].emit('event:chats.receive', {
|
||||
fromuid: touid,
|
||||
username: toUsername,
|
||||
message: parsed,
|
||||
timestamp: Date.now()
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user