mirror of https://github.com/espruino/BangleApps
Add translations from #202
parent
25e1fc5f28
commit
26a8755da0
|
@ -21,8 +21,8 @@ function showAlarm(alarm) {
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
Bangle.drawWidgets();
|
Bangle.drawWidgets();
|
||||||
E.showPrompt(msg,{
|
E.showPrompt(msg,{
|
||||||
title:alarm.timer ? "TIMER!" : "ALARM!",
|
title:alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!",
|
||||||
buttons : {"Sleep":true,"Ok":false} // default is sleep so it'll come back in 10 mins
|
buttons : {/*LANG*/"Sleep":true,/*LANG*/"Ok":false} // default is sleep so it'll come back in 10 mins
|
||||||
}).then(function(sleep) {
|
}).then(function(sleep) {
|
||||||
buzzCount = 0;
|
buzzCount = 0;
|
||||||
if (sleep) {
|
if (sleep) {
|
||||||
|
|
|
@ -33,16 +33,16 @@ function getCurrentHr() {
|
||||||
function showMainMenu() {
|
function showMainMenu() {
|
||||||
const menu = {
|
const menu = {
|
||||||
'': { 'title': 'Alarm/Timer' },
|
'': { 'title': 'Alarm/Timer' },
|
||||||
'< Back' : ()=>{load();},
|
/*LANG*/'< Back' : ()=>{load();},
|
||||||
'New Alarm': ()=>editAlarm(-1),
|
/*LANG*/'New Alarm': ()=>editAlarm(-1),
|
||||||
'New Timer': ()=>editTimer(-1)
|
/*LANG*/'New Timer': ()=>editTimer(-1)
|
||||||
};
|
};
|
||||||
alarms.forEach((alarm,idx)=>{
|
alarms.forEach((alarm,idx)=>{
|
||||||
if (alarm.timer) {
|
if (alarm.timer) {
|
||||||
txt = "TIMER "+(alarm.on?"on ":"off ")+formatMins(alarm.timer);
|
txt = /*LANG*/"TIMER "+(alarm.on?/*LANG*/"on ":/*LANG*/"off ")+formatMins(alarm.timer);
|
||||||
} else {
|
} else {
|
||||||
txt = "ALARM "+(alarm.on?"on ":"off ")+formatTime(alarm.hr);
|
txt = /*LANG*/"ALARM "+(alarm.on?/*LANG*/"on ":/*LANG*/"off ")+formatTime(alarm.hr);
|
||||||
if (alarm.rp) txt += " (repeat)";
|
if (alarm.rp) txt += /*LANG*/" (repeat)";
|
||||||
}
|
}
|
||||||
menu[txt] = function() {
|
menu[txt] = function() {
|
||||||
if (alarm.timer) editTimer(idx);
|
if (alarm.timer) editTimer(idx);
|
||||||
|
@ -70,27 +70,27 @@ function editAlarm(alarmIndex) {
|
||||||
as = a.as;
|
as = a.as;
|
||||||
}
|
}
|
||||||
const menu = {
|
const menu = {
|
||||||
'': { 'title': 'Alarm' },
|
'': { 'title': /*LANG*/'Alarm' },
|
||||||
'< Back' : showMainMenu,
|
/*LANG*/'< Back' : showMainMenu,
|
||||||
'Hours': {
|
/*LANG*/'Hours': {
|
||||||
value: hrs,
|
value: hrs,
|
||||||
onchange: function(v){if (v<0)v=23;if (v>23)v=0;hrs=v;this.value=v;} // no arrow fn -> preserve 'this'
|
onchange: function(v){if (v<0)v=23;if (v>23)v=0;hrs=v;this.value=v;} // no arrow fn -> preserve 'this'
|
||||||
},
|
},
|
||||||
'Minutes': {
|
/*LANG*/'Minutes': {
|
||||||
value: mins,
|
value: mins,
|
||||||
onchange: function(v){if (v<0)v=59;if (v>59)v=0;mins=v;this.value=v;} // no arrow fn -> preserve 'this'
|
onchange: function(v){if (v<0)v=59;if (v>59)v=0;mins=v;this.value=v;} // no arrow fn -> preserve 'this'
|
||||||
},
|
},
|
||||||
'Enabled': {
|
/*LANG*/'Enabled': {
|
||||||
value: en,
|
value: en,
|
||||||
format: v=>v?"On":"Off",
|
format: v=>v?"On":"Off",
|
||||||
onchange: v=>en=v
|
onchange: v=>en=v
|
||||||
},
|
},
|
||||||
'Repeat': {
|
/*LANG*/'Repeat': {
|
||||||
value: en,
|
value: en,
|
||||||
format: v=>v?"Yes":"No",
|
format: v=>v?"Yes":"No",
|
||||||
onchange: v=>repeat=v
|
onchange: v=>repeat=v
|
||||||
},
|
},
|
||||||
'Auto snooze': {
|
/*LANG*/'Auto snooze': {
|
||||||
value: as,
|
value: as,
|
||||||
format: v=>v?"Yes":"No",
|
format: v=>v?"Yes":"No",
|
||||||
onchange: v=>as=v
|
onchange: v=>as=v
|
||||||
|
@ -108,14 +108,14 @@ function editAlarm(alarmIndex) {
|
||||||
last : day, rp : repeat, as: as
|
last : day, rp : repeat, as: as
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
menu["> Save"] = function() {
|
menu[/*LANG*/"> Save"] = function() {
|
||||||
if (newAlarm) alarms.push(getAlarm());
|
if (newAlarm) alarms.push(getAlarm());
|
||||||
else alarms[alarmIndex] = getAlarm();
|
else alarms[alarmIndex] = getAlarm();
|
||||||
require("Storage").write("alarm.json",JSON.stringify(alarms));
|
require("Storage").write("alarm.json",JSON.stringify(alarms));
|
||||||
showMainMenu();
|
showMainMenu();
|
||||||
};
|
};
|
||||||
if (!newAlarm) {
|
if (!newAlarm) {
|
||||||
menu["> Delete"] = function() {
|
menu[/*LANG*/"> Delete"] = function() {
|
||||||
alarms.splice(alarmIndex,1);
|
alarms.splice(alarmIndex,1);
|
||||||
require("Storage").write("alarm.json",JSON.stringify(alarms));
|
require("Storage").write("alarm.json",JSON.stringify(alarms));
|
||||||
showMainMenu();
|
showMainMenu();
|
||||||
|
@ -136,18 +136,18 @@ function editTimer(alarmIndex) {
|
||||||
en = a.on;
|
en = a.on;
|
||||||
}
|
}
|
||||||
const menu = {
|
const menu = {
|
||||||
'': { 'title': 'Timer' },
|
'': { 'title': /*LANG*/'Timer' },
|
||||||
'Hours': {
|
/*LANG*/'Hours': {
|
||||||
value: hrs,
|
value: hrs,
|
||||||
onchange: function(v){if (v<0)v=23;if (v>23)v=0;hrs=v;this.value=v;} // no arrow fn -> preserve 'this'
|
onchange: function(v){if (v<0)v=23;if (v>23)v=0;hrs=v;this.value=v;} // no arrow fn -> preserve 'this'
|
||||||
},
|
},
|
||||||
'Minutes': {
|
/*LANG*/'Minutes': {
|
||||||
value: mins,
|
value: mins,
|
||||||
onchange: function(v){if (v<0)v=59;if (v>59)v=0;mins=v;this.value=v;} // no arrow fn -> preserve 'this'
|
onchange: function(v){if (v<0)v=59;if (v>59)v=0;mins=v;this.value=v;} // no arrow fn -> preserve 'this'
|
||||||
},
|
},
|
||||||
'Enabled': {
|
/*LANG*/'Enabled': {
|
||||||
value: en,
|
value: en,
|
||||||
format: v=>v?"On":"Off",
|
format: v=>v?/*LANG*/"On":/*LANG*/"Off",
|
||||||
onchange: v=>en=v
|
onchange: v=>en=v
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
active = active.sort((a,b)=>(a.hr-b.hr)+(a.last-b.last)*24);
|
active = active.sort((a,b)=>(a.hr-b.hr)+(a.last-b.last)*24);
|
||||||
var hr = time.getHours()+(time.getMinutes()/60)+(time.getSeconds()/3600);
|
var hr = time.getHours()+(time.getMinutes()/60)+(time.getSeconds()/3600);
|
||||||
if (!require('Storage').read("alarm.js")) {
|
if (!require('Storage').read("alarm.js")) {
|
||||||
console.log("No alarm app!");
|
console.log(/*LANG*/"No alarm app!");
|
||||||
require('Storage').write('alarm.json',"[]");
|
require('Storage').write('alarm.json',"[]");
|
||||||
} else {
|
} else {
|
||||||
var t = 3600000*(active[0].hr-hr);
|
var t = 3600000*(active[0].hr-hr);
|
||||||
|
|
|
@ -6,10 +6,18 @@
|
||||||
"Hours" : "Stunden",
|
"Hours" : "Stunden",
|
||||||
"Minutes" : "Minuten",
|
"Minutes" : "Minuten",
|
||||||
"Enabled" : "Aktiviert",
|
"Enabled" : "Aktiviert",
|
||||||
"Settings" : "Einstellungen"
|
"Settings" : "Einstellungen",
|
||||||
|
"Save" : "Speichern",
|
||||||
|
"Back" : "Zurück",
|
||||||
|
"Repeat" : "Wiederholen",
|
||||||
|
"Delete" : "Löschen",
|
||||||
|
"Sleep" : "Schlummern",
|
||||||
|
"Alarms" : "Wecker",
|
||||||
|
"New Alarm" : "Neuer Wecker",
|
||||||
|
"ALARM!" : "ALARM!"
|
||||||
},
|
},
|
||||||
"alarm": {
|
"alarm": {
|
||||||
"//":"App-specific overrides",
|
"//":"App-specific overrides",
|
||||||
"Alarm" : "Alarm"
|
"rpt" : "Wdh."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"//":"British English language translations - the default strings in apps are all english anyway, so no need to have translations for most things",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Spanish language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Alarmas",
|
||||||
|
"Hours" : "Horas",
|
||||||
|
"Minutes" : "Minutos",
|
||||||
|
"Enabled" : "Activados",
|
||||||
|
"New Alarm" : "Alarma nueva",
|
||||||
|
"Save" : "Grabar",
|
||||||
|
"Back" : "Atrás",
|
||||||
|
"Repeat" : "Repetición",
|
||||||
|
"Delete" : "Borrar",
|
||||||
|
"ALARM!" : "ALARM",
|
||||||
|
"Sleep" : "Dormir"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "rep."
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Finnish language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Hälytykset",
|
||||||
|
"Hours" : "Tunnit",
|
||||||
|
"Minutes" : "Minuutit",
|
||||||
|
"Enabled" : "Aktivoitu",
|
||||||
|
"New Alarm" : "Uusi hälytys",
|
||||||
|
"Save" : "Tallenna",
|
||||||
|
"Back" : "Paluu",
|
||||||
|
"Repeat" : "Toista",
|
||||||
|
"Delete" : "Poista",
|
||||||
|
"ALARM!" : "ALARM",
|
||||||
|
"Sleep" : "Nukkuminen"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "toistaa"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"French language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Réveils",
|
||||||
|
"Hours" : "Heures",
|
||||||
|
"Minutes" : "Minutes",
|
||||||
|
"Enabled" : "Activé",
|
||||||
|
"New Alarm" : "Nouveau Réveil",
|
||||||
|
"Save" : "Sauvegarder",
|
||||||
|
"Back" : "Retour",
|
||||||
|
"Repeat" : "Répétition",
|
||||||
|
"Delete" : "Supprimer",
|
||||||
|
"ALARM!" : "ALARM!",
|
||||||
|
"Sleep" : "Sommeil"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "rép."
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Spanish language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Riasztások",
|
||||||
|
"Hours" : "Óra",
|
||||||
|
"Minutes" : "Perc",
|
||||||
|
"Enabled" : "Aktiválva",
|
||||||
|
"New Alarm" : "Új riasztás",
|
||||||
|
"Save" : "Mentés",
|
||||||
|
"Back" : "Vissza",
|
||||||
|
"Repeat" : "Ismétlés",
|
||||||
|
"Delete" : "Törlés",
|
||||||
|
"ALARM!" : "ALARM!",
|
||||||
|
"Sleep" : "Alvás"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "ismétlés"
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,3 +1,12 @@
|
||||||
[
|
[
|
||||||
"de_DE.json"
|
{"code":"en_GB","name":"British English","url":"en_GB.json"},
|
||||||
|
{"code":"de_DE","name":"German","url":"de_DE.json"},
|
||||||
|
{"code":"es_ES","name":"Spanish","url":"es_ES.json"},
|
||||||
|
{"code":"fi_FI","name":"Finnish","url":"fi_FI.json"},
|
||||||
|
{"code":"fr_FR","name":"French","url":"fr_FR.json"},
|
||||||
|
{"code":"hu_HU","name":"Hungarian","url":"hu_HU.json"},
|
||||||
|
{"code":"it_IT","name":"Italian","url":"it_IT.json"},
|
||||||
|
{"code":"nl_NL","name":"Dutch","url":"nl_NL.json"},
|
||||||
|
{"code":"sv_SE","name":"Swedish","url":"sv_SE.json"},
|
||||||
|
{"code":"tr_TR","name":"Turkish","url":"tr_TR.json"}
|
||||||
]
|
]
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Italian language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Allarmi",
|
||||||
|
"Hours" : "Ore",
|
||||||
|
"Minutes" : "Minuti",
|
||||||
|
"Enabled" : "Attivato",
|
||||||
|
"New Alarm" : "Nuovo allarme",
|
||||||
|
"Save" : "Salvare",
|
||||||
|
"Back" : "Indietro",
|
||||||
|
"Repeat" : "Ripetere",
|
||||||
|
"Delete" : "Cancellare",
|
||||||
|
"ALARM!" : "ALARM!",
|
||||||
|
"Sleep" : "Dormire"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "ripetere"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Dutch language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Alarmen",
|
||||||
|
"Hours" : "Uren",
|
||||||
|
"Minutes" : "Minuten",
|
||||||
|
"Enabled" : "Geactiveerd",
|
||||||
|
"New Alarm" : "Nieuw alarm",
|
||||||
|
"Save" : "Opslaan",
|
||||||
|
"Back" : "Terug",
|
||||||
|
"Repeat" : "Herhalen",
|
||||||
|
"Delete" : "Verwijderen",
|
||||||
|
"ALARM!" : "ALARV.",
|
||||||
|
"Sleep" : "Stand-by"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "herhalen"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Swedish language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Larm",
|
||||||
|
"Hours" : "Timmar",
|
||||||
|
"Minutes" : "Minuter",
|
||||||
|
"Enabled" : "Aktiverad",
|
||||||
|
"New Alarm" : "Ny alarm",
|
||||||
|
"Save" : "Spara",
|
||||||
|
"Back" : "Tillbaka",
|
||||||
|
"Repeat" : "Upprepning",
|
||||||
|
"Delete" : "Radera",
|
||||||
|
"ALARM!" : "ALURH!",
|
||||||
|
"Sleep" : "Sömn"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "uppr."
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"//":"Turkish language translations",
|
||||||
|
"GLOBAL": {
|
||||||
|
"//":"Translations that apply for all apps",
|
||||||
|
"Alarms" : "Alarmlar",
|
||||||
|
"Hours" : "Saat",
|
||||||
|
"Minutes" : "Dakika",
|
||||||
|
"Enabled" : "Etkinleştirildi",
|
||||||
|
"New Alarm" : "Yeni alarm",
|
||||||
|
"Save" : "Sakla",
|
||||||
|
"Back" : "Geriye",
|
||||||
|
"Repeat" : "Yineleme",
|
||||||
|
"Delete" : "Sil",
|
||||||
|
"ALARM!" : "ALARM!",
|
||||||
|
"Sleep" : "Uyku"
|
||||||
|
},
|
||||||
|
"alarm": {
|
||||||
|
"//":"App-specific overrides",
|
||||||
|
"rpt" : "yineleme"
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue