diff --git a/CHANGELOG.md b/CHANGELOG.md
index 92f80d7e..6fdbafa7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -18,6 +18,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Added some missing translaton strings in the sv.json file.
### Added
+- Calendar-specific support for `maximumEntries`, and ` maximumNumberOfDays`
- Add loaded function to modules, providing an async callback.
- Made default newsfeed module aware of gesture events from [MMM-Gestures](https://github.com/thobach/MMM-Gestures)
- Add use pm2 for manager process into Installer RaspberryPi script
diff --git a/modules/default/calendar/README.md b/modules/default/calendar/README.md
index d671c741..afbf3085 100644
--- a/modules/default/calendar/README.md
+++ b/modules/default/calendar/README.md
@@ -74,4 +74,5 @@ config: {
-| `repeatingCountTitle` | The count title for yearly repating events in this calendar.
**Example:** `'Birthday'`
-| `user` | The username for HTTP Basic authentication.
-| `pass` | The password for HTTP Basic authentication.
-
+ -| `maximumEntries` | The maximum number of events shown. Overrides global setting. **Possible values:** `0` - `100`
+ -| `maximumNumberOfDays` | The maximum number of days in the future. Overrides global setting
diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js
index 5ea57e07..72808c1f 100644
--- a/modules/default/calendar/calendar.js
+++ b/modules/default/calendar/calendar.js
@@ -69,7 +69,13 @@ Module.register("calendar", {
for (var c in this.config.calendars) {
var calendar = this.config.calendars[c];
calendar.url = calendar.url.replace("webcal://", "http://");
- this.addCalendar(calendar.url, calendar.user, calendar.pass);
+
+ var calendarConfig = {
+ maximumEntries: calendar.maximumEntries,
+ maximumNumberOfDays: calendar.maximumNumberOfDays,
+ };
+
+ this.addCalendar(calendar.url, calendar.user, calendar.pass, calendarConfig);
}
this.calendarData = {};
@@ -307,11 +313,11 @@ Module.register("calendar", {
*
* argument url sting - Url to add.
*/
- addCalendar: function (url, user, pass) {
+ addCalendar: function (url, user, pass, calendarConfig) {
this.sendSocketNotification("ADD_CALENDAR", {
url: url,
- maximumEntries: this.config.maximumEntries,
- maximumNumberOfDays: this.config.maximumNumberOfDays,
+ maximumEntries: calendarConfig.maximumEntries || this.config.maximumEntries,
+ maximumNumberOfDays: calendarConfig.maximumNumberOfDays || this.config.maximumNumberOfDays,
fetchInterval: this.config.fetchInterval,
user: user,
pass: pass