Merge branch 'develop' of https://github.com/MichMich/MagicMirror into develop

This commit is contained in:
Michael Teeuw
2020-04-01 09:58:55 +02:00
35 changed files with 618 additions and 445 deletions

View File

@@ -14,7 +14,7 @@ var path = require("path");
require("module-alias/register");
// add timestamps in front of log messages
require("console-stamp")(console, "HH:MM:ss.l");
require("console-stamp")(console, "yyyy-mm-dd HH:MM:ss.l");
// Get version number.
global.version = JSON.parse(fs.readFileSync("package.json", "utf8")).version;
@@ -111,10 +111,10 @@ var App = function() {
var elements = module.split("/");
var moduleName = elements[elements.length - 1];
var moduleFolder = __dirname + "/../modules/" + module;
var moduleFolder = __dirname + "/../modules/" + module;
if (defaultModules.indexOf(moduleName) !== -1) {
moduleFolder = __dirname + "/../modules/default/" + module;
moduleFolder = __dirname + "/../modules/default/" + module;
}
var helperPath = moduleFolder + "/node_helper.js";
@@ -262,7 +262,7 @@ var App = function() {
*/
process.on("SIGINT", () => {
console.log("[SIGINT] Received. Shutting down server...");
setTimeout(() => { process.exit(0); }, 3000); // Force quit after 3 seconds
setTimeout(() => { process.exit(0); }, 3000); // Force quit after 3 seconds
this.stop();
process.exit(0);
});
@@ -271,7 +271,7 @@ var App = function() {
*/
process.on("SIGTERM", () => {
console.log("[SIGTERM] Received. Shutting down server...");
setTimeout(() => { process.exit(0); }, 3000); // Force quit after 3 seconds
setTimeout(() => { process.exit(0); }, 3000); // Force quit after 3 seconds
this.stop();
process.exit(0);
});

View File

@@ -1,5 +1,3 @@
/* jshint esversion: 6 */
"use strict";
const electron = require("electron");

View File

@@ -83,10 +83,10 @@ var Loader = (function() {
var elements = module.split("/");
var moduleName = elements[elements.length - 1];
var moduleFolder = config.paths.modules + "/" + module;
var moduleFolder = config.paths.modules + "/" + module;
if (defaultModules.indexOf(moduleName) !== -1) {
moduleFolder = config.paths.modules + "/default/" + module;
moduleFolder = config.paths.modules + "/default/" + module;
}
if (moduleData.disabled === true) {
@@ -172,7 +172,7 @@ var Loader = (function() {
*/
var loadFile = function(fileName, callback) {
var extension = fileName.slice((Math.max(0, fileName.lastIndexOf(".")) || Infinity) + 1);
var extension = fileName.slice((Math.max(0, fileName.lastIndexOf(".")) || Infinity) + 1);
switch (extension.toLowerCase()) {
case "js":

View File

@@ -1,5 +1,4 @@
/* global Log, Loader, Module, config, defaults */
/* jshint -W020, esversion: 6 */
/* Magic Mirror
* Main System
@@ -306,7 +305,9 @@ var MM = (function() {
module.showHideTimer = setTimeout(function() {
if (typeof callback === "function") { callback(); }
}, speed);
} else {
// invoke callback
if (typeof callback === "function") { callback(); }
}
};
@@ -377,7 +378,7 @@ var MM = (function() {
*
* return array - Filtered collection of modules.
*/
var exceptWithClass = function(className) {
var exceptWithClass = function(className) {
return modulesByClass(className, false);
};
@@ -439,10 +440,10 @@ var MM = (function() {
});
};
if (typeof modules.withClass === "undefined") { Object.defineProperty(modules, "withClass", {value: withClass, enumerable: false}); }
if (typeof modules.exceptWithClass === "undefined") { Object.defineProperty(modules, "exceptWithClass", {value: exceptWithClass, enumerable: false}); }
if (typeof modules.exceptModule === "undefined") { Object.defineProperty(modules, "exceptModule", {value: exceptModule, enumerable: false}); }
if (typeof modules.enumerate === "undefined") { Object.defineProperty(modules, "enumerate", {value: enumerate, enumerable: false}); }
if (typeof modules.withClass === "undefined") { Object.defineProperty(modules, "withClass", {value: withClass, enumerable: false}); }
if (typeof modules.exceptWithClass === "undefined") { Object.defineProperty(modules, "exceptWithClass", {value: exceptWithClass, enumerable: false}); }
if (typeof modules.exceptModule === "undefined") { Object.defineProperty(modules, "exceptModule", {value: exceptModule, enumerable: false}); }
if (typeof modules.enumerate === "undefined") { Object.defineProperty(modules, "enumerate", {value: enumerate, enumerable: false}); }
};
return {

View File

@@ -417,8 +417,11 @@ var Module = Class.extend({
callback = callback || function () { };
options = options || {};
this.resume();
MM.showModule(this, speed, callback, options);
var self = this;
MM.showModule(this, speed, function () {
self.resume();
callback;
}, options);
}
});

View File

@@ -101,9 +101,9 @@ NodeHelper = Class.extend({
var onevent = socket.onevent;
socket.onevent = function(packet) {
var args = packet.data || [];
onevent.call(this, packet); // original call
onevent.call(this, packet); // original call
packet.data = ["*"].concat(args);
onevent.call(this, packet); // additional call to catch-all
onevent.call(this, packet); // additional call to catch-all
};
// register catch all.

View File

@@ -7,8 +7,6 @@
var express = require("express");
var app = require("express")();
var server = require("http").Server(app);
var io = require("socket.io")(server);
var path = require("path");
var ipfilter = require("express-ipfilter").IpFilter;
var fs = require("fs");
@@ -22,6 +20,18 @@ var Server = function(config, callback) {
port = process.env.MM_PORT;
}
var server = null;
if(config.useHttps){
var options = {
key: fs.readFileSync(config.httpsPrivateKey),
cert: fs.readFileSync(config.httpsCertificate)
};
server = require("https").Server(options, app);
}else{
server = require("http").Server(app);
}
var io = require("socket.io")(server);
console.log("Starting server on port " + port + " ... ");
server.listen(port, config.address ? config.address : "localhost");

View File

@@ -8,15 +8,17 @@ var MMSocket = function(moduleName) {
self.moduleName = moduleName;
// Private Methods
self.socket = io("/" + self.moduleName);
self.socket = io("/" + self.moduleName, {
path: window.location.pathname + "socket.io"
});
var notificationCallback = function() {};
var onevent = self.socket.onevent;
self.socket.onevent = function(packet) {
var args = packet.data || [];
onevent.call(this, packet); // original call
onevent.call(this, packet); // original call
packet.data = ["*"].concat(args);
onevent.call(this, packet); // additional call to catch-all
onevent.call(this, packet); // additional call to catch-all
};
// register catch all.