1
0
Fork 0

corrected Japanese clock

master
adrian w kirk 2021-02-11 22:54:53 +00:00
parent b393b7d32b
commit bf0feecb3d
2 changed files with 44 additions and 37 deletions

View File

@ -216,7 +216,7 @@
{ "id": "xclock",
"name": "X Clock",
"icon": "xclock.png",
"version":"0.07",
"version":"0.08",
"description": "Text Readable Time",
"tags": "clock",
"type":"clock",

View File

@ -184,9 +184,9 @@ class EnglishTraditionalDateFormatter extends DateFormatter {
hours = hoursToText(date.getHours());
mins = date.getMinutes();
if(mins == 0){
return [hours, "o'","clock"];
return [hours, "o'","clock","",""];
} else if(mins == 30){
return ["HALF", "PAST", hours];
return ["","HALF", "PAST", "", hours];
}
mins_txt = ['',''];
if(mins == 15 || mins == 45){
@ -202,9 +202,9 @@ class EnglishTraditionalDateFormatter extends DateFormatter {
mins_txt = numberToText(mins);
}
if(mins_txt[1] != ''){
return [ mins_txt[0], mins_txt[1] + ' ' + from_to , hours ];
return ["", mins_txt[0], mins_txt[1] + ' ' + from_to , "",hours ];
} else {
return [ mins_txt[0], from_to , hours ];
return ["", mins_txt[0], from_to ,"", hours ];
}
}
}
@ -253,14 +253,14 @@ class FrenchDateFormatter extends DateFormatter {
return [hours, heures,""];
}
} else if(mins == 30){
return [hours, heures,"ET DEMIE"];
return [hours, heures,'ET DEMIE'];
} else if(mins == 15){
return [hours, heures,"ET QUERT"];
return [hours, heures,'ET QUERT'];
} else if(mins == 45){
next_hour = date.getHours() + 1;
hours = frenchHoursToText(next_hour);
heures = frenchHeures(next_hour);
return [hours, heures,"MOINS LET QUERT"];
return [hours, heures,"MOINS",'LET QUERT'];
}
if(mins > 30){
to_mins = 60-mins;
@ -268,7 +268,7 @@ class FrenchDateFormatter extends DateFormatter {
next_hour = date.getHours() + 1;
hours = frenchHoursToText(next_hour);
heures = frenchHeures(next_hour);
return [ hours, heures , "MOINS " + mins_txt ];
return [ hours, heures , "MOINS", mins_txt ];
} else {
mins_txt = frenchNumberStr[mins];
return [ hours, heures , mins_txt ];
@ -279,10 +279,26 @@ class FrenchDateFormatter extends DateFormatter {
// Japanese Date formatting
const japaneseHourStr = [ "ZERO", "ICHII", "NI", "SAN", "YO",
"GO", "ROKU", "SHICHI", "HACHI", "KU", "JUU",
"JUU ICHI", "JUU NI"];
'JUU ICHI', 'JUU NI'];
const tensPrefixStr = [ "",
"JUU",
'NIJUU',
'SAN JUU',
'YON JUU',
'GO JUU'];
const japaneseNumberStr = [ "ZERO", "ICHII", "NI", "SAN", "SHI",
"GO", "ROKU", "NANA", "HACHI", "KU", "JUU"];
const japaneseMinuteStr = [ ["", "PUN"],
["IP","PUN" ],
["NI", "FUN"],
["SAN", "PUN"],
["YON","FUN"],
["GO", "HUN"],
["RO", "PUN"],
["NANA", "FUN"],
["HAP", "PUN"],
["KYU","FUN"],
["JUP", "PUN"]
];
function japaneseHoursToText(hours){
hours = hours % 12;
@ -292,33 +308,18 @@ function japaneseHoursToText(hours){
return japaneseHourStr[hours];
}
function japaneseNumberToText(value){
units = value % 10;
tens = (value/10) | 0;
if(tens == 1){
if(units > 0){
return "JUU " + japaneseNumberStr[units];
} else {
return "JUU ";
}
} if(tens > 1){
if(units > 0){
return japaneseNumberStr[tens] + " JUU " + japaneseNumberStr[units];
} else {
return japaneseNumberStr[tens] + " JUU";
}
} else {
return japaneseNumberStr[units];
}
}
function japaneseMinsToText(mins){
if(mins == 0){
return ["",""];
} else if(mins == 30)
return ["HAN",""];
else
return [japaneseNumberToText(mins),"FUN"];
else {
units = mins % 10;
mins_txt = japaneseMinuteStr[units];
tens = mins /10 | 0;
tens_txt = tensPrefixStr[tens];
return [tens_txt + ' ' + mins_txt[0], mins_txt[1]];
}
}
class JapaneseDateFormatter extends DateFormatter {
@ -329,6 +330,7 @@ class JapaneseDateFormatter extends DateFormatter {
formatDate(date){
hours_txt = japaneseHoursToText(date.getHours());
mins_txt = japaneseMinsToText(date.getMinutes());
console.log("mins=" + mins_txt);
return [hours_txt,"JI", mins_txt[0], mins_txt[1] ];
}
}
@ -336,10 +338,11 @@ class JapaneseDateFormatter extends DateFormatter {
let row_displays = [
new ShiftText(240,50,'',"Vector",40,10,10,40,[1,1,1]),
new ShiftText(240,60,'',"Vector",40,10,10,40,[1,1,1]),
new ShiftText(240,100,'',"Vector",20,10,10,50,[0.85,0.85,0.85]),
new ShiftText(240,120,'',"Vector",20,10,10,60,[0.85,0.85,0.85]),
new ShiftText(240,140,'',"Vector",20,10,10,60,[0.85,0.85,0.85])
new ShiftText(240,140,'',"Vector",20,10,10,70,[0.85,0.85,0.85]),
new ShiftText(240,140,'',"Vector",40,10,10,80,[1,1,1])
];
let date_formatters = [
@ -383,7 +386,7 @@ function reset_clock(){
function draw_clock(){
console.log("draw_clock");
let date = new Date();
date = new Date();
rows = date_formatter.formatDate(date);
var i;
for (i = 0; i < rows.length; i++) {
@ -391,6 +394,10 @@ function draw_clock(){
txt = rows[i];
display_row(display,txt);
}
for (j = i; j < row_displays.length; j++) {
display = row_displays[j];
display_row(display,'');
}
console.log(date);
}