|
@@ -25,35 +25,44 @@ const startChat = async (req, res, next) => {
|
|
const companion = await UserModel.findById(id);
|
|
const companion = await UserModel.findById(id);
|
|
const isUser = await ChatModel.getByField(id, userId);
|
|
const isUser = await ChatModel.getByField(id, userId);
|
|
const isCompanion = await ChatModel.getByField(userId, id);
|
|
const isCompanion = await ChatModel.getByField(userId, id);
|
|
- const { name, lastName, avatarUrl, color } = companion;
|
|
|
|
|
|
+ const { name, lastName, avatarUrl, color, online } = companion;
|
|
const {
|
|
const {
|
|
name: Name,
|
|
name: Name,
|
|
lastName: LastName,
|
|
lastName: LastName,
|
|
avatarUrl: AvatarUrl,
|
|
avatarUrl: AvatarUrl,
|
|
color: Color,
|
|
color: Color,
|
|
|
|
+ online: Online,
|
|
} = user;
|
|
} = user;
|
|
if (companion && (isUser || isCompanion)) {
|
|
if (companion && (isUser || isCompanion)) {
|
|
- await ChatModel.update(isUser._id, { name, lastName, avatarUrl, color });
|
|
|
|
|
|
+ await ChatModel.update(isUser._id, {
|
|
|
|
+ name,
|
|
|
|
+ lastName,
|
|
|
|
+ avatarUrl,
|
|
|
|
+ color,
|
|
|
|
+ online,
|
|
|
|
+ });
|
|
await ChatModel.update(isCompanion._id, {
|
|
await ChatModel.update(isCompanion._id, {
|
|
name: Name,
|
|
name: Name,
|
|
lastName: LastName,
|
|
lastName: LastName,
|
|
avatarUrl: AvatarUrl,
|
|
avatarUrl: AvatarUrl,
|
|
color: Color,
|
|
color: Color,
|
|
|
|
+ online: Online,
|
|
});
|
|
});
|
|
- const updatedUser = await ChatModel.getByField(id, userId);
|
|
|
|
|
|
+ const updatedChat = await ChatModel.getByField(id, userId);
|
|
return res.status(200).json({
|
|
return res.status(200).json({
|
|
status: 'success',
|
|
status: 'success',
|
|
code: 200,
|
|
code: 200,
|
|
- data: updatedUser,
|
|
|
|
|
|
+ data: updatedChat,
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
if (companion && !isUser && !isCompanion) {
|
|
if (companion && !isUser && !isCompanion) {
|
|
- const updatedUser = await ChatModel.add({
|
|
|
|
|
|
+ const newChat = await ChatModel.add({
|
|
name,
|
|
name,
|
|
lastName,
|
|
lastName,
|
|
avatarUrl,
|
|
avatarUrl,
|
|
color,
|
|
color,
|
|
|
|
+ online,
|
|
companionId: id,
|
|
companionId: id,
|
|
owner: userId,
|
|
owner: userId,
|
|
});
|
|
});
|
|
@@ -62,13 +71,14 @@ const startChat = async (req, res, next) => {
|
|
lastName: LastName,
|
|
lastName: LastName,
|
|
avatarUrl: AvatarUrl,
|
|
avatarUrl: AvatarUrl,
|
|
color: Color,
|
|
color: Color,
|
|
|
|
+ online: Online,
|
|
companionId: userId,
|
|
companionId: userId,
|
|
owner: id,
|
|
owner: id,
|
|
});
|
|
});
|
|
return res.status(201).json({
|
|
return res.status(201).json({
|
|
status: 'success',
|
|
status: 'success',
|
|
code: 201,
|
|
code: 201,
|
|
- data: updatedUser,
|
|
|
|
|
|
+ data: newChat,
|
|
});
|
|
});
|
|
}
|
|
}
|
|
} catch (e) {
|
|
} catch (e) {
|