Merge pull request #671 from Nosrac/develop

Support calendar-specific maximumEntries and maximumNumberOfDays
This commit is contained in:
Michael Teeuw
2017-01-31 08:42:50 +01:00
committed by GitHub
3 changed files with 21 additions and 14 deletions

View File

@@ -18,6 +18,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Added some missing translaton strings in the sv.json file. - Added some missing translaton strings in the sv.json file.
### Added ### Added
- Calendar-specific support for `maximumEntries`, and ` maximumNumberOfDays`
- Add loaded function to modules, providing an async callback. - 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) - 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 - Add use pm2 for manager process into Installer RaspberryPi script

View File

@@ -65,13 +65,13 @@ config: {
#### Calendar configuration options: #### Calendar configuration options:
| Option | Description
-| Option | Description | --------------------- | -----------
-| --------------------- | ----------- | `url` | The url of the calendar .ical. This property is required. <br><br> **Possible values:** Any public accessble .ical calendar.
-| `url` | The url of the calendar .ical. This property is required. <br><br> **Possible values:** Any public accessble .ical calendar. | `symbol` | The symbol to show in front of an event. This property is optional. <br><br> **Possible values:** See [Font Awesome](http://fontawesome.io/icons/) website.
-| `symbol` | The symbol to show in front of an event. This property is optional. <br><br> **Possible values:** See [Font Awesome](http://fontawesome.io/icons/) website. | `color` | The font color of an event from this calendar. This property should be set if the config is set to colored: true. <br><br> **Possible values:** HEX, RGB or RGBA values (#efefef, rgb(242,242,242), rgba(242,242,242,0.5)).
-| `color` | The font color of an event from this calendar. This property should be set if the config is set to colored: true. <br><br> **Possible values:** HEX, RGB or RGBA values (#efefef, rgb(242,242,242), rgba(242,242,242,0.5)). | `repeatingCountTitle` | The count title for yearly repating events in this calendar. <br><br> **Example:** `'Birthday'`
-| `repeatingCountTitle` | The count title for yearly repating events in this calendar. <br><br> **Example:** `'Birthday'` | `user` | The username for HTTP Basic authentication.
-| `user` | The username for HTTP Basic authentication. | `pass` | The password 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

View File

@@ -69,7 +69,13 @@ Module.register("calendar", {
for (var c in this.config.calendars) { for (var c in this.config.calendars) {
var calendar = this.config.calendars[c]; var calendar = this.config.calendars[c];
calendar.url = calendar.url.replace("webcal://", "http://"); 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 = {}; this.calendarData = {};
@@ -307,11 +313,11 @@ Module.register("calendar", {
* *
* argument url sting - Url to add. * argument url sting - Url to add.
*/ */
addCalendar: function (url, user, pass) { addCalendar: function (url, user, pass, calendarConfig) {
this.sendSocketNotification("ADD_CALENDAR", { this.sendSocketNotification("ADD_CALENDAR", {
url: url, url: url,
maximumEntries: this.config.maximumEntries, maximumEntries: calendarConfig.maximumEntries || this.config.maximumEntries,
maximumNumberOfDays: this.config.maximumNumberOfDays, maximumNumberOfDays: calendarConfig.maximumNumberOfDays || this.config.maximumNumberOfDays,
fetchInterval: this.config.fetchInterval, fetchInterval: this.config.fetchInterval,
user: user, user: user,
pass: pass pass: pass