Compare commits

..

47 Commits

Author SHA1 Message Date
Michael Teeuw
544a1381fc Merge pull request #353 from MichMich/develop
Update to 2.0.2
2016-06-05 12:06:27 +02:00
Michael Teeuw
bc17ef896e Update CHANGELOG.md 2016-06-05 12:03:00 +02:00
Michael Teeuw
0bcbf999fb Update CHANGELOG.md 2016-06-05 09:25:36 +02:00
Michael Teeuw
0c4c44f4b6 Merge pull request #352 from KirAsh4/develop
Added proper User-Agent string to Facebook calendar call, and various…
2016-06-05 09:24:47 +02:00
Ashley M. Kirchner
486956b762 Added proper User-Agent string to Facebook calendar call, and various fixed spelling of 'exist'. 2016-06-04 20:32:55 -06:00
Michael Teeuw
8d1ef5291f Add Fix info and. 2016-06-04 21:42:05 +02:00
Michael Teeuw
611627ca97 Fix NE translations for all languages. 2016-06-04 21:36:03 +02:00
Michael Teeuw
732225b781 Merge pull request #345 from OskarKlintrot/patch-1
Adding reference to the Italian language file
2016-06-04 20:18:48 +02:00
Oskar Klintrot
58f88075c8 Adding reference to the Italian language file 2016-05-29 13:15:04 +02:00
Michael Teeuw
e17ef5eccf Merge pull request #343 from OskarKlintrot/develop
Added Swedish translation
2016-05-28 07:58:40 +02:00
OskarKlintrot
70c697f094 Added Swedish translation 2016-05-27 19:04:53 +02:00
Michael Teeuw
4b5625e0b4 Update CHANGELOG.md 2016-05-26 12:03:29 +02:00
Michael Teeuw
7df48870df Merge pull request #341 from mochman/weather-update
Weather update
2016-05-26 12:01:55 +02:00
mochman
4a309c49e5 Updated README.md 2016-05-25 15:47:22 -05:00
mochman
b45899bf90 Updated weather to get a locationID 2016-05-25 15:23:29 -05:00
Michael Teeuw
5ae3c8acfe Merge pull request #337 from EdgardosReis/develop
Portuguese translation
2016-05-21 16:41:38 +02:00
EdgardosReis
ef5df5f01b Update CHANGELOG.md 2016-05-21 15:37:00 +01:00
EdgardosReis
9af7451a61 Update translations.js
portuguese translation
2016-05-21 15:33:47 +01:00
EdgardosReis
7048c550b7 Create pt.json
portuguese translation
2016-05-21 15:33:04 +01:00
Michael Teeuw
f035627f42 Update CHANGELOG.md 2016-05-20 12:32:14 +02:00
Michael Teeuw
7659ff1f77 Merge pull request #335 from RemiHansen/master
Norwegian translations
2016-05-20 12:31:52 +02:00
RemiHansen
3df4062a55 Norwegian translation (nb and nn) 2016-05-20 01:22:45 +02:00
RemiHansen
02bbbe668b Changelog updated 2016-05-19 23:37:32 +02:00
RemiHansen
2b82c8fdc9 Norwegian translation for MM2 2016-05-19 23:26:56 +02:00
Michael Teeuw
93abaed0c2 Merge pull request #333 from MichMich/develop
v2.0.1
2016-05-18 11:04:31 +02:00
Michael Teeuw
b7fff6d452 Update CHANGELOG.md 2016-05-18 11:03:19 +02:00
Michael Teeuw
d09f01db90 Update PULL_REQUEST_TEMPLATE.md 2016-05-13 22:06:07 +02:00
Michael Teeuw
e0c1a58b84 Italian Translation 2016-05-13 22:01:51 +02:00
Michael Teeuw
1b82649cca Merge pull request #326 from MichMich/master
Italian translation.
2016-05-13 22:00:28 +02:00
Michael Teeuw
9317e2a36b Merge pull request #325 from iosonopersia/master
Italian translation
2016-05-13 21:54:48 +02:00
iosonopersia
51aff8ccdc Italian translation 2016-05-13 20:45:55 +02:00
iosonopersia
bdd3ea45af Added italian language 2016-05-13 20:42:56 +02:00
Michael Teeuw
3eb5c77ac4 Merge pull request #323 from MichMich/master
Remove BETA warning.
2016-05-13 10:21:19 +02:00
Michael Teeuw
ccc85784c6 Remove BETA warning. 2016-05-13 10:20:37 +02:00
Michael Teeuw
46806e8607 Merge pull request #322 from MichMich/master
Update PULL_REQUEST_TEMPLATE.md
2016-05-13 09:13:15 +02:00
Michael Teeuw
95f914d6bd Update PULL_REQUEST_TEMPLATE.md 2016-05-13 09:12:26 +02:00
Michael Teeuw
0f86011106 Create CHANGELOG.md 2016-05-13 09:10:54 +02:00
Michael Teeuw
acdd3c0602 Merge pull request #321 from jordi2830/patch-1
Fetch the latest Node.js without any 3rd party interferences
2016-05-13 07:35:04 +02:00
Jordi De Poortere
05b7237add Fixing various typo's in the installer 2016-05-13 00:02:36 +02:00
Jordi De Poortere
51f4e9e160 Get the latest Node.js
This will get the latest Node.js from the selected branch.
I do recommend only using a stable and tested version as newer ones might break MM.
Branch can be changed by simply editing the NODE_STABLE_BRANCH variable.

