0.11.17 : add shared events

This commit is contained in:
2025-11-09 14:48:50 +01:00
parent 90e43e0644
commit dba77a3b07
3 changed files with 33 additions and 4 deletions

View File

@@ -243,7 +243,24 @@ export default factories.createCoreController(
// Créer un map pour un accès rapide aux groupes par ID
const groupsMap = new Map(allGroups.map((group) => [group.id, group]));
// 6⃣ Enrichir le feed avec les propriétés friend, member, contactFollow et group
// 5.1️⃣ Récupérer tous les événements liés dans le feed
const linkedEventIds = filteredFeed
.filter((po) => po.contextType === "event" && po.relation === "link")
.map((po) => po.contextId);
const linkedEventsMap = new Map();
if (linkedEventIds.length > 0) {
const eventRelationships = await strapi.db
.query("api::event-relationship.event-relationship")
.findMany({
where: { event: { id: linkedEventIds } },
populate: ["event"],
});
eventRelationships.forEach((relationship) => {
linkedEventsMap.set(relationship.event.id, relationship);
});
}
// 6⃣ Enrichir le feed avec les propriétés friend, member, contactFollow, group et linkedEvent
const enrichedFeed = filteredFeed.map((postOwnership) => {
const authorId = postOwnership.author?.id;
const contextType = postOwnership.contextType;
@@ -270,15 +287,27 @@ export default factories.createCoreController(
? groupsMap.get(contextId)
: null;
// Ajouter l'événement lié si contextType est "event" et relation est "link"
const linkedEvent =
contextType === "event" &&
postOwnership.relation === "link" &&
contextId
? linkedEventsMap.get(contextId)
: null;
return {
...postOwnership,
post: {
...postOwnership.post,
...(linkedEvent && { linkedEvent }),
},
friend: isFriend,
contactFollow: isContactFollow,
member: isMember,
blocked: isBlocked,
contextType,
contextId,
...(group && { group }), // Ajouter group seulement s'il existe
...(group && { group }),
};
});

View File

@@ -14,7 +14,7 @@
"name": "Apache 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0.html"
},
"x-generation-date": "2025-11-07T14:28:24.261Z"
"x-generation-date": "2025-11-08T23:22:04.498Z"
},
"x-strapi-config": {
"plugins": [