0.13.21 : create the owner membership when a choral is created
Build release Docker image / Build Docker Images (push) Successful in 7m57s
Build release Docker image / Build Docker Images (push) Successful in 7m57s
Le créateur d'une chorale n'avait aucune adhésion : la chorale n'apparaissait pas dans « Mes chorales » et son créateur n'en était pas propriétaire — il n'avait donc aucun droit sur ce qu'il venait de créer. Seule la recherche la montrait. Le controller crée désormais une choral-membership `owner` / `active` après la création, et journalise l'anomalie si l'id de la chorale n'est pas exploitable. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "harmony-back",
|
"name": "harmony-back",
|
||||||
"version": "0.13.20",
|
"version": "0.13.21",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "A Strapi application",
|
"description": "A Strapi application",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -44,6 +44,28 @@ export default factories.createCoreController(
|
|||||||
ctx.request.body = { data };
|
ctx.request.body = { data };
|
||||||
const result = await super.create(ctx);
|
const result = await super.create(ctx);
|
||||||
|
|
||||||
|
const choralId = (result as any)?.data?.id;
|
||||||
|
|
||||||
|
// Adhésion propriétaire : sans elle, le créateur n'apparaît pas dans
|
||||||
|
// « Mes chorales » et n'a aucun droit sur ce qu'il vient de créer.
|
||||||
|
if (choralId) {
|
||||||
|
await strapi.db.query("api::choral-membership.choral-membership").create({
|
||||||
|
data: {
|
||||||
|
user: user.id,
|
||||||
|
choral: choralId,
|
||||||
|
role: "owner",
|
||||||
|
state: "active",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
strapi.log.info(
|
||||||
|
`✅ Chorale ${choralId} créée par l'utilisateur ${user.id}, adhésion propriétaire enregistrée`,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
strapi.log.error(
|
||||||
|
`❌ Chorale créée sans id exploitable : aucune adhésion propriétaire pour l'utilisateur ${user.id}`,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// Décrémente le crédit de création une fois la chorale créée.
|
// Décrémente le crédit de création une fois la chorale créée.
|
||||||
await strapi.db.query("plugin::users-permissions.user").update({
|
await strapi.db.query("plugin::users-permissions.user").update({
|
||||||
where: { id: user.id },
|
where: { id: user.id },
|
||||||
|
|||||||
Reference in New Issue
Block a user