diff --git a/changelog.md b/changelog.md index b4cc5b7b..f3762770 100644 --- a/changelog.md +++ b/changelog.md @@ -3,6 +3,7 @@ ## 13.0.24 - Le grand oubli d'Illysis - ajout d'un bouton pour supprimer les anciens messages du tchat +- correction de messages d'erreur 'User ... lacks permission' / 'Active Effect ... does not exist' ## 13.0.23 - Le marché d'Illysis diff --git a/module/misc.js b/module/misc.js index add093df..a606bf76 100644 --- a/module/misc.js +++ b/module/misc.js @@ -220,8 +220,10 @@ export class Misc { * and there is no connected GM */ static documentIfResponsible(document) { - if (game.users.activeGM || (Misc.connectedGMs().length == 0 && Misc.isFirstOwnerPlayer(document))) { - return document + if (Misc.isFirstConnectedGM() || (Misc.connectedGMs().length == 0 && Misc.isFirstOwnerPlayer(document))) { + if (document.isOwner) { + return document + } } return undefined } @@ -230,16 +232,16 @@ export class Misc { if (Misc.isOwnerPlayer(document)) { return await action(document) } else { - return await orElse(document ?? {name: ''}) + return await orElse(document ?? { name: '' }) } } static isOwnerPlayer(document) { - return document && document.testUserPermission && document.testUserPermission(game.user, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER) + return document?.isOwner } static isFirstOwnerPlayer(document) { - if (!document?.testUserPermission) { + if (!document?.isOwner) { return false } return game.users.find(u => document.testUserPermission(u, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)) == game.user @@ -249,7 +251,7 @@ export class Misc { * @returns true pour un seul utilisateur: le premier GM connecté par ordre d'id */ static isFirstConnectedGM() { - return game.user == game.users.activeGM + return game.users.activeGM != undefined && game.user == game.users.activeGM } static hasConnectedGM() {