Chargement en cours app/imports/api/users/server/methods.js +27 −1 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -2855,6 +2855,12 @@ export const checkAsams = new ValidatedMethod({ let totalNoMatch = 0; let users = []; if (userId) { logger.info({ message: i18n.__('api.users.checkAsams'), scope: 'system', method: 'checkAsams', params: { caller: currentUser.username, targetUser: userId }, }); // apply asam rules for a particular user const user = Meteor.users.findOne(userId, { fields: { _id: 1, emails: 1, awaitingStructure: 1, isActive: 1 } }); if (!Roles.userIsInRole(this.userId, 'admin')) { Chargement en cours @@ -2876,6 +2882,12 @@ export const checkAsams = new ValidatedMethod({ } users = [user]; } else { logger.info({ message: i18n.__('api.users.checkAsams'), scope: 'system', method: 'checkAsams', params: { caller: currentUser.username }, }); // reapply asam rules for all managed users with isActive = false or awaitingStructure defined const usersQuery = { $or: [{ awaitingStructure: { $ne: null } }, { isActive: { $ne: true } }] }; users = Meteor.users Chargement en cours @@ -2889,12 +2901,26 @@ export const checkAsams = new ValidatedMethod({ if (structure) { // If we have a structure, assign it to user and make them directly active const userData = { isActive: true }; if (asamUser.isActive === false) totalActivated += 1; if (asamUser.isActive === false) { totalActivated += 1; logger.info({ message: i18n.__('api.users.userActivated'), scope: 'system', method: 'checkAsams', params: { userId: asamUser._id, username: asamUser.username }, }); } // don't assign structure automatically if awaitingStructure !== structure if (!asamUser.awaitingStructure || asamUser.awaitingStructure === structure._id) { userData.structure = structure._id; userData.awaitingStructure = null; totalAccepted += 1; logger.info({ message: i18n.__('api.users.structureSet'), scope: 'system', method: 'checkAsams', params: { userId: asamUser._id, username: asamUser.username, structure: structure.name }, }); } Meteor.users.update({ _id: asamUser._id }, { $set: userData }); Meteor.call('users.userUpdated', { userId: asamUser._id, data: userData, token: getToken() }, (err) => { Chargement en cours app/imports/startup/i18n/en.i18n.json +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -273,6 +273,9 @@ "invalidUsername": "Invalid username: Platform administrator has been notified of this error", "reservedComplement": "This display name complement is not available", "displayNameAlreadyExists": "This display name complement is already used by one of your homonyms", "checkAsams": "Application of ASAM rules requested", "userActivated": "User account activated", "structureSet": "User structure set", "labels": { "id": "User Id", "username": "User Name", Chargement en cours app/imports/startup/i18n/fr.i18n.json +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -272,6 +272,9 @@ "invalidUsername": "Nom d'utilisateur invalide: L'administrateur de la plateforme a été notifié du problème", "reservedComplement": "Ce complément de nom n'est pas disponible", "displayNameAlreadyExists": "Ce complément de nom est déjà utilisé par un de vos homonymes", "checkAsams": "Application des règles ASAM demandée", "userActivated": "Compte utilisateur activé", "structureSet": "Structure de l'utilisateur définie", "labels": { "id": "Id Utilisateur", "username": "Nom d'utilisateur", Chargement en cours Chargement en cours
app/imports/api/users/server/methods.js +27 −1 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -2855,6 +2855,12 @@ export const checkAsams = new ValidatedMethod({ let totalNoMatch = 0; let users = []; if (userId) { logger.info({ message: i18n.__('api.users.checkAsams'), scope: 'system', method: 'checkAsams', params: { caller: currentUser.username, targetUser: userId }, }); // apply asam rules for a particular user const user = Meteor.users.findOne(userId, { fields: { _id: 1, emails: 1, awaitingStructure: 1, isActive: 1 } }); if (!Roles.userIsInRole(this.userId, 'admin')) { Chargement en cours @@ -2876,6 +2882,12 @@ export const checkAsams = new ValidatedMethod({ } users = [user]; } else { logger.info({ message: i18n.__('api.users.checkAsams'), scope: 'system', method: 'checkAsams', params: { caller: currentUser.username }, }); // reapply asam rules for all managed users with isActive = false or awaitingStructure defined const usersQuery = { $or: [{ awaitingStructure: { $ne: null } }, { isActive: { $ne: true } }] }; users = Meteor.users Chargement en cours @@ -2889,12 +2901,26 @@ export const checkAsams = new ValidatedMethod({ if (structure) { // If we have a structure, assign it to user and make them directly active const userData = { isActive: true }; if (asamUser.isActive === false) totalActivated += 1; if (asamUser.isActive === false) { totalActivated += 1; logger.info({ message: i18n.__('api.users.userActivated'), scope: 'system', method: 'checkAsams', params: { userId: asamUser._id, username: asamUser.username }, }); } // don't assign structure automatically if awaitingStructure !== structure if (!asamUser.awaitingStructure || asamUser.awaitingStructure === structure._id) { userData.structure = structure._id; userData.awaitingStructure = null; totalAccepted += 1; logger.info({ message: i18n.__('api.users.structureSet'), scope: 'system', method: 'checkAsams', params: { userId: asamUser._id, username: asamUser.username, structure: structure.name }, }); } Meteor.users.update({ _id: asamUser._id }, { $set: userData }); Meteor.call('users.userUpdated', { userId: asamUser._id, data: userData, token: getToken() }, (err) => { Chargement en cours
app/imports/startup/i18n/en.i18n.json +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -273,6 +273,9 @@ "invalidUsername": "Invalid username: Platform administrator has been notified of this error", "reservedComplement": "This display name complement is not available", "displayNameAlreadyExists": "This display name complement is already used by one of your homonyms", "checkAsams": "Application of ASAM rules requested", "userActivated": "User account activated", "structureSet": "User structure set", "labels": { "id": "User Id", "username": "User Name", Chargement en cours
app/imports/startup/i18n/fr.i18n.json +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -272,6 +272,9 @@ "invalidUsername": "Nom d'utilisateur invalide: L'administrateur de la plateforme a été notifié du problème", "reservedComplement": "Ce complément de nom n'est pas disponible", "displayNameAlreadyExists": "Ce complément de nom est déjà utilisé par un de vos homonymes", "checkAsams": "Application des règles ASAM demandée", "userActivated": "Compte utilisateur activé", "structureSet": "Structure de l'utilisateur définie", "labels": { "id": "Id Utilisateur", "username": "Nom d'utilisateur", Chargement en cours