@runnerpro/backend 1.10.17 → 1.10.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -93,14 +93,7 @@ const getConversation = (req, res, { query, isClient }) => __awaiter(void 0, voi
|
|
|
93
93
|
});
|
|
94
94
|
const deleteConversationMessage = (req, res, { query, isClient }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
95
95
|
const { id } = req.params;
|
|
96
|
-
|
|
97
|
-
id,
|
|
98
|
-
isClient,
|
|
99
|
-
req.session.userid,
|
|
100
|
-
]);
|
|
101
|
-
if (!message)
|
|
102
|
-
return res.status(404).send('Not found');
|
|
103
|
-
if (!(yield canEditOrDeleteMessage({ idMessage: id, isClient })))
|
|
96
|
+
if (!(yield canEditOrDeleteMessage({ idMessage: id, isClient, userid: req.session.userid })))
|
|
104
97
|
return res.send({ status: 'ok' });
|
|
105
98
|
if (isClient)
|
|
106
99
|
yield query('UPDATE [CHAT MESSAGE] SET [ELIMINADO] = TRUE WHERE [ID] = ?', [id]);
|
|
@@ -115,15 +108,9 @@ const deleteConversationMessage = (req, res, { query, isClient }) => __awaiter(v
|
|
|
115
108
|
const editConversationMessage = (req, res, { query, isClient }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
116
109
|
const { id } = req.params;
|
|
117
110
|
const { text } = req.body;
|
|
118
|
-
|
|
119
|
-
id,
|
|
120
|
-
isClient,
|
|
121
|
-
req.session.userid,
|
|
122
|
-
]);
|
|
123
|
-
if (!message)
|
|
124
|
-
return res.status(404).send('Not found');
|
|
125
|
-
if (!(yield canEditOrDeleteMessage({ idMessage: id, isClient })))
|
|
111
|
+
if (!(yield canEditOrDeleteMessage({ idMessage: id, isClient, userid: req.session.userid })))
|
|
126
112
|
return res.send({ status: 'ok' });
|
|
113
|
+
const [message] = yield query('SELECT [ID CLIENTE] FROM [CHAT MESSAGE] WHERE [ID] = ?', [id]);
|
|
127
114
|
// Devuelve el texto en el otro idioma si el cliente no habla español y el idioma del cliente
|
|
128
115
|
const { textSpanish, textPreferredLanguage } = yield getPreferredLanguageForChat({
|
|
129
116
|
text,
|
|
@@ -138,7 +125,25 @@ const editConversationMessage = (req, res, { query, isClient }) => __awaiter(voi
|
|
|
138
125
|
]);
|
|
139
126
|
res.send({ status: 'ok' });
|
|
140
127
|
});
|
|
141
|
-
const canEditOrDeleteMessage = ({ idMessage, isClient }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
128
|
+
const canEditOrDeleteMessage = ({ idMessage, isClient, userid }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
129
|
+
const [message] = yield (0, index_1.query)('SELECT [ID], "ID CLIENTE", "ID SENDER" FROM [CHAT MESSAGE] WHERE [ID] = ? AND (? = FALSE OR [ID CLIENTE] = ?)', [
|
|
130
|
+
idMessage,
|
|
131
|
+
isClient,
|
|
132
|
+
userid,
|
|
133
|
+
]);
|
|
134
|
+
if (!message)
|
|
135
|
+
return false;
|
|
136
|
+
// Si es servidor del cliente, pero el mensaje no es del cliente || Si es el servidor del entrenador, pero el mensaje es del cliente
|
|
137
|
+
const messageOwnerCliente = message.idCliente === message.idSender;
|
|
138
|
+
if ((isClient && !messageOwnerCliente) || (!isClient && messageOwnerCliente))
|
|
139
|
+
return false;
|
|
140
|
+
// Si es servidor del cliente, pero el último mensaje es del entrenador || Si es el servidor del entrenador, pero el último mensaje es del cliente
|
|
141
|
+
const [lastMessage] = yield (0, index_1.query)('SELECT "ID CLIENTE", "ID SENDER" FROM [CHAT MESSAGE] WHERE [ID CLIENTE] = ? ORDER BY [ID] DESC LIMIT 1', [
|
|
142
|
+
message.idCliente,
|
|
143
|
+
]);
|
|
144
|
+
const lastMessageOfClient = lastMessage.idCliente === lastMessage.idSender;
|
|
145
|
+
if ((isClient && !lastMessageOfClient) || (!isClient && lastMessageOfClient))
|
|
146
|
+
return false;
|
|
142
147
|
return true;
|
|
143
148
|
});
|
|
144
149
|
const getConversationImage = (req, res, { query, bucket, isClient }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../../../src/chat/api/conversation.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,iBAAiB,0BAA2B,GAAG,SAoBpD,CAAC;
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../../../src/chat/api/conversation.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,iBAAiB,0BAA2B,GAAG,SAoBpD,CAAC;AA+SF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|