/admin/plugins/info: Move logic to `.js` file
parent
c5f0274116
commit
cd1d322af4
|
@ -3,14 +3,15 @@
|
||||||
const eejs = require('../../eejs');
|
const eejs = require('../../eejs');
|
||||||
const settings = require('../../utils/Settings');
|
const settings = require('../../utils/Settings');
|
||||||
const installer = require('../../../static/js/pluginfw/installer');
|
const installer = require('../../../static/js/pluginfw/installer');
|
||||||
const plugins = require('../../../static/js/pluginfw/plugin_defs');
|
const pluginDefs = require('../../../static/js/pluginfw/plugin_defs');
|
||||||
|
const plugins = require('../../../static/js/pluginfw/plugins');
|
||||||
const semver = require('semver');
|
const semver = require('semver');
|
||||||
const UpdateCheck = require('../../utils/UpdateCheck');
|
const UpdateCheck = require('../../utils/UpdateCheck');
|
||||||
|
|
||||||
exports.expressCreateServer = (hookName, args, cb) => {
|
exports.expressCreateServer = (hookName, args, cb) => {
|
||||||
args.app.get('/admin/plugins', (req, res) => {
|
args.app.get('/admin/plugins', (req, res) => {
|
||||||
res.send(eejs.require('ep_etherpad-lite/templates/admin/plugins.html', {
|
res.send(eejs.require('ep_etherpad-lite/templates/admin/plugins.html', {
|
||||||
plugins: plugins.plugins,
|
plugins: pluginDefs.plugins,
|
||||||
req,
|
req,
|
||||||
errors: [],
|
errors: [],
|
||||||
}));
|
}));
|
||||||
|
@ -23,6 +24,10 @@ exports.expressCreateServer = (hookName, args, cb) => {
|
||||||
res.send(eejs.require('ep_etherpad-lite/templates/admin/plugins-info.html', {
|
res.send(eejs.require('ep_etherpad-lite/templates/admin/plugins-info.html', {
|
||||||
gitCommit,
|
gitCommit,
|
||||||
epVersion,
|
epVersion,
|
||||||
|
installedPlugins: `<pre>${plugins.formatPlugins().replace(/, /g, '\n')}</pre>`,
|
||||||
|
installedParts: `<pre>${plugins.formatParts()}</pre>`,
|
||||||
|
installedServerHooks: `<div>${plugins.formatHooks()}</div>`,
|
||||||
|
installedClientHooks: `<div>${plugins.formatHooks('client_hooks')}</div>`,
|
||||||
latestVersion: UpdateCheck.getLatestVersion(),
|
latestVersion: UpdateCheck.getLatestVersion(),
|
||||||
req,
|
req,
|
||||||
}));
|
}));
|
||||||
|
@ -40,7 +45,7 @@ exports.socketio = (hookName, args, cb) => {
|
||||||
socket.on('getInstalled', (query) => {
|
socket.on('getInstalled', (query) => {
|
||||||
// send currently installed plugins
|
// send currently installed plugins
|
||||||
const installed =
|
const installed =
|
||||||
Object.keys(plugins.plugins).map((plugin) => plugins.plugins[plugin].package);
|
Object.keys(pluginDefs.plugins).map((plugin) => pluginDefs.plugins[plugin].package);
|
||||||
|
|
||||||
socket.emit('results:installed', {installed});
|
socket.emit('results:installed', {installed});
|
||||||
});
|
});
|
||||||
|
@ -50,11 +55,11 @@ exports.socketio = (hookName, args, cb) => {
|
||||||
try {
|
try {
|
||||||
const results = await installer.getAvailablePlugins(/* maxCacheAge:*/ 60 * 10);
|
const results = await installer.getAvailablePlugins(/* maxCacheAge:*/ 60 * 10);
|
||||||
|
|
||||||
const updatable = Object.keys(plugins.plugins).filter((plugin) => {
|
const updatable = Object.keys(pluginDefs.plugins).filter((plugin) => {
|
||||||
if (!results[plugin]) return false;
|
if (!results[plugin]) return false;
|
||||||
|
|
||||||
const latestVersion = results[plugin].version;
|
const latestVersion = results[plugin].version;
|
||||||
const currentVersion = plugins.plugins[plugin].package.version;
|
const currentVersion = pluginDefs.plugins[plugin].package.version;
|
||||||
|
|
||||||
return semver.gt(latestVersion, currentVersion);
|
return semver.gt(latestVersion, currentVersion);
|
||||||
});
|
});
|
||||||
|
@ -82,7 +87,7 @@ exports.socketio = (hookName, args, cb) => {
|
||||||
const results = await installer.search(query.searchTerm, /* maxCacheAge:*/ 60 * 10);
|
const results = await installer.search(query.searchTerm, /* maxCacheAge:*/ 60 * 10);
|
||||||
let res = Object.keys(results)
|
let res = Object.keys(results)
|
||||||
.map((pluginName) => results[pluginName])
|
.map((pluginName) => results[pluginName])
|
||||||
.filter((plugin) => !plugins.plugins[plugin.name]);
|
.filter((plugin) => !pluginDefs.plugins[plugin.name]);
|
||||||
res = sortPluginList(res, query.sortBy, query.sortDir)
|
res = sortPluginList(res, query.sortBy, query.sortDir)
|
||||||
.slice(query.offset, query.offset + query.limit);
|
.slice(query.offset, query.offset + query.limit);
|
||||||
socket.emit('results:search', {results: res, query});
|
socket.emit('results:search', {results: res, query});
|
||||||
|
|
|
@ -1,6 +1,3 @@
|
||||||
<%
|
|
||||||
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
|
||||||
%>
|
|
||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
@ -31,17 +28,17 @@
|
||||||
<p>Git sha: <a href='https://github.com/ether/etherpad-lite/commit/<%= gitCommit %>'><%= gitCommit %></a></p>
|
<p>Git sha: <a href='https://github.com/ether/etherpad-lite/commit/<%= gitCommit %>'><%= gitCommit %></a></p>
|
||||||
|
|
||||||
<h2 data-l10n-id="admin_plugins_info.plugins">Installed plugins</h2>
|
<h2 data-l10n-id="admin_plugins_info.plugins">Installed plugins</h2>
|
||||||
<pre><%- plugins.formatPlugins().replace(/, /g,"\n") %></pre>
|
<%- installedPlugins %>
|
||||||
|
|
||||||
<h2 data-l10n-id="admin_plugins_info.parts">Installed parts</h2>
|
<h2 data-l10n-id="admin_plugins_info.parts">Installed parts</h2>
|
||||||
<pre><%= plugins.formatParts() %></pre>
|
<%- installedParts %>
|
||||||
|
|
||||||
<h2 data-l10n-id="admin_plugins_info.hooks">Installed hooks</h2>
|
<h2 data-l10n-id="admin_plugins_info.hooks">Installed hooks</h2>
|
||||||
<h3 data-l10n-id="admin_plugins_info.hooks_server">Server-side hooks</h3>
|
<h3 data-l10n-id="admin_plugins_info.hooks_server">Server-side hooks</h3>
|
||||||
<div><%- plugins.formatHooks() %></div>
|
<%- installedServerHooks %>
|
||||||
|
|
||||||
<h3 data-l10n-id="admin_plugins_info.hooks_client">Client-side hooks</h3>
|
<h3 data-l10n-id="admin_plugins_info.hooks_client">Client-side hooks</h3>
|
||||||
<div><%- plugins.formatHooks("client_hooks") %></div>
|
<%- installedClientHooks %>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in New Issue