2016-04-01 16:02:59 +02:00
# Module: Compliments
The `compliments` module is one of the default modules of the MagicMirror.
2016-04-03 19:52:13 +02:00
This module displays a random compliment.
2016-04-01 16:02:59 +02:00
## Using the module
To use this module, add it to the modules array in the `config/config.js` file:
````javascript
modules: [
{
2017-01-24 17:22:17 -03:00
module: "compliments",
position: "lower_third", // This can be any of the regions.
2016-04-01 16:02:59 +02:00
// Best results in one of the middle regions like: lower_third
config: {
// The config property is optional.
2017-05-18 18:14:43 +08:00
// If no config is set, the default compliments are shown.
2016-04-03 19:52:13 +02:00
// See 'Configuration options' for more information.
2016-04-01 16:02:59 +02:00
}
}
]
` ```
## Configuration options
The following properties can be configured:
2017-01-17 16:12:03 +01:00
| Option | Description
| ---------------- | -----------
| ` updateInterval` | How often does the compliment have to change? (Milliseconds) <br><br> **Possible values:** ` 1000` - ` 86400000` <br> **Default value:** ` 30000` (30 seconds)
| ` fadeSpeed` | Speed of the update animation. (Milliseconds) <br><br> **Possible values:**` 0` - ` 5000` <br> **Default value:** ` 4000` (4 seconds)
2017-02-05 19:29:35 -06:00
| ` compliments` | The list of compliments. <br><br> **Possible values:** An object with four arrays: ` morning`, ` afternoon`, ` evening` and ` anytime`. See _compliment configuration_ below. <br> **Default value:** See _compliment configuration_ below.
| ` remoteFile` | External file from which to load the compliments <br><br> **Possible values:** Path to a JSON file containing compliments, configured as per the value of the _compliments configuration_ (see below). An object with four arrays: ` morning`, ` afternoon`, ` evening` and ` anytime`. - ` compliments.json` <br> **Default value:** ` null` (Do not load from file)
2017-05-18 18:25:17 +08:00
| ` classes` | Override the CSS classes of the div showing the compliments <br><br> **Default value:** ` thin xlarge bright`
2016-04-01 16:02:59 +02:00
### Compliment configuration
2017-02-05 19:29:35 -06:00
The ` compliments` property contains an object with four arrays: <code>morning</code>, <code>afternoon</code>, <code>evening</code> and <code>anytime</code>. Based on the time of the day, the compliments will be picked out of one of these arrays. The arrays contain one or multiple compliments.
2016-04-01 16:02:59 +02:00
2016-11-07 20:08:56 -03:00
If use the currentweather is possible use a actual weather for set compliments. The availables properties are:
2017-01-17 16:12:03 +01:00
* ` day_sunny`
* ` day_cloudy`
* ` cloudy`
* ` cloudy_windy`
* ` showers`
* ` rain`
* ` thunderstorm`
* ` snow`
* ` fog`
* ` night_clear`
* ` night_cloudy`
* ` night_showers`
* ` night_rain`
* ` night_thunderstorm`
* ` night_snow`
* ` night_alt_cloudy_windy`
2016-11-07 20:08:56 -03:00
#### Example use with currentweather module
` ```javascript
config: {
compliments: {
day_sunny: [
2017-01-24 17:22:17 -03:00
"Today is a sunny day",
"It's a beautiful day"
2016-11-07 20:08:56 -03:00
],
snow: [
2017-01-24 17:22:17 -03:00
"Snowball battle!"
2016-11-07 20:08:56 -03:00
],
rain: [
2017-01-24 17:22:17 -03:00
"Don't forget your umbrella"
2016-11-07 20:08:56 -03:00
]
}
}
` ```
2016-04-01 16:02:59 +02:00
#### Default value:
` ```javascript
config: {
compliments: {
2017-02-05 19:29:35 -06:00
anytime: [
"Hey there sexy!"
],
2016-04-01 16:02:59 +02:00
morning: [
2017-01-24 17:22:17 -03:00
"Good morning, handsome!",
"Enjoy your day!",
"How was your sleep?"
2016-04-01 16:02:59 +02:00
],
afternoon: [
2017-01-24 17:22:17 -03:00
"Hello, beauty!",
2017-04-21 23:02:33 +02:00
"You look sexy!",
2017-01-24 17:22:17 -03:00
"Looking good today!"
2016-04-01 16:02:59 +02:00
],
evening: [
2017-01-24 17:22:17 -03:00
"Wow, you look hot!",
"You look nice!",
"Hi, sexy!"
2016-04-01 16:02:59 +02:00
]
}
}
2016-04-03 19:52:13 +02:00
` ```
2016-11-30 10:31:19 -05:00
### External Compliment File
You may specify an external file that contains the three compliment arrays. This is particularly useful if you have a
large number of compliments and do not wish to crowd your ` config.js` file with a large array of compliments.
2016-12-29 22:23:08 -03:00
Adding the ` remoteFile` variable will override an array you specify in the configuration file.
2016-11-30 10:31:19 -05:00
This file must be straight JSON. Note that the array names need quotes
around them ("morning", "afternoon", "evening", "snow", "rain", etc.).
#### Example compliments.json file:
` ```json
{
2017-04-21 23:02:33 +02:00
"anytime" : [
"Hey there sexy!"
],
2016-11-30 10:31:19 -05:00
"morning" : [
"Good morning, sunshine!",
"Who needs coffee when you have your smile?",
"Go get 'em, Tiger!"
],
"afternoon" : [
"Hitting your stride!",
"You are making a difference!",
"You're more fun than bubble wrap!"
],
"evening" : [
"You made someone smile today, I know it.",
"You are making a difference.",
"The day was better for your efforts."
]
}
` ```