2022-12-20 17:40:55 +01:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
const auditLogContentType = require('./content-types/audit-log');
|
|
|
|
|
|
|
|
const provider = {
|
2022-12-21 12:37:47 +01:00
|
|
|
async register({ strapi }) {
|
2022-12-20 17:40:55 +01:00
|
|
|
strapi.container.get('content-types').add('admin::', { 'audit-log': auditLogContentType });
|
2022-12-20 19:16:22 +01:00
|
|
|
|
2022-12-22 16:02:37 +01:00
|
|
|
// Return the provider object
|
|
|
|
return {
|
|
|
|
async saveEvent(event) {
|
|
|
|
// Rewrite userId key to user
|
|
|
|
const auditLog = { ...event, user: event.userId };
|
|
|
|
delete auditLog.userId;
|
2022-12-20 19:16:22 +01:00
|
|
|
|
2022-12-22 16:02:37 +01:00
|
|
|
// Save to database
|
|
|
|
await strapi.entityService.create('admin::audit-log', { data: auditLog });
|
2022-12-20 19:16:22 +01:00
|
|
|
|
2022-12-22 16:02:37 +01:00
|
|
|
return this;
|
|
|
|
},
|
2022-12-22 10:44:03 +01:00
|
|
|
|
2022-12-22 20:08:14 +01:00
|
|
|
findMany(query) {
|
|
|
|
return strapi.entityService.findPage('admin::audit-log', {
|
|
|
|
populate: ['user'],
|
2022-12-23 11:54:32 +01:00
|
|
|
fields: ['action', 'date'],
|
2022-12-22 20:08:14 +01:00
|
|
|
...query,
|
|
|
|
});
|
|
|
|
},
|
2022-12-23 11:54:32 +01:00
|
|
|
|
|
|
|
findOne(id) {
|
|
|
|
return strapi.entityService.findOne('admin::audit-log', id, {
|
|
|
|
populate: ['user'],
|
|
|
|
fields: ['action', 'date', 'payload'],
|
|
|
|
});
|
|
|
|
},
|
2022-12-22 20:08:14 +01:00
|
|
|
};
|
2022-12-22 10:44:03 +01:00
|
|
|
},
|
2022-12-20 17:40:55 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
module.exports = provider;
|