mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-05-20 20:58:51 +00:00
Make changes to correct problems from merging as requested.
This commit is contained in:
parent
5efde3159f
commit
eb21d27fa2
2 changed files with 0 additions and 88 deletions
|
|
@ -1,23 +1,5 @@
|
|||
<template>
|
||||
<div class="standard-page pt-0 px-0">
|
||||
<div class="banner-g1g1 mx-n3 d-flex justify-content-center">
|
||||
<div
|
||||
class="svg-icon svg-gifts my-auto mr-5 ml-auto"
|
||||
v-html="icons.giftsVertical"
|
||||
>
|
||||
</div>
|
||||
<div class="my-auto text-center">
|
||||
<strong> {{ $t('g1g1Announcement') }} </strong>
|
||||
<div class="mt-1">
|
||||
{{ $t('g1g1Details') }}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="svg-icon svg-gifts gifts-right my-auto ml-5 mr-auto"
|
||||
v-html="icons.giftsVertical"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<h1>{{ $t('subscription') }}</h1>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
|
|
|
|||
|
|
@ -80,76 +80,6 @@ export async function getUserInbox (user, options = {
|
|||
return messagesObj;
|
||||
}
|
||||
|
||||
async function usersMapByConversations (owner, users) {
|
||||
const query = Inbox
|
||||
.aggregate([
|
||||
{
|
||||
$match: {
|
||||
ownerId: owner._id,
|
||||
uuid: { $in: users },
|
||||
},
|
||||
},
|
||||
{
|
||||
$group: {
|
||||
_id: '$uuid',
|
||||
userStyles: { $last: '$userStyles' },
|
||||
contributor: { $last: '$contributor' },
|
||||
backer: { $last: '$backer' },
|
||||
},
|
||||
},
|
||||
]);
|
||||
|
||||
|
||||
const usersAr = await query.exec();
|
||||
const usersMap = {};
|
||||
|
||||
for (const usr of usersAr) {
|
||||
usersMap[usr._id] = usr;
|
||||
}
|
||||
|
||||
return usersMap;
|
||||
}
|
||||
|
||||
export async function listConversations (owner) {
|
||||
// group messages by user owned by logged-in user
|
||||
const query = Inbox
|
||||
.aggregate([
|
||||
{
|
||||
$match: {
|
||||
ownerId: owner._id,
|
||||
},
|
||||
},
|
||||
{
|
||||
$group: {
|
||||
_id: '$uuid',
|
||||
user: { $last: '$user' },
|
||||
username: { $last: '$username' },
|
||||
timestamp: { $last: '$timestamp' },
|
||||
text: { $last: '$text' },
|
||||
count: { $sum: 1 },
|
||||
},
|
||||
},
|
||||
{ $sort: { timestamp: -1 } }, // sort by latest message
|
||||
]);
|
||||
|
||||
const conversationsList = await query.exec();
|
||||
|
||||
const userIdList = conversationsList.map(c => c._id);
|
||||
|
||||
// get user-info based on conversations
|
||||
const usersMap = await usersMapByConversations(owner, userIdList);
|
||||
|
||||
const conversations = conversationsList.map(res => ({
|
||||
uuid: res._id,
|
||||
...res,
|
||||
backer: usersMap[res._id].backer,
|
||||
userStyles: usersMap[res._id].userStyles,
|
||||
contributor: usersMap[res._id].contributor,
|
||||
}));
|
||||
|
||||
return conversations;
|
||||
}
|
||||
|
||||
export async function getUserInboxMessage (user, messageId) {
|
||||
return Inbox.findOne({ ownerId: user._id, _id: messageId }).exec();
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue