Small Bug fixed when member send msg to a member that blocked guest broadcasts
This commit is contained in:
parent
b89fa8504a
commit
dda51c1499
1 changed files with 12 additions and 14 deletions
|
|
@ -49,32 +49,30 @@ export async function sendPrivMessage(fastify: FastifyInstance, data: ClientMess
|
||||||
const sockets = await fastify.io.fetchSockets();
|
const sockets = await fastify.io.fetchSockets();
|
||||||
const allUsers: User[] = fastify.db.getAllUsers() ?? [];
|
const allUsers: User[] = fastify.db.getAllUsers() ?? [];
|
||||||
const senderSocket = sockets.find(socket => socket.id === sender);
|
const senderSocket = sockets.find(socket => socket.id === sender);
|
||||||
|
|
||||||
for (const socket of sockets) {
|
for (const socket of sockets) {
|
||||||
|
if (socket.id === sender) continue;
|
||||||
const UserID = getUserByName(allUsers, data.user)?.id ?? '';
|
const UserID = getUserByName(allUsers, data.user)?.id ?? '';
|
||||||
const list:BlockRelation[] = whoBlockedMe(fastify, UserID);
|
const list:BlockRelation[] = whoBlockedMe(fastify, UserID);
|
||||||
const clientInfo = clientChat.get(socket.id);
|
const clientInfo = clientChat.get(socket.id);
|
||||||
if (!clientInfo?.user) {
|
if (!clientInfo) continue;
|
||||||
continue;
|
|
||||||
}
|
|
||||||
let blockMsgFlag: boolean = false;
|
let blockMsgFlag: boolean = false;
|
||||||
const UserByID = getUserByName(allUsers, clientInfo.user) ?? '';
|
const receiverUser: User | null = getUserByName(allUsers, clientInfo.user);
|
||||||
if (UserByID === '') {
|
if (!receiverUser) return;
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const user: string = clientChat.get(socket.id)?.user ?? '';
|
const user: string = clientChat.get(socket.id)?.user ?? '';
|
||||||
const atUser = `@${user}`;
|
const targetUser = `@${user}`;
|
||||||
if (atUser !== data.command || atUser === '' || data.text === '') {
|
if (targetUser !== data.command || targetUser === '' || data.text === '') {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
blockMsgFlag = checkNamePair(list, UserID, UserByID.id) || false;
|
blockMsgFlag = checkNamePair(list, UserID, receiverUser.id) || false;
|
||||||
if (socket.id === sender) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (!blockMsgFlag) {
|
if (!blockMsgFlag) {
|
||||||
socket.emit('MsgObjectServer', { message: data });
|
socket.emit('MsgObjectServer', { message: data });
|
||||||
fastify.log.info({ senderID: `${UserID}`, msgPriv: data.text, target: `${UserByID.id}` });
|
fastify.log.info({ senderID: `${UserID}`, msgPriv: data.text, target: `${receiverUser.id}` });
|
||||||
if (senderSocket) {
|
if (senderSocket) {
|
||||||
senderSocket.emit('privMessageCopy', `${data.command}: ${data.text}🔒`);
|
senderSocket.emit('privMessageCopy', `${data.command}: ${data.text}🔒`);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue