mirror of
https://github.com/MichMich/MagicMirror.git
synced 2025-06-29 12:39:45 +00:00
Merge branch 'develop' into russian_translations2
This commit is contained in:
commit
d019f88e26
@ -5,6 +5,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|||||||
## [2.1.1] - Unreleased
|
## [2.1.1] - Unreleased
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
- Add loaded function to modules, providing an async callback.
|
||||||
- Russian Translation
|
- Russian Translation
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
30
js/app.js
30
js/app.js
@ -66,7 +66,7 @@ var App = function() {
|
|||||||
*
|
*
|
||||||
* argument module string - The name of the module (including subpath).
|
* argument module string - The name of the module (including subpath).
|
||||||
*/
|
*/
|
||||||
var loadModule = function(module) {
|
var loadModule = function(module, callback) {
|
||||||
|
|
||||||
var elements = module.split("/");
|
var elements = module.split("/");
|
||||||
var moduleName = elements[elements.length - 1];
|
var moduleName = elements[elements.length - 1];
|
||||||
@ -103,6 +103,10 @@ var App = function() {
|
|||||||
m.setName(moduleName);
|
m.setName(moduleName);
|
||||||
m.setPath(path.resolve(moduleFolder));
|
m.setPath(path.resolve(moduleFolder));
|
||||||
nodeHelpers.push(m);
|
nodeHelpers.push(m);
|
||||||
|
|
||||||
|
m.loaded(callback);
|
||||||
|
} else {
|
||||||
|
callback();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -111,14 +115,24 @@ var App = function() {
|
|||||||
*
|
*
|
||||||
* argument module string - The name of the module (including subpath).
|
* argument module string - The name of the module (including subpath).
|
||||||
*/
|
*/
|
||||||
var loadModules = function(modules) {
|
var loadModules = function(modules, callback) {
|
||||||
console.log("Loading module helpers ...");
|
console.log("Loading module helpers ...");
|
||||||
|
|
||||||
for (var m in modules) {
|
var loadNextModule = function() {
|
||||||
loadModule(modules[m]);
|
if (modules.length > 0) {
|
||||||
}
|
var nextModule = modules[0];
|
||||||
|
loadModule(nextModule, function() {
|
||||||
|
modules = modules.slice(1);
|
||||||
|
loadNextModule();
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// All modules are loaded
|
||||||
console.log("All module helpers loaded.");
|
console.log("All module helpers loaded.");
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
loadNextModule();
|
||||||
};
|
};
|
||||||
|
|
||||||
/* cmpVersions(a,b)
|
/* cmpVersions(a,b)
|
||||||
@ -164,8 +178,7 @@ var App = function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
loadModules(modules);
|
loadModules(modules, function() {
|
||||||
|
|
||||||
var server = new Server(config, function(app, io) {
|
var server = new Server(config, function(app, io) {
|
||||||
console.log("Server started ...");
|
console.log("Server started ...");
|
||||||
|
|
||||||
@ -184,6 +197,7 @@ var App = function() {
|
|||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -96,6 +96,21 @@ requiresVersion: "2.1.0",
|
|||||||
####`init()`
|
####`init()`
|
||||||
This method is called when a module gets instantiated. In most cases you do not need to subclass this method.
|
This method is called when a module gets instantiated. In most cases you do not need to subclass this method.
|
||||||
|
|
||||||
|
####`loaded(callback)`
|
||||||
|
|
||||||
|
*Introduced in version: 2.1.1.*
|
||||||
|
|
||||||
|
This method is called when a module is loaded. Subsequent modules in the config are not yet loaded. The `callback` function MUST be called when the module is done loading. In most cases you do not need to subclass this method.
|
||||||
|
|
||||||
|
**Example:**
|
||||||
|
````javascript
|
||||||
|
loaded: function(callback) {
|
||||||
|
this.finishLoading();
|
||||||
|
Log.log(this.name + ' is loaded!');
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
````
|
||||||
|
|
||||||
####`start()`
|
####`start()`
|
||||||
This method is called when all modules are loaded an the system is ready to boot up. Keep in mind that the dom object for the module is not yet created. The start method is a perfect place to define any additional module properties:
|
This method is called when all modules are loaded an the system is ready to boot up. Keep in mind that the dom object for the module is not yet created. The start method is a perfect place to define any additional module properties:
|
||||||
|
|
||||||
|
@ -85,7 +85,12 @@ var Fetcher = function(url, reloadInterval, encoding) {
|
|||||||
nodeVersion = Number(process.version.match(/^v(\d+\.\d+)/)[1]);
|
nodeVersion = Number(process.version.match(/^v(\d+\.\d+)/)[1]);
|
||||||
headers = {"User-Agent": "Mozilla/5.0 (Node.js "+ nodeVersion + ") MagicMirror/" + global.version + " (https://github.com/MichMich/MagicMirror/)"}
|
headers = {"User-Agent": "Mozilla/5.0 (Node.js "+ nodeVersion + ") MagicMirror/" + global.version + " (https://github.com/MichMich/MagicMirror/)"}
|
||||||
|
|
||||||
request({uri: url, encoding: null, headers: headers}).pipe(iconv.decodeStream(encoding)).pipe(parser);
|
request({uri: url, encoding: null, headers: headers})
|
||||||
|
.on("error", function(error) {
|
||||||
|
fetchFailedCallback(self, error);
|
||||||
|
scheduleTimer();
|
||||||
|
})
|
||||||
|
.pipe(iconv.decodeStream(encoding)).pipe(parser);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
5
modules/node_modules/node_helper/index.js
generated
vendored
5
modules/node_modules/node_helper/index.js
generated
vendored
@ -14,6 +14,11 @@ NodeHelper = Class.extend({
|
|||||||
console.log("Initializing new module helper ...");
|
console.log("Initializing new module helper ...");
|
||||||
},
|
},
|
||||||
|
|
||||||
|
loaded: function(callback) {
|
||||||
|
console.log("Module helper loaded: " + this.name);
|
||||||
|
callback();
|
||||||
|
},
|
||||||
|
|
||||||
start: function() {
|
start: function() {
|
||||||
console.log("Staring module helper: " + this.name);
|
console.log("Staring module helper: " + this.name);
|
||||||
},
|
},
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "magicmirror",
|
"name": "magicmirror",
|
||||||
"version": "2.1.0",
|
"version": "2.1.1",
|
||||||
"description": "A modular interface for smart mirrors.",
|
"description": "A modular interface for smart mirrors.",
|
||||||
"main": "js/electron.js",
|
"main": "js/electron.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user