mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
fix: #7844, add uid to events, log plugin install/uninstall events
This commit is contained in:
@@ -14,6 +14,8 @@ const events = module.exports;
|
|||||||
events.types = [
|
events.types = [
|
||||||
'plugin-activate',
|
'plugin-activate',
|
||||||
'plugin-deactivate',
|
'plugin-deactivate',
|
||||||
|
'plugin-install',
|
||||||
|
'plugin-uninstall',
|
||||||
'restart',
|
'restart',
|
||||||
'build',
|
'build',
|
||||||
'config-change',
|
'config-change',
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ const util = require('util');
|
|||||||
const db = require('../database');
|
const db = require('../database');
|
||||||
const meta = require('../meta');
|
const meta = require('../meta');
|
||||||
const pubsub = require('../pubsub');
|
const pubsub = require('../pubsub');
|
||||||
const events = require('../events');
|
|
||||||
|
|
||||||
const statAsync = util.promisify(fs.stat);
|
const statAsync = util.promisify(fs.stat);
|
||||||
|
|
||||||
@@ -57,10 +56,6 @@ module.exports = function (Plugins) {
|
|||||||
}
|
}
|
||||||
meta.reloadRequired = true;
|
meta.reloadRequired = true;
|
||||||
Plugins.fireHook(isActive ? 'action:plugin.deactivate' : 'action:plugin.activate', { id: id });
|
Plugins.fireHook(isActive ? 'action:plugin.deactivate' : 'action:plugin.activate', { id: id });
|
||||||
await events.log({
|
|
||||||
type: 'plugin-' + (isActive ? 'deactivate' : 'activate'),
|
|
||||||
text: id,
|
|
||||||
});
|
|
||||||
return { id: id, active: !isActive };
|
return { id: id, active: !isActive };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -129,14 +129,27 @@ SocketAdmin.themes.set = function (socket, data, callback) {
|
|||||||
], callback);
|
], callback);
|
||||||
};
|
};
|
||||||
|
|
||||||
SocketAdmin.plugins.toggleActive = function (socket, plugin_id, callback) {
|
SocketAdmin.plugins.toggleActive = async function (socket, plugin_id) {
|
||||||
require('../posts/cache').reset();
|
require('../posts/cache').reset();
|
||||||
plugins.toggleActive(plugin_id, callback);
|
const data = await plugins.toggleActive(plugin_id);
|
||||||
|
await events.log({
|
||||||
|
type: 'plugin-' + (data.active ? 'activate' : 'deactivate'),
|
||||||
|
text: plugin_id,
|
||||||
|
uid: socket.uid,
|
||||||
|
});
|
||||||
|
return data;
|
||||||
};
|
};
|
||||||
|
|
||||||
SocketAdmin.plugins.toggleInstall = function (socket, data, callback) {
|
SocketAdmin.plugins.toggleInstall = async function (socket, data) {
|
||||||
require('../posts/cache').reset();
|
require('../posts/cache').reset();
|
||||||
plugins.toggleInstall(data.id, data.version, callback);
|
const pluginData = await plugins.toggleInstall(data.id, data.version);
|
||||||
|
await events.log({
|
||||||
|
type: 'plugin-' + (pluginData.installed ? 'install' : 'uninstall'),
|
||||||
|
text: data.id,
|
||||||
|
version: data.version,
|
||||||
|
uid: socket.uid,
|
||||||
|
});
|
||||||
|
return pluginData;
|
||||||
};
|
};
|
||||||
|
|
||||||
SocketAdmin.plugins.getActive = function (socket, data, callback) {
|
SocketAdmin.plugins.getActive = function (socket, data, callback) {
|
||||||
@@ -398,3 +411,5 @@ SocketAdmin.uploads.delete = function (socket, pathToFile, callback) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
module.exports = SocketAdmin;
|
module.exports = SocketAdmin;
|
||||||
|
|
||||||
|
require('../promisify')(SocketAdmin);
|
||||||
|
|||||||
Reference in New Issue
Block a user