2023-09-07 00:13:09 +02:00

45 lines
1.3 KiB
JavaScript

'use strict';
const { getService } = require('../utils');
const sendDidInviteUser = async () => {
const numberOfUsers = await getService('user').count();
const numberOfRoles = await getService('role').count();
strapi.telemetry.send('didInviteUser', {
groupProperties: { numberOfRoles, numberOfUsers },
});
};
const sendDidUpdateRolePermissions = async () => {
strapi.telemetry.send('didUpdateRolePermissions');
};
const sendDidChangeInterfaceLanguage = async () => {
const languagesInUse = await getService('user').getLanguagesInUse();
// This event is anonymous
strapi.telemetry.send('didChangeInterfaceLanguage', { userProperties: { languagesInUse } });
};
const sendUpdateProjectInformation = async () => {
const numberOfActiveAdminUsers = await getService('user').count({ isActive: true });
const numberOfAdminUsers = await getService('user').count();
strapi.telemetry.send('didUpdateProjectInformation', {
groupProperties: { numberOfActiveAdminUsers, numberOfAdminUsers },
});
};
const startCron = (strapi) => {
strapi.cron.add({
'0 0 0 * * *': () => sendUpdateProjectInformation(),
});
};
module.exports = {
sendDidInviteUser,
sendDidUpdateRolePermissions,
sendDidChangeInterfaceLanguage,
sendUpdateProjectInformation,
startCron,
};