mirror of
				https://github.com/MichMich/MagicMirror.git
				synced 2025-10-31 18:54:51 +00:00 
			
		
		
		
	Module: Calendar
The calendar module is one of the default modules of the MagicMirror.
This module displays events from a public .ical calendar. It can combine multiple calendars.
Using the module
To use this module, add it to the modules array in the config/config.js file:
modules: [
	{
		module: 'calendar',
		position: 'top_left',	// This can be any of the regions. Best results in left or right regions.
		config: {
			// The config property is optional.
			// If no config is set, an example calendar is shown.
			// See 'Configuration options' for more information.
		}
	}
]
Configuration options
The following properties can be configured:
| Option | Description | 
|---|---|
| maximumEntries | The maximum number of events shown. Possible values: 0-100Default value: 10 | 
| maximumNumberOfDays | The maximum number of days in the future. Default value: 365 | 
| displaySymbol | Display a symbol in front of an entry. Possible values: trueorfalseDefault value: true | 
| defaultSymbol | The default symbol. Possible values: See Font Awsome website. Default value: calendar | 
| maxTitleLength | The maximum title length. Possible values: 10-50Default value: 25 | 
| fetchInterval | How often does the content needs to be fetched? (Milliseconds) Possible values: 1000-86400000Default value: 300000(5 minutes) | 
| animationSpeed | Speed of the update animation. (Milliseconds) Possible values: 0-5000Default value: 2000(2 seconds) | 
| fade | Fade the future events to black. (Gradient) Possible values: trueorfalseDefault value: true | 
| fadePoint | Where to start fade? Possible values: 0(top of the list) -1(bottom of list)Default value: 0.25 | 
| calendars | The list of calendars. Possible values: An array, see calendar configuration below. Default value: An example calendar. | 
| titleReplace | An object of textual replacements applied to the tile of the event. This allow to remove or replace certains words in the title. Example: 
					titleReplace: {'Birthday of ' : '', 'foo':'bar'}
				 | 
| displayRepeatingCountTitle | Show count title for yearly repeating events (e.g. "X. Birthday", "X. Anniversary") Possible values: trueorfalseDefault value: false | 
| dateFormat | Format to use for the date of events (when using absolute dates) Possible values: See Moment.js formats Default value: MMM Do(e.g. Jan 18th) | 
| timeFormat | Display event times as absolute dates, or relative time Possible values: absoluteorrelativeDefault value: relative | 
| getRelative | How much time (in hours) should be left until calendar events start getting relative? Possible values: 0(events stay absolute) -48(48 hours before the event starts)Default value: 6 | 
| urgency | When using a timeFormat of absolute, theurgencysetting allows you to display events within a specific time frame asrelativeThis allows events within a certain time frame to be displayed as relative (in xx days) while others are displayed as absolute datesPossible values: a positive integer representing the number of days for which you want a relative date, for example 7(for 7 days)Default value: 0(disabled) | 
| broadcastEvents | If this property is set to true, the calendar will broadcast all the events to all other modules with the notification message: CALENDAR_EVENTS. The event objects are stored in an array and contain the following fields:title,startDate,endDate,fullDayEvent,locationandgeo.Possible values: true,falseDefault value: true | 
Calendar configuration
The calendars property contains an array of the configured calendars.
Default value:
config: {
	calendars: [
		{
			url: 'http://www.calendarlabs.com/templates/ical/US-Holidays.ics',
			symbol: 'calendar',
		},
	],
}
Calendar configuration options:
| Option | Description | 
|---|---|
| url | The url of the calendar .ical. This property is required. Possible values: Any public accessble .ical calendar. | 
|  symbol  | The symbol to show in front of an event. This property is optional. Possible values: See Font Awesome website. | 
|  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. |