diff --git a/back/models/account.js b/back/models/account.js index 64b59e704..7cc196852 100644 --- a/back/models/account.js +++ b/back/models/account.js @@ -12,11 +12,23 @@ module.exports = Self => { message: `A client with that Web User name already exists` }); - Self.observe('before save', (ctx, next) => { + Self.observe('before save', async function(ctx) { if (ctx.currentInstance && ctx.currentInstance.id && ctx.data && ctx.data.password) ctx.data.password = md5(ctx.data.password); - next(); + if (!ctx.isNewInstance && ctx.data && (ctx.data.name || ctx.data.active)) { + let instance = JSON.parse(JSON.stringify(ctx.currentInstance)); + let userId = ctx.options.accessToken.userId; + let logRecord = { + originFk: ctx.currentInstance.id, + userFk: userId, + action: 'update', + changedModel: 'Account', + oldInstance: {name: instance.name, active: instance.active}, + newInstance: ctx.data + }; + await Self.app.models.ClientLog.create(logRecord); + } }); Self.remoteMethod('getCurrentUserData', {