use request and a remote ep plugin only endpoint
parent
b61d8d99d1
commit
c7061e47db
|
@ -1,6 +1,7 @@
|
|||
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
||||
var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
|
||||
var npm = require("npm");
|
||||
var request = require("request");
|
||||
|
||||
var npmIsLoaded = false;
|
||||
var withNpm = function (npmfn) {
|
||||
|
@ -60,17 +61,16 @@ exports.availablePlugins = null;
|
|||
var cacheTimestamp = 0;
|
||||
|
||||
exports.getAvailablePlugins = function(maxCacheAge, cb) {
|
||||
withNpm(function (er) {
|
||||
request("http://etherpad.org/plugins.json", function(er, response, plugins){
|
||||
if (er) return cb && cb(er);
|
||||
if(exports.availablePlugins && maxCacheAge && Math.round(+new Date/1000)-cacheTimestamp <= maxCacheAge) {
|
||||
return cb && cb(null, exports.availablePlugins)
|
||||
}
|
||||
npm.commands.search(['ep_'], /*silent?*/true, function(er, results) {
|
||||
if(er) return cb && cb(er);
|
||||
exports.availablePlugins = results;
|
||||
console.log("plugins", plugins);
|
||||
plugins = JSON.parse(plugins);
|
||||
exports.availablePlugins = plugins;
|
||||
cacheTimestamp = Math.round(+new Date/1000);
|
||||
cb && cb(null, results)
|
||||
})
|
||||
cb && cb(null, plugins)
|
||||
});
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue