Files
Cue-View/src/plugins.js
T
2021-10-18 05:22:09 -04:00

38 lines
1.0 KiB
JavaScript

let fs = require('fs');
let DEVICE = require("./device.js");
let VIEW = require("./view.js");
var allPlugins = {};
module.exports.all = allPlugins;
module.exports.init = function(callback){
console.log("Loading plugin files... "+__dirname+"/../plugins")
fs.readdir(__dirname+"/../plugins", function(err, files){
for(var i in files){
var plugin = files[i];
if(plugin[0]!="."){
console.log(i+" "+plugin);
allPlugins[plugin] = require(__dirname+"/../plugins/"+plugin+"/"+plugin+".js");
allPlugins[plugin].deviceInfoUpdate = function(device, param, value){
DEVICE.infoUpdate(device, param, value)
}
allPlugins[plugin].draw = function(device){
VIEW.draw(device);
}
allPlugins[plugin].template = ejs.compile(fs.readFileSync(__dirname+"/../plugins/"+plugin+"/"+plugin+".html", 'utf8'));
if(allPlugins[plugin].heartbeatInterval==undefined || allPlugins[plugin].heartbeatInterval<50){
allPlugins[plugin].heartbeatInterval = 5000;
}
}
}
callback();
});
}