diff --git a/modules/default/calendar/README.md b/modules/default/calendar/README.md index b2bb5c7f..2b5dd242 100755 --- a/modules/default/calendar/README.md +++ b/modules/default/calendar/README.md @@ -30,6 +30,7 @@ The following properties can be configured: | `maximumNumberOfDays` | The maximum number of days in the future.

**Default value:** `365` | `displaySymbol` | Display a symbol in front of an entry.

**Possible values:** `true` or `false`
**Default value:** `true` | `defaultSymbol` | The default symbol.

**Possible values:** See [Font Awsome](http://fontawesome.io/icons/) website.
**Default value:** `calendar` +| `showLocation` | Whether to show event locations.

**Possible values:** `true` or `false`
**Default value:** `false` | `maxTitleLength` | The maximum title length.

**Possible values:** `10` - `50`
**Default value:** `25` | `wrapEvents` | Wrap event titles to multiple lines. Breaks lines at the length defined by `maxTitleLength`.

**Possible values:** `true` or `false`
**Default value:** `false` | `maxTitleLines` | The maximum number of lines a title will wrap vertically before being cut (Only enabled if `wrapEvents` is also enabled).

**Possible values:** `0` - `10`
**Default value:** `3` diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index d584a9ed..13df45e8 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -15,6 +15,7 @@ Module.register("calendar", { maximumNumberOfDays: 365, displaySymbol: true, defaultSymbol: "calendar", // Fontawesome Symbol see http://fontawesome.io/cheatsheet/ + showLocation: false, displayRepeatingCountTitle: false, defaultRepeatingCountTitle: "", maxTitleLength: 25, @@ -379,6 +380,31 @@ Module.register("calendar", { currentFadeStep = e - startFade; eventWrapper.style.opacity = 1 - (1 / fadeSteps * currentFadeStep); } + + if (this.config.showLocation) { + if (event.location !== false) { + var locationRow = document.createElement("tr"); + locationRow.className = "normal xsmall light"; + + if (this.config.displaySymbol) { + var symbolCell = document.createElement("td"); + locationRow.appendChild(symbolCell); + } + + var descCell = document.createElement("td"); + descCell.className = "location"; + descCell.colSpan = "2"; + descCell.innerHTML = event.location; + locationRow.appendChild(descCell); + + wrapper.appendChild(locationRow); + + if (e >= startFade) { + currentFadeStep = e - startFade; + locationRow.style.opacity = 1 - (1 / fadeSteps * currentFadeStep); + } + } + } } return wrapper;