By using this setup script, Node.js will be downloaded from the official repository provided by NodeSource.
2016-05-12 23:39:11 +02:00
Michael Teeuw
7bbac35d6b Merge pull request #317 from MichMich/master
Fix installer URL.
2016-05-12 14:47:53 +02:00
Michael Teeuw
d280fe457c Fix installer URL. 2016-05-12 14:47:36 +02:00
Michael Teeuw
b5772af4c3 Merge pull request #316 from MichMich/master
Merge master changes.
2016-05-12 13:31:35 +02:00
Michael Teeuw
7ab79bb76e Update PULL_REQUEST_TEMPLATE.md 2016-05-12 13:30:41 +02:00
Michael Teeuw
00e3cc26de Update ISSUE_TEMPLATE.md 2016-05-12 13:29:59 +02:00
Michael Teeuw
4b491c43ff Update CONTRIBUTING.md 2016-05-12 13:29:36 +02:00
Michael Teeuw
41233a933e Merge pull request #315 from MichMich/master
v2-beta references.
2016-05-12 13:04:45 +02:00
30 changed files with 381 additions and 143 deletions

View File

@@ -31,3 +31,29 @@ To run StyleLint, use `npm run stylelint`.
We use [NU Validator](https://validator.w3.org/nu) to validate our HTML. The configuration is in the command in the package.json file.
To run HTML Validator, use `npm run htmlvalidator`.
## Submitting Issues
Please only submit reproducible issues.
If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: https://forum.magicmirror.builders/category/15/bug-hunt - Problems installing or configuring your MagicMirror? Check out: https://forum.magicmirror.builders/category/10/troubleshooting
When submitting a new issue, please supply the following information:
**Platform** [ Raspberry Pi 2/3, Windows, Mac OS X, Linux, Etc ... ]:
**Node Version** [ 0.12.13 or later ]:
**MagicMirror Version** [ V1 / V2-Beta ]:
**Description:** Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem.
**Steps to Reproduce:** List the step by step process to reproduce the issue.
**Expected Results:** Describe what you expected to see.
**Actual Results:** Describe what you actually saw.
**Configuration:** What does the used config.js file look like? (Don't forget to remove any sensitive information.)
**Additional Notes:** Provide any other relevant notes not previously mentioned (optional)

View File

@@ -1,2 +1,21 @@
* **Platform** [ Raspberry Pi 2/3, Windows, Mac OS X, Linux]:
* **Node Version** [ 0.12.13 or later ]:
Please only submit reproducible issues.
If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: https://forum.magicmirror.builders/category/15/bug-hunt - Problems installing or configuring your MagicMirror? Check out: https://forum.magicmirror.builders/category/10/troubleshooting
**Platform** [ Raspberry Pi 2/3, Windows, Mac OS X, Linux, Etc ... ]:
**Node Version** [ 0.12.13 or later ]:
**MagicMirror Version** [ V1 / V2-Beta ]:
**Description:** Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem.
**Steps to Reproduce:** List the step by step process to reproduce the issue.
**Expected Results:** Describe what you expected to see.
**Actual Results:** Describe what you actually saw.
**Configuration:** What does the used config.js file look like? (Don't forget to remove any sensitive information.)
**Additional Notes:** Provide any other relevant notes not previously mentioned (optional)

View File

@@ -1,5 +1,9 @@
> Please send your PR's the develop branch.
> Don't forget to add the change to changelog.md.
* Does the pull request solve a **related** issue? [yes | no]
* If so, can you reference the issue?
* What does the pull request accomplish? (please list)
* If it includes major visual changes please add screenshots.

37
CHANGELOG.md Normal file
View File

@@ -0,0 +1,37 @@
# MagicMirror² Change Log
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
## [2.0.2] - 2016-06-05
### Added
- Norwegian Translations (nb and nn)
- Portuguese Translation
- Swedish Translation
### Fixed
- Added reference to Italian Translation.
- Added the missing NE translation to all languages. [#334](https://github.com/MichMich/MagicMirror/issues/344)
- Added proper User-Agent string to calendar call.
### Changed
- Add option to use locationID in weather modules.
## [2.0.1] - 2016-05-18
### Added
- Changelog
- Italian Translation
### Changed
- Improve the installer by fetching the latest Node.js without any 3rd party interferences.
## [2.0.0] - 2016-05-03
### Initial release of MagicMirror²
It includes (but is not limited to) the following features:
- Modular system allowing 3rd party plugins.
- An Node/Electron based application taking away the need for external servers or browsers.
- A complete development API documentation.
- Small cute fairies that kiss you while you sleep.
## [1.0.0] - 2014-02-16
### Initial release of MagicMirror.
This was part of the blogpost: http://michaelteeuw.nl/post/83916869600/magic-mirror-part-vi-production-of-the

View File

@@ -13,8 +13,6 @@
MagicMirror² focuses on a modular plugin system and uses [Electron](http://electron.atom.io/) as an application wrapper. So no more web server or browser installs necessary!
**NOTE:** This version is in currently in beta stage. Please use the master branch if you need a thoroughly tested version.
## Table Of Contents
- [Usage](#usage)
@@ -33,7 +31,7 @@ Electron, the app wrapper around MagicMirror², only supports the Raspberry Pi 2
Execute the following command on your Raspberry Pi to install MagicMirror²:
````
curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/installers/raspberry.sh | bash
curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh | bash
````
#### Manual Installation

View File

@@ -41,6 +41,7 @@ var config = {
position: 'top_right',
config: {
location: 'New York',
locationID: '', //ID from bulk.openweather.org/sample/
appid: 'YOUR_OPENWEATHER_API_KEY'
}
},
@@ -50,6 +51,7 @@ var config = {
header: 'Weather Forecast',
config: {
location: 'New York',
locationID: '5128581', //ID from bulk.openweather.org/sample/
appid: 'YOUR_OPENWEATHER_API_KEY'
}
},

View File

@@ -18,7 +18,7 @@ echo ' \$$$$$$ |'
echo ' \______/'
echo -e "\e[0m"
# Define the tested version of node.
# Define the tested version of Node.js.
NODE_TESTED="v5.1.0"
#Determine which Pi is running.
@@ -39,7 +39,7 @@ function command_exists () { type "$1" &> /dev/null ;}
echo -e "\e[96mInstalling helper tools ...\e[90m"
sudo apt-get install curl wget git build-essential unzip || exit
# Check if we need to install or upgrade node.
# Check if we need to install or upgrade Node.js.
echo -e "\e[96mCheck current Node installation ...\e[0m"
NODE_INSTALL=false
if command_exists node; then
@@ -60,63 +60,33 @@ if command_exists node; then
fi
else
echo -e "\e[92mNo Node upgrade nessecery.\e[0m"
echo -e "\e[92mNo Node.js upgrade nessecery.\e[0m"
fi
else
echo -e "\e[93mNode is not installed.\e[0m";
echo -e "\e[93mNode.js is not installed.\e[0m";
NODE_INSTALL=true
fi
# Install or upgare node if nessecery.
if $NODE_INSTALL; then
echo -e "\e[96mInstalling Node.js ...\e[90m"
echo -e "\e[96mStart Node download ...\e[0m"
#Fetch the latest version of Node.js.
#TODO: Is there a native way to fetch the latest node version?
echo -e "\e[39mRetrieving latest node version."
NODE_LATEST=$(curl -l http://api.jordidepoortere.com/nodejs-latest/ 2> /dev/null)
if [ "$NODE_LATEST" == "" ]; then
echo -e "\e[91mCould not retreive latest node version."
echo -e "\e[91mPlease try again or open an issue on GitHub."
exit
fi
echo -e "Latest node version: \e[1m$NODE_LATEST\e[0m"
#Construct the download URL.
DOWNLOAD_URL="https://nodejs.org/dist/latest/node-$NODE_LATEST-linux-$ARM.tar.gz"
#Create Download Directory
rm -Rf ~/.MagicMirrorNodeInstaller || exit
mkdir ~/.MagicMirrorNodeInstaller || exit
cd ~/.MagicMirrorNodeInstaller || exit
#Download Installer
echo -e "\e[39mDownloading node ... \e[90m"
if wget $DOWNLOAD_URL --no-verbose --show-progress; then
echo -e "\e[39mDownload complete."
else
echo -e "\e[91mCould not download node."
exit;
fi
#Unpack and copy.
echo -e "\e[96mStart Node installation ...\e[90m"
tar xvf node-$NODE_LATEST-linux-$ARM.tar.gz || exit
cd node* || exit
sudo cp -R * /usr/local || exit
#Cleanup
rm -Rf ~/.MagicMirrorNodeInstaller || exit
#Fetch the latest version of Node.js from the selected branch
#The NODE_STABLE_BRANCH variable will need to be manually adjusted when a new branch is released. (e.g. 7.x)
#Only tested (stable) versions are recommended as newer versions could break MagicMirror.
NODE_STABLE_BRANCH="6.x"
curl -sL https://deb.nodesource.com/setup_$NODE_STABLE_BRANCH | sudo -E bash -
sudo apt-get install -y nodejs
echo -e "\e[92mNode.js installation Done!\e[0m"
fi
#Install magic mirror
cd ~
if [ -d "$HOME/MagicMirror" ] ; then
echo -e "\e[93mIt seems like MagicMirror is allready installed."
echo -e "\e[93mIt seems like MagicMirror is already installed."
echo -e "To prevent overwriting, the installer will be aborted."
echo -e "Please rename the \e[1m~/MagicMirror\e[0m\e[93m folder and try again.\e[0m"
echo ""
@@ -143,6 +113,6 @@ else
fi
echo " "
echo -e "\e[92mWe're ready! Run \e[1m\e[97mDISPLAY=:0 npm start\e[0m\e[92m from the ~/MagicMirror directory to start your MagicMirror."
echo -e "\e[92mWe're ready! Run \e[1m\e[97mDISPLAY=:0 npm start\e[0m\e[92m from the ~/MagicMirror directory to start your MagicMirror.\e[0m"
echo " "
echo " "

View File

@@ -152,7 +152,7 @@ var Module = Class.extend({
},
/* socket()
* Returns a socket object. If it doesn"t exsist, it"s created.
* Returns a socket object. If it doesn"t exist, it"s created.
* It also registers the notification callback.
*/
socket: function() {

View File

@@ -298,7 +298,7 @@ If no translation is found, a fallback will be used. The fallback sequence is as
- 4. Translation as defined in core translation file of the fallback language (the first defined core translation file).
- 5. The key (identifier) of the translation.
When adding translations to your module, it's a good idea to see if an apropriate translation is already available in the [core translation files](https://github.com/MichMich/MagicMirror/tree/master/translations). This way, your module can benefit from the exsisting translations.
When adding translations to your module, it's a good idea to see if an apropriate translation is already available in the [core translation files](https://github.com/MichMich/MagicMirror/tree/master/translations). This way, your module can benefit from the existing translations.
**Example:**
````javascript

View File

@@ -49,7 +49,7 @@ Module.register("calendar",{
getTranslations: function() {
// The translations for the defaut modules are defined in the core translation files.
// Therefor we can just return false. Otherwise we should have returned a dictionairy.
// If you're trying to build yiur own module including translations, check out the documentation.
// If you're trying to build your own module including translations, check out the documentation.
return false;
},

View File

@@ -25,7 +25,12 @@ var CalendarFetcher = function(url, reloadInterval, maximumEntries, maximumNumbe
clearTimeout(reloadTimer);
reloadTimer = null;
ical.fromURL(url, {}, function(err, data) {
var opts = {
headers: {
'User-Agent': 'Mozilla/5.0 (Node.js 6.0.0) MagicMirror/v2 (https://github.com/MichMich/MagicMirror/)'
}
}
ical.fromURL(url, opts, function(err, data) {
if (err) {
fetchFailedCallback(self, err);
scheduleTimer();
@@ -188,7 +193,7 @@ var CalendarFetcher = function(url, reloadInterval, maximumEntries, maximumNumbe
};
/* broadcastItems()
* Broadcast the exsisting events.
* Broadcast the existing events.
*/
this.broadcastEvents = function() {
//console.log('Broadcasting ' + events.length + ' events.');

View File

@@ -30,8 +30,8 @@ module.exports = NodeHelper.create({
},
/* createFetcher(url, reloadInterval)
* Creates a fetcher for a new url if it doesn't exsist yet.
* Otherwise it reuses the exsisting one.
* Creates a fetcher for a new url if it doesn't exist yet.
* Otherwise it reuses the existing one.
*
* attribute url string - URL of the news feed.
* attribute reloadInterval number - Reload interval in milliseconds.
@@ -69,7 +69,7 @@ module.exports = NodeHelper.create({
self.fetchers[url] = fetcher;
} else {
//console.log('Use exsisting news fetcher for url: ' + url);
//console.log('Use existing news fetcher for url: ' + url);
fetcher = self.fetchers[url];
fetcher.broadcastEvents();
}

View File

@@ -14,6 +14,7 @@ modules: [
config: {
// See 'Configuration options' for more information.
location: 'Amsterdam,Netherlands',
locationID: '', //Location ID from http://bulk.openweather.org/sample/
appid: 'abcde12345abcde12345abcde12345ab' //openweathermap.org API key.
}
}
@@ -34,7 +35,7 @@ The following properties can be configured:
</tr>
<thead>
<tbody>
<tr>
<td><code>location</code></td>
<td>The location used for weather information.<br>
@@ -42,6 +43,13 @@ The following properties can be configured:
<br><b>Default value:</b> <code>New York</code>
</td>
</tr>
<tr>
<td><code>locationID</code></td>
<td>Location ID from <a href="http://bulk.openweather.org/sample/">OpenWeather</a> <b>This will override anything you put in location.</b><br>Leave blank if you want to use location.
<br><b>Example:</b> <code>1234567</code>
<br><b>Default value:</b> <code></code>
</td>
</tr>
<tr>
<td><code>appid</code></td>
<td>The <a href="https://home.openweathermap.org" target="_blank">OpenWeatherMap</a> API key, which can be obtained by creating an OpenWeatherMap account.<br>

View File

@@ -12,6 +12,7 @@ Module.register("currentweather",{
// Default module config.
defaults: {
location: "",
locationID: "",
appid: "",
units: config.units,
updateInterval: 10 * 60 * 1000, // every 10 minutes
@@ -198,7 +199,11 @@ Module.register("currentweather",{
*/
getParams: function() {
var params = "?";
params += "q=" + this.config.location;
if(this.config.locationID !== "") {
params += "id=" + this.config.locationID;
} else {
params += "q=" + this.config.location;
}
params += "&units=" + this.config.units;
params += "&lang=" + this.config.lang;
params += "&APPID=" + this.config.appid;

View File

@@ -117,7 +117,7 @@ var Fetcher = function(url, reloadInterval, encoding) {
};
/* broadcastItems()
* Broadcast the exsisting items.
* Broadcast the existing items.
*/
this.broadcastItems = function() {
if (items.length <= 0) {

View File

@@ -25,8 +25,8 @@ module.exports = NodeHelper.create({
},
/* createFetcher(url, reloadInterval)
* Creates a fetcher for a new url if it doesn't exsist yet.
* Otherwise it reoses the exsisting one.
* Creates a fetcher for a new url if it doesn't exist yet.
* Otherwise it reoses the existing one.
*
* attribute url string - URL of the news feed.
* attribute reloadInterval number - Reload interval in milliseconds.
@@ -62,7 +62,7 @@ module.exports = NodeHelper.create({
self.fetchers[url] = fetcher;
} else {
console.log("Use exsisting news fetcher for url: " + url);
console.log("Use existing news fetcher for url: " + url);
fetcher = self.fetchers[url];
fetcher.setReloadInterval(reloadInterval);
fetcher.broadcastItems();

View File

@@ -14,6 +14,7 @@ modules: [
config: {
// See 'Configuration options' for more information.
location: 'Amsterdam,Netherlands',
locationID: '', //Location ID from http://bulk.openweather.org/sample/
appid: 'abcde12345abcde12345abcde12345ab' //openweathermap.org API key.
}
}
@@ -42,6 +43,13 @@ The following properties can be configured:
<br><b>Default value:</b> <code>New York</code>
</td>
</tr>
<tr>
<td><code>locationID</code></td>
<td>Location ID from <a href="http://bulk.openweather.org/sample/">OpenWeather</a> <b>This will override anything you put in location.</b><br>Leave blank if you want to use location.
<br><b>Example:</b> <code>1234567</code>
<br><b>Default value:</b> <code></code>
</td>
</tr>
<tr>
<td><code>appid</code></td>
<td>The <a href="https://home.openweathermap.org" target="_blank">OpenWeatherMap</a> API key, which can be obtained by creating an OpenWeatherMap account.<br>

View File

@@ -12,6 +12,7 @@ Module.register("weatherforecast",{
// Default module config.
defaults: {
location: "",
locationID: "",
appid: "",
units: config.units,
maxNumberOfDays: 7,
@@ -195,7 +196,11 @@ Module.register("weatherforecast",{
*/
getParams: function() {
var params = "?";
params += "q=" + this.config.location;
if(this.config.locationID !== "") {
params += "id=" + this.config.locationID;
} else {
params += "q=" + this.config.location;
}
params += "&units=" + this.config.units;
params += "&lang=" + this.config.lang;
/*

View File

@@ -1,27 +1,28 @@
{
/* GENERAL */
"LOADING": "Lade &hellip;",
/* GENERAL */
"LOADING": "Lade &hellip;",
/* CALENDAR */
"TODAY": "Heute",
"TOMORROW": "Morgen",
"RUNNING": "noch",
"EMPTY": "Keine Termine.",
/* CALENDAR */
"TODAY": "Heute",
"TOMORROW": "Morgen",
"RUNNING": "noch",
"EMPTY": "Keine Termine.",
/* WEATHER */
"N": "N",
"NNE": "NNO",
"ENE": "ONO",
"E": "O",
"ESE": "OSO",
"SE": "SO",
"SSE": "SSO",
"S": "S",
"SSW": "SSW",
"SW": "SW",
"WSW": "WSW",
"W": "W",
"WNW": "WNW",
"NW": "NW",
"NNW": "NNW"
/* WEATHER */
"N": "N",
"NNE": "NNO",
"NE": "NO",
"ENE": "ONO",
"E": "O",
"ESE": "OSO",
"SE": "SO",
"SSE": "SSO",
"S": "S",
"SSW": "SSW",
"SW": "SW",
"WSW": "WSW",
"W": "W",
"WNW": "WNW",
"NW": "NW",
"NNW": "NNW"
}

View File

@@ -1,27 +1,28 @@
{
/* GENERAL */
"LOADING": "Loading &hellip;",
/* GENERAL */
"LOADING": "Loading &hellip;",
/* CALENDAR */
"TODAY": "Today",
"TOMORROW": "Tomorrow",
"RUNNING": "Ends in",
"EMPTY": "No upcoming events.",
/* CALENDAR */
"TODAY": "Today",
"TOMORROW": "Tomorrow",
"RUNNING": "Ends in",
"EMPTY": "No upcoming events.",
/* WEATHER */
"N": "N",
"NNE": "NNE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSW",
"SW": "SW",
"WSW": "WSW",
"W": "W",
"WNW": "WNW",
"NW": "NW",
"NNW": "NNW"
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSW",
"SW": "SW",
"WSW": "WSW",
"W": "W",
"WNW": "WNW",
"NW": "NW",
"NNW": "NNW"
}

View File

@@ -11,6 +11,7 @@
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",

View File

@@ -1,27 +1,28 @@
{
/* GENERAL */
"LOADING": "Chargement &hellip;",
/* GENERAL */
"LOADING": "Chargement &hellip;",
/* CALENDAR */
"TODAY": "Aujourd'hui",
"TOMORROW": "Demain",
"RUNNING": "Se termine dans",
"EMPTY": "Aucun RDV.",
/* CALENDAR */
"TODAY": "Aujourd'hui",
"TOMORROW": "Demain",
"RUNNING": "Se termine dans",
"EMPTY": "Aucun RDV.",
/* WEATHER */
"N": "N",
"NNE": "NNE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSO",
"SW": "SO",
"WSW": "OSO",
"W": "O",
"WNW": "ONO",
"NW": "NO",
"NNW": "NNO"
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSO",
"SW": "SO",
"WSW": "OSO",
"W": "O",
"WNW": "ONO",
"NW": "NO",
"NNW": "NNO"
}

View File

@@ -11,6 +11,7 @@
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",

28
translations/it.json Normal file
View File

@@ -0,0 +1,28 @@
{
/* GENERAL */
"LOADING": "Caricamento in corso &hellip;",
/* CALENDAR */
"TODAY": "Oggi",
"TOMORROW": "Domani",
"RUNNING": "Termina entro",
"EMPTY": "Nessun evento in arrivo.",
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSW",
"SW": "SW",
"WSW": "WSW",
"W": "W",
"WNW": "WNW",
"NW": "NW",
"NNW": "NNW"
}

28
translations/nb.json Normal file
View File

@@ -0,0 +1,28 @@
{
/* GENERAL */
"LOADING": "Laster &hellip;",
/* CALENDAR */
"TODAY": "I dag",
"TOMORROW": "I morgen",
"RUNNING": "Slutter om",
"EMPTY": "Ingen kommende arrangementer.",
/* WEATHER */
"N": "N",
"NNE": "NNØ",
"NE": "NØ",
"ENE": "ØNØ",
"E": "Ø",
"ESE": "ØSØ",
"SE": "SØ",
"SSE": "SSØ",
"S": "S",
"SSW": "SSV",
"SW": "SV",
"WSW": "VSV",
"W": "V",
"WNW": "VNV",
"NW": "NV",
"NNW": "NNV"
}

View File

@@ -11,6 +11,7 @@
/* WEATHER */
"N": "N",
"NNE": "NNO",
"NE": "NO",
"ENE": "ONO",
"E": "O",
"ESE": "OZO",

28
translations/nn.json Normal file
View File

@@ -0,0 +1,28 @@
{
/* GENERAL */
"LOADING": "Lastar &hellip;",
/* CALENDAR */
"TODAY": "I dag",
"TOMORROW": "I morgon",
"RUNNING": "Sluttar om",
"EMPTY": "Ingen komande hendingar.",
/* WEATHER */
"N": "N",
"NNE": "NNA",
"NE": "NA",
"ENE": "ANA",
"E": "A",
"ESE": "ASA",
"SE": "SA",
"SSE": "SSA",
"S": "S",
"SSW": "SSV",
"SW": "SV",
"WSW": "VSV",
"W": "V",
"WNW": "VNV",
"NW": "NV",
"NNW": "NNV"
}

28
translations/pt.json Normal file
View File

@@ -0,0 +1,28 @@
{
/* GENERAL */
"LOADING": "A carregar &hellip;",
/* CALENDAR */
"TODAY": "Hoje",
"TOMORROW": "Amanhã",
"RUNNING": "Termina em",
"EMPTY": "Sem eventos a chegar.",
/* WEATHER */
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSO",
"SW": "SO",
"WSW": "OSO",
"W": "O",
"WNW": "ONO",
"NW": "NO",
"NNW": "NNO"
}

28
translations/sv.json Normal file
View File

@@ -0,0 +1,28 @@
{
/* GENERAL */
"LOADING": "Laddar &hellip;",
/* CALENDAR */
"TODAY": "Idag",
"TOMORROW": "Imorgon",
"RUNNING": "Slutar",
"EMPTY": "Inga kommande händelser.",
/* WEATHER */
"N": "N",
"NNE": "NNO",
"NE": "NO",
"ENE": "ONO",
"E": "Ö",
"ESE": "OSO",
"SE": "SO",
"SSE": "SSO",
"S": "S",
"SSW": "SSV",
"SW": "SV",
"WSW": "VSV",
"W": "V",
"WNW": "VNV",
"NW": "NV",
"NNW": "NNV"
}

View File

@@ -6,10 +6,15 @@
*/
var translations = {
"en" : "translations/en.json",
"nl" : "translations/nl.json",
"de" : "translations/de.json",
"fr" : "translations/fr.json",
"fy" : "translations/fy.json",
"es" : "translations/es.json",
"en" : "translations/en.json", // English
"nl" : "translations/nl.json", // Dutch
"de" : "translations/de.json", // German
"fr" : "translations/fr.json", // French
"fy" : "translations/fy.json", // Frysk
"es" : "translations/es.json", // Spanish
"nb" : "translations/nb.json", // Norsk bokmål
"nn" : "translations/nn.json", // Norsk nynorsk
"pt" : "translations/pt.json", // Português
"sv" : "translations/sv.json", // Svenska
"it" : "translations/it.json", // Italian
};