Merge branch 'cbayer-i18n-april-cont' into 'master'

Translation cont' targeting end-of-april release

See merge request gridtracker.org/gridtracker!277

If this is changing anything in the UI or operational behavior, please prepare to update the wiki!
merge-requests/237/merge
T Loomis 2023-04-05 17:41:11 +00:00
commit 5f9ec70cb9
8 zmienionych plików z 202 dodań i 122 usunięć

Wyświetl plik

@ -20,6 +20,15 @@
<title>Callsign Lookup</title> <title>Callsign Lookup</title>
<link rel="stylesheet" href="./lib/style.css" /> <link rel="stylesheet" href="./lib/style.css" />
<script src="./lib/protos.js" type="text/javascript"></script> <script src="./lib/protos.js" type="text/javascript"></script>
<script src="./lib/jquery-3.6.1.min.js"></script>
<script src="./lib/CLDRPluralRuleParser.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.messagestore.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.fallbacks.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.parser.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.emitter.js" type="text/javascript"></script>
<script src="./lib/jquery.i18n.language.js" type="text/javascript"></script>
<script src="./lib/i18n.js" type="text/javascript"></script>
<script src="./lib/screens.js"></script> <script src="./lib/screens.js"></script>
<script> <script>
document.oncontextmenu = function () { document.oncontextmenu = function () {
@ -79,6 +88,8 @@
function init() { function init() {
ValidateCallsign(lookupCallsignInput, null); ValidateCallsign(lookupCallsignInput, null);
window.opener.GT.lookupWindowInitialized = true; window.opener.GT.lookupWindowInitialized = true;
loadChildWindowI18n();
} }
function addTextToClipboard(data) { function addTextToClipboard(data) {

Wyświetl plik

@ -798,6 +798,8 @@
"gt.qsoPage.Band": "波段", "gt.qsoPage.Band": "波段",
"gt.qsoPage.Mode": "模式", "gt.qsoPage.Mode": "模式",
"gt.qsoPage.QSL": "確認卡", "gt.qsoPage.QSL": "確認卡",
"gt.qsoPage.Sent": "Sent",
"gt.qsoPage.Rcvd": "Rcvd",
"gt.qsoPage.DXCC": "DXCC", "gt.qsoPage.DXCC": "DXCC",
"gt.qsoPage.Flag": "旗幟", "gt.qsoPage.Flag": "旗幟",
"gt.qsoPage.When": "當", "gt.qsoPage.When": "當",
@ -836,6 +838,7 @@
"gt.awardNames.USC": "美國各縣", "gt.awardNames.USC": "美國各縣",
"gt.awardNames.WPX": "前綴", "gt.awardNames.WPX": "前綴",
"gt.logbook.title": "日志", "gt.logbook.title": "日志",
"gt.logbook.scoreCard": "Score Card",
"gt.logbook.callsign": "呼號", "gt.logbook.callsign": "呼號",
"gt.logbook.firstContact": "首次通聯", "gt.logbook.firstContact": "首次通聯",
"gt.logbook.lastContact": "最後通聯", "gt.logbook.lastContact": "最後通聯",
@ -922,11 +925,13 @@
"gt.newMesg.Recvd": "接收來自", "gt.newMesg.Recvd": "接收來自",
"gt.lookup.lookingUp1": "正在查詢 ", "gt.lookup.lookingUp1": "正在查詢 ",
"gt.lookup.lookingUp2": "請等候...", "gt.lookup.lookingUp2": "請等候...",
"gt.callookDX1": "C A L L O O K<br/>毫無意義的業餘無線電美國呼號査詢<br/>僅限於美國和美國領土", "gt.callookDX1": "C A L L O O K",
"gt.callookDX2": "這呼號", "gt.callookDX2": "毫無意義的業餘無線電美國呼號査詢",
"gt.callookDX3": "請求來自", "gt.callookDX3":"僅限於美國和美國領土",
"gt.callookDX4": "您可能需要考慮使用 QRZ.com, 他們擁有免費會員資料, 提供大多數呼號有限數據", "gt.callookDX4": "這呼號",
"gt.callookDX5": "他們亦有付費會員的詳細資訊", "gt.callookDX5": "請求來自",
"gt.callookDX6": "您可能需要考慮使用 QRZ.com, 他們擁有免費會員資料, 提供大多數呼號有限數據",
"gt.callookDX7": "他們亦有付費會員的詳細資訊",
"gt.QRZhamQTH.valid": "有效", "gt.QRZhamQTH.valid": "有效",
"gt.QRZhamQTH.invalid": "無效回應", "gt.QRZhamQTH.invalid": "無效回應",
"gt.QRZhamQTH.error": "未知錯誤", "gt.QRZhamQTH.error": "未知錯誤",

Wyświetl plik

@ -799,6 +799,8 @@
"gt.qsoPage.Mode": "模式", "gt.qsoPage.Mode": "模式",
"gt.qsoPage.QSL": "QSL", "gt.qsoPage.QSL": "QSL",
"gt.qsoPage.DXCC": "DXCC", "gt.qsoPage.DXCC": "DXCC",
"gt.qsoPage.Sent": "Sent",
"gt.qsoPage.Rcvd": "Rcvd",
"gt.qsoPage.Flag": "国旗", "gt.qsoPage.Flag": "国旗",
"gt.qsoPage.When": "When", "gt.qsoPage.When": "When",
"gt.qsoPage.LoTW": "LoTW", "gt.qsoPage.LoTW": "LoTW",
@ -836,6 +838,7 @@
"gt.awardNames.USC": "美国各县", "gt.awardNames.USC": "美国各县",
"gt.awardNames.WPX": "前缀", "gt.awardNames.WPX": "前缀",
"gt.logbook.title": "Logbook", "gt.logbook.title": "Logbook",
"gt.logbook.scoreCard": "Score Card",
"gt.logbook.callsign": "呼号", "gt.logbook.callsign": "呼号",
"gt.logbook.firstContact": "第一歌通联的", "gt.logbook.firstContact": "第一歌通联的",
"gt.logbook.firstContact": "第一歌通联的2", "gt.logbook.firstContact": "第一歌通联的2",
@ -923,11 +926,13 @@
"gt.newMesg.Recvd": "接收自", "gt.newMesg.Recvd": "接收自",
"gt.lookup.lookingUp1": "先前查找 ", "gt.lookup.lookingUp1": "先前查找 ",
"gt.lookup.lookingUp2": "请稍等...", "gt.lookup.lookingUp2": "请稍等...",
"gt.callookDX1": "C A L L O O K<br/>NO-NONSENSE AMATEUR RADIO U.S.A. CALLSIGN LOOKUPS<br/>are limited to United States and United States Territories Only", "gt.callookDX1": "C A L L O O K",
"gt.callookDX2": "呼号", "gt.callookDX2": "NO-NONSENSE AMATEUR RADIO U.S.A. CALLSIGN LOOKUPS",
"gt.callookDX3": "请求来自", "gt.callookDX3": "are limited to United States and United States Territories Only",
"gt.callookDX4": "您可能想考虑使用QRZ。com他有免费服务为大多数呼号提供有限的数据查询功能", "gt.callookDX4": "呼号",
"gt.callookDX5": "付费会员的详细信息", "gt.callookDX5": "请求来自",
"gt.callookDX6": "您可能想考虑使用QRZ。com他有免费服务为大多数呼号提供有限的数据查询功能",
"gt.callookDX7": "付费会员的详细信息",
"gt.QRZhamQTH.valid": "有效的", "gt.QRZhamQTH.valid": "有效的",
"gt.QRZhamQTH.invalid": "无效响应", "gt.QRZhamQTH.invalid": "无效响应",
"gt.QRZhamQTH.error": "未知错误", "gt.QRZhamQTH.error": "未知错误",

Wyświetl plik

@ -486,7 +486,7 @@
"lookup.title": "Rufzeichen nachschlagen", "lookup.title": "Rufzeichen nachschlagen",
"lookup.callsign.label": "Rufzeichen", "lookup.callsign.label": "Rufzeichen",
"lookup.callsign.button": "Nachschlagen", "lookup.callsign.button": "Nachschlagen",
"lookup.noinfo": "Kein Rufzeichen,<br />bitte nachschlagen klicken!", "lookup.noinfo": "Kein Rufzeichen, bitte nachschlagen klicken!",
"COMMENT_gt_popup.html": "", "COMMENT_gt_popup.html": "",
"popup.title": "Datenfenster", "popup.title": "Datenfenster",
"COMMENT_gt_roster.html": "", "COMMENT_gt_roster.html": "",
@ -802,7 +802,7 @@
"gt.callsignBox.DXCC": "DXCC", "gt.callsignBox.DXCC": "DXCC",
"gt.callsignBox.CQ": "CQ", "gt.callsignBox.CQ": "CQ",
"gt.callsignBox.ITU": "ITU", "gt.callsignBox.ITU": "ITU",
"gt.callsignBox.Flag": "Flag", "gt.callsignBox.Flag": "Flagge",
"gt.callsignBox.QSO": "QSO", "gt.callsignBox.QSO": "QSO",
"gt.callsignBox.QSL": "QSL", "gt.callsignBox.QSL": "QSL",
"gt.callsignBox.When": "Wann", "gt.callsignBox.When": "Wann",
@ -818,14 +818,16 @@
"gt.qsoPage.Mode": "Betriebsart", "gt.qsoPage.Mode": "Betriebsart",
"gt.qsoPage.QSL": "QSL", "gt.qsoPage.QSL": "QSL",
"gt.qsoPage.DXCC": "DXCC", "gt.qsoPage.DXCC": "DXCC",
"gt.qsoPage.Flag": "Fahne", "gt.qsoPage.Sent": "Gesendet",
"gt.qsoPage.Rcvd": "Empfangen",
"gt.qsoPage.Flag": "Flagge",
"gt.qsoPage.When": "Wann", "gt.qsoPage.When": "Wann",
"gt.qsoPage.LoTW": "LoTW", "gt.qsoPage.LoTW": "LoTW",
"gt.qsoPage.eQSL": "eQSL", "gt.qsoPage.eQSL": "eQSL",
"gt.qsoPage.OQRS": "OQRS", "gt.qsoPage.OQRS": "OQRS",
"gt.dxccBox.Worked": "Gearbeitet", "gt.dxccBox.Worked": "Gearbeitet",
"gt.dxccBox.Name": "Name", "gt.dxccBox.Name": "Name",
"gt.dxccBox.Flag": "Fahne", "gt.dxccBox.Flag": "Flagge",
"gt.dxccBox.DXCC": "DXCC", "gt.dxccBox.DXCC": "DXCC",
"gt.dxccBox.Confirmed": "Bestätigt", "gt.dxccBox.Confirmed": "Bestätigt",
"gt.dxccBox.Needed": "Gebraucht", "gt.dxccBox.Needed": "Gebraucht",
@ -856,9 +858,10 @@
"gt.awardNames.WPX": "Präfixe", "gt.awardNames.WPX": "Präfixe",
"gt.logbook.title": "Logbuch", "gt.logbook.title": "Logbuch",
"gt.logbook.callsign": "Rufzeichen", "gt.logbook.callsign": "Rufzeichen",
"gt.logbook.scoreCard": "Ergebnisse",
"gt.logbook.firstContact": "Erster Kontakt", "gt.logbook.firstContact": "Erster Kontakt",
"gt.logbook.lastContact": "Letzter Kontakt", "gt.logbook.lastContact": "Letzter Kontakt",
"gt.logbook.topScore": "Höchstpunktzahl", "gt.logbook.topScore": "Punktzahl",
"gt.logbook.worked": "Gearbeitet", "gt.logbook.worked": "Gearbeitet",
"gt.logbook.confirmed": "Bestätigt", "gt.logbook.confirmed": "Bestätigt",
"gt.logbook.award": "Diplome", "gt.logbook.award": "Diplome",
@ -941,11 +944,13 @@
"gt.newMesg.Recvd": "Empfangen von", "gt.newMesg.Recvd": "Empfangen von",
"gt.lookup.lookingUp1": "Schlage nach ", "gt.lookup.lookingUp1": "Schlage nach ",
"gt.lookup.lookingUp2": "Bitte warten...", "gt.lookup.lookingUp2": "Bitte warten...",
"gt.callookDX1": "C A L L O O K<br/>U.S Funkamateur-Rufzeichen Nachschlagewerk<br/>ist auf USA und US-Staatsgebiete beschränkt.", "gt.callookDX1": "C A L L O O K",
"gt.callookDX2": "Das angefragte", "gt.callookDX2": "U.S Funkamateur-Rufzeichen Nachschlagewerk",
"gt.callookDX3": "Rufzeichen ist aus", "gt.callookDX3": "ist auf USA und US-Staatsgebiete beschränkt.",
"gt.callookDX4": "Eventuell solltest du zu QRZ.com wechseln, deren kostenloses Konto hat eingeschränkte Daten für die meisten Rufzeichen", "gt.callookDX4": "Das angefragte",
"gt.callookDX5": "und es gibt vollständige Details für kostenpflichtige Konten", "gt.callookDX5": "Rufzeichen ist aus",
"gt.callookDX6": "Eventuell solltest du zu QRZ.com wechseln, deren kostenloses Konto hat eingeschränkte Daten für die meisten Rufzeichen",
"gt.callookDX7": "und es gibt vollständige Details für kostenpflichtige Konten",
"gt.QRZhamQTH.valid": "Gültig", "gt.QRZhamQTH.valid": "Gültig",
"gt.QRZhamQTH.invalid": "Ungültige Antwort", "gt.QRZhamQTH.invalid": "Ungültige Antwort",
"gt.QRZhamQTH.error": "Unbekannter Fehler", "gt.QRZhamQTH.error": "Unbekannter Fehler",

Wyświetl plik

@ -751,7 +751,7 @@
"gt.wcTable.Worked": "Worked", "gt.wcTable.Worked": "Worked",
"gt.wcTable.Band": "Band", "gt.wcTable.Band": "Band",
"gt.wcTable.Mode": "Mode", "gt.wcTable.Mode": "Mode",
"gt.wcTable.Confirmed": "confirmed", "gt.wcTable.Confirmed": "Confirmed",
"gt.wcTable.Needed": "Needed", "gt.wcTable.Needed": "Needed",
"gt.gridTable.Dist": "Dist", "gt.gridTable.Dist": "Dist",
"gt.gridTable.Azim": "Azim", "gt.gridTable.Azim": "Azim",
@ -799,6 +799,8 @@
"gt.qsoPage.Band": "Band", "gt.qsoPage.Band": "Band",
"gt.qsoPage.Mode": "Mode", "gt.qsoPage.Mode": "Mode",
"gt.qsoPage.QSL": "QSL", "gt.qsoPage.QSL": "QSL",
"gt.qsoPage.Sent": "Sent",
"gt.qsoPage.Rcvd": "Rcvd",
"gt.qsoPage.DXCC": "DXCC", "gt.qsoPage.DXCC": "DXCC",
"gt.qsoPage.Flag": "Flag", "gt.qsoPage.Flag": "Flag",
"gt.qsoPage.When": "When", "gt.qsoPage.When": "When",
@ -837,6 +839,7 @@
"gt.awardNames.USC": "US Counties", "gt.awardNames.USC": "US Counties",
"gt.awardNames.WPX": "Prefixes", "gt.awardNames.WPX": "Prefixes",
"gt.logbook.title": "Logbook", "gt.logbook.title": "Logbook",
"gt.logbook.scoreCard": "Score Card",
"gt.logbook.callsign": "Callsign", "gt.logbook.callsign": "Callsign",
"gt.logbook.firstContact": "First Contact", "gt.logbook.firstContact": "First Contact",
"gt.logbook.lastContact": "Last Contact", "gt.logbook.lastContact": "Last Contact",
@ -923,11 +926,13 @@
"gt.newMesg.Recvd": "Received from", "gt.newMesg.Recvd": "Received from",
"gt.lookup.lookingUp1": "Looking up ", "gt.lookup.lookingUp1": "Looking up ",
"gt.lookup.lookingUp2": "please wait...", "gt.lookup.lookingUp2": "please wait...",
"gt.callookDX1": "C A L L O O K<br/>NO-NONSENSE AMATEUR RADIO U.S.A. CALLSIGN LOOKUPS<br/>are limited to United States and United States Territories Only", "gt.callookDX1": "C A L L O O K",
"gt.callookDX2": "The callsign", "gt.callookDX2": "NO-NONSENSE AMATEUR RADIO U.S.A. CALLSIGN LOOKUPS",
"gt.callookDX3": "requested is from", "gt.callookDX3": "are limited to United States and United States Territories Only",
"gt.callookDX4": "You might want to consider using QRZ.com, they have a free membership that provides limited data for most callsigns", "gt.callookDX4": "The callsign",
"gt.callookDX5": "and they have full details available for paid members", "gt.callookDX5": "requested is from",
"gt.callookDX6": "You might want to consider using QRZ.com, they have a free membership that provides limited data for most callsigns",
"gt.callookDX7": "and they have full details available for paid members",
"gt.QRZhamQTH.valid": "Valid", "gt.QRZhamQTH.valid": "Valid",
"gt.QRZhamQTH.invalid": "Invalid Response", "gt.QRZhamQTH.invalid": "Invalid Response",
"gt.QRZhamQTH.error": "Unknown Error", "gt.QRZhamQTH.error": "Unknown Error",

Wyświetl plik

@ -1658,14 +1658,14 @@ function addDeDx(
function timeoutSetUdpPort() function timeoutSetUdpPort()
{ {
GT.appSettings.wsjtUdpPort = udpPortInput.value; GT.appSettings.wsjtUdpPort = udpPortInput.value;
lastMsgTimeDiv.innerHTML = "Waiting for msg..."; lastMsgTimeDiv.innerHTML = $.i18n("gt.timeoutSetUdpPort");
GT.setNewUdpPortTimeoutHandle = null; GT.setNewUdpPortTimeoutHandle = null;
} }
function setUdpPort() function setUdpPort()
{ {
if (GT.setNewUdpPortTimeoutHandle != null) { nodeTimers.clearTimeout(GT.setNewUdpPortTimeoutHandle); } if (GT.setNewUdpPortTimeoutHandle != null) { nodeTimers.clearTimeout(GT.setNewUdpPortTimeoutHandle); }
lastMsgTimeDiv.innerHTML = "..setting.."; lastMsgTimeDiv.innerHTML = $.i18n("gt.setUdpPort");
GT.setNewUdpPortTimeoutHandle = nodeTimers.setTimeout(timeoutSetUdpPort, 1000); GT.setNewUdpPortTimeoutHandle = nodeTimers.setTimeout(timeoutSetUdpPort, 1000);
} }
@ -2067,11 +2067,22 @@ function createTooltTipTable(toolElement)
if (Object.keys(toolElement.hashes).length > 0) if (Object.keys(toolElement.hashes).length > 0)
{ {
worker += worker +=
"<tr align='center'><td>Call</td><td>Freq</td><td>Sent</td><td>Rcvd</td><td>Station</td><td>Mode</td><td>Band</td><td>QSL</td><td>Last Msg</td><td>DXCC</td><td>Time</td>"; "<tr align='center'>" +
"<td>" + $.i18n("gt.newCallList.Call") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Freq") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Sent") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Rcvd") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Station") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Mode") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Band") + "</td>" +
"<td>" + $.i18n("gt.newCallList.QSL") + "</td>" +
"<td>" + $.i18n("gt.newCallList.LastMsg") + "</td>" +
"<td>" + $.i18n("gt.newCallList.DXCC") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Time") + "</td>";
if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>LoTW</td>"; if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>" + $.i18n("gt.qsoPage.LoTW") + "</td>";
if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>eQSL</td>"; if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>" + $.i18n("gt.qsoPage.eQSL") + "</td>";
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>OQRS</td>"; if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>" + $.i18n("gt.qsoPage.OQRS") + "</td>";
worker += "</tr>"; worker += "</tr>";
} }
for (var KeyIsHash in toolElement.hashes) for (var KeyIsHash in toolElement.hashes)
@ -2098,11 +2109,21 @@ function createTooltTipTable(toolElement)
if (toolElement.liveHash != null && Object.keys(toolElement.liveHash).length > 0) if (toolElement.liveHash != null && Object.keys(toolElement.liveHash).length > 0)
{ {
worker += worker +=
"<tr align='center'><td>Call</td><td>Freq</td><td>Sent</td><td>Rcvd</td><td>Station</td><td>Mode</td><td>Band</td><td>Last Msg</td><td>DXCC</td><td>Time</td>"; "<tr align='center'>" +
"<td>" + $.i18n("gt.newCallList.Call") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Freq") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Sent") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Rcvd") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Station") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Mode") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Band") + "</td>" +
"<td>" + $.i18n("gt.newCallList.LastMsg") + "</td>" +
"<td>" + $.i18n("gt.newCallList.DXCC") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Time") + "</td>";
if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>LoTW</td>"; if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.LoTW") + "</td>";
if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>eQSL</td>"; if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.eQSL") + "</td>";
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>OQRS</td>"; if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.OQRS") + "</td>";
worker += "</tr>"; worker += "</tr>";
} }
for (var KeyIsCall in toolElement.liveHash) for (var KeyIsCall in toolElement.liveHash)
@ -2203,7 +2224,7 @@ function createTooltTipTable(toolElement)
return newCallList.length; return newCallList.length;
} }
// creates table for filling the pop-up winodw with log entries of unconfirmed qsos. // creates table for filling the pop-up window with log entries of unconfirmed qsos.
function createTooltTipTableLogbook(toolElement) function createTooltTipTableLogbook(toolElement)
{ {
var myTooltip = document.getElementById("myTooltip"); var myTooltip = document.getElementById("myTooltip");
@ -2221,11 +2242,20 @@ function createTooltTipTableLogbook(toolElement)
"</th></tr>"; "</th></tr>";
worker += worker +=
"<tr align='center'><td>Call</td><td>Freq</td><td>Sent</td><td>Rcvd</td><td>Station</td><td>Mode</td><td>Band</td><td>DXCC</td><td>Time</td>"; "<tr align='center'>" +
"<td>" + $.i18n("gt.newCallList.Call") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Freq") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Sent") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Rcvd") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Station") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Mode") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Band") + "</td>" +
"<td>" + $.i18n("gt.newCallList.DXCC") + "</td>" +
"<td>" + $.i18n("gt.newCallList.Time") + "</td>";
if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>LoTW</td>"; if (GT.callsignLookups.lotwUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.LoTW") + "</td>";
if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>eQSL</td>"; if (GT.callsignLookups.eqslUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.eQSL") + "</td>";
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>OQRS</td>"; if (GT.callsignLookups.oqrsUseEnable == true) worker += "<td>" + $.i18n("gt.newCallList.OQRS") + "</td>";
worker += "</tr>"; worker += "</tr>";
var newCallList = Array(); var newCallList = Array();
@ -3584,7 +3614,7 @@ function trophyOver(feature)
{ {
wc1Table = "<td align=center><table class='darkTable'>"; wc1Table = "<td align=center><table class='darkTable'>";
wc1Table += wc1Table +=
"<tr><td colspan=2 ><font color='yellow'>Worked</font></td></tr>"; "<tr><td colspan=2 ><font color='yellow'>" + $.i18n("gt.wcTable.Worked") + "</font></td></tr>";
wc1Table += "<tr><td align=right><font color='green'>Band</font></td>"; wc1Table += "<tr><td align=right><font color='green'>Band</font></td>";
wc1Table += "<td align=left><table class='subtable'>"; wc1Table += "<td align=left><table class='subtable'>";
var keys = Object.keys(infoObject.worked_bands).sort(); var keys = Object.keys(infoObject.worked_bands).sort();
@ -3601,7 +3631,7 @@ function trophyOver(feature)
wc1Table += "</table></td>"; wc1Table += "</table></td>";
wc1Table += "</tr>"; wc1Table += "</tr>";
wc1Table += "<tr>"; wc1Table += "<tr>";
wc1Table += "<td align=right><font color='orange'>Mode</font></td>"; wc1Table += "<td align=right><font color='orange'>" + $.i18n("gt.wcTable.Mode") + "</font></td>";
wc1Table += "<td align=left><table class='subtable'>"; wc1Table += "<td align=left><table class='subtable'>";
keys = Object.keys(infoObject.worked_modes).sort(); keys = Object.keys(infoObject.worked_modes).sort();
for (key in keys) for (key in keys)
@ -3624,8 +3654,8 @@ function trophyOver(feature)
{ {
wcTable = "<td align=center><table class='darkTable'>"; wcTable = "<td align=center><table class='darkTable'>";
wcTable += wcTable +=
"<tr><td colspan=2 ><font color='lightgreen'>Confirmed</font></td></tr>"; "<tr><td colspan=2 ><font color='lightgreen'>" + $.i18n("gt.wcTable.Confirmed") + "</font></td></tr>";
wcTable += "<tr><td align=right><font color='green'>Band</font></td>"; wcTable += "<tr><td align=right><font color='green'>" + $.i18n("gt.wcTable.Band") + "</font></td>";
wcTable += "<td align=left><table class='subtable'>"; wcTable += "<td align=left><table class='subtable'>";
var keys = Object.keys(infoObject.confirmed_bands).sort(); var keys = Object.keys(infoObject.confirmed_bands).sort();
for (key in keys) for (key in keys)
@ -3641,7 +3671,7 @@ function trophyOver(feature)
wcTable += "</table></td>"; wcTable += "</table></td>";
wcTable += "</tr>"; wcTable += "</tr>";
wcTable += "<tr>"; wcTable += "<tr>";
wcTable += "<td align=right><font color='orange'>Mode</font></td>"; wcTable += "<td align=right><font color='orange'>" + $.i18n("gt.wcTable.Mode") + "</font></td>";
wcTable += "<td align=left><table class='subtable'>"; wcTable += "<td align=left><table class='subtable'>";
keys = Object.keys(infoObject.confirmed_modes).sort(); keys = Object.keys(infoObject.confirmed_modes).sort();
for (key in keys) for (key in keys)
@ -3661,7 +3691,7 @@ function trophyOver(feature)
if (!infoObject.worked && !infoObject.confirmed) if (!infoObject.worked && !infoObject.confirmed)
{ {
worker += worker +=
"<tr><td colspan=2 ><font color='orange'>Needed</font></td></tr>"; "<tr><td colspan=2 ><font color='orange'>" + $.i18n("gt.wcTable.Needed") + "</font></td></tr>";
} }
else else
{ {
@ -7455,7 +7485,8 @@ function importSettings()
function showCallsignBox(redraw) function showCallsignBox(redraw)
{ {
var worker = var worker =
"<div style='vertical-align:top;display:inline-block;margin:2px;color:cyan;font-weight:bold'>Callsigns and DXCC Heard</div><br/>"; "<div style='vertical-align:top;display:inline-block;margin:2px;color:cyan;font-weight:bold'>" +
$.i18n("gt.callsignBox.title") + "</div><br/>";
GT.newCallsignCount = Object.keys(GT.liveCallsigns).length; GT.newCallsignCount = Object.keys(GT.liveCallsigns).length;
if (GT.newCallsignCount > 0) if (GT.newCallsignCount > 0)
@ -7464,11 +7495,20 @@ function showCallsignBox(redraw)
worker += worker +=
"<div style='display:inline-block;padding-right:8px;overflow:auto;overflow-x:hidden;height:" + "<div style='display:inline-block;padding-right:8px;overflow:auto;overflow-x:hidden;height:" +
Math.min(GT.newCallsignCount * 24 + 26, getStatsWindowHeight()) + Math.min(GT.newCallsignCount * 24 + 26, getStatsWindowHeight()) + "px;'>" +
"px;'><table class='darkTable' align=center><th align=left>Callsign</th><th align=left>Grid</th><th>DXCC</th><th>CQ</th><th>ITU</th><th>Flag</th><th align=left>QSO</th><th>QSL</th><th>When</th>"; // <th>ITUz</th><th>CQz</th><th>ISO</th>"; "<table class='darkTable' align=center>" +
if (GT.callsignLookups.lotwUseEnable == true) worker += "<th>LoTW</th>"; "<th align=left>" + $.i18n("gt.callsignBox.callsign") + "</th>" +
if (GT.callsignLookups.eqslUseEnable == true) worker += "<th>eQSL</th>"; "<th align=left>" + $.i18n("gt.callsignBox.Grid") + "</th>" +
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<th>OQRS</th>"; "<th>" + $.i18n("gt.callsignBox.DXCC") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.CQ") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.ITU") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.Flag") + "</th>" +
"<th align=left>" + $.i18n("gt.callsignBox.QSO") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.Grid") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.When") + "</th>"; // <th>ITUz</th><th>CQz</th><th>ISO</th>";
if (GT.callsignLookups.lotwUseEnable == true) worker += "<th>" + $.i18n("gt.callsignBox.LoTW") + "</th>";
if (GT.callsignLookups.eqslUseEnable == true) worker += "<th>" + $.i18n("gt.callsignBox.eQSL") + "</th>";
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<th>" + $.i18n("gt.callsignBox.OQRS") + "</th>";
for (var x in GT.liveCallsigns) for (var x in GT.liveCallsigns)
{ {
if (GT.liveCallsigns[x].dxcc != -1) if (GT.liveCallsigns[x].dxcc != -1)
@ -7567,9 +7607,14 @@ function showCallsignBox(redraw)
Object.keys(GT.dxccCount).length * 23 + 45, Object.keys(GT.dxccCount).length * 23 + 45,
getStatsWindowHeight() getStatsWindowHeight()
) + ) +
"px;'><table class='darkTable' align=center><tr><th colspan=4 style='font-weight:bold'>DXCC (" + "px;'>" +
heard + "<table class='darkTable' align=center>" +
")</th><tr><th align=left>Name</th><th>Flag</th><th align=left>Calls</th></tr>"; "<tr><th colspan=4 style='font-weight:bold'>DXCC (" + heard + ")</th>" +
"<tr>" +
"<th align=left>" + $.i18n("gt.callsignBox.Name") + "</th>" +
"<th>" + $.i18n("gt.callsignBox.Flag") + "</th>" +
"<th align=left>" + $.i18n("gt.callsignBox.Calls") + "</th>" +
"</tr>";
Object.keys(List) Object.keys(List)
.sort() .sort()
.forEach(function (key, i) .forEach(function (key, i)
@ -8033,19 +8078,19 @@ function showWorkedBox(sortIndex, nextPage, redraw)
worker += "<th></th>"; worker += "<th></th>";
worker += "<th colspan=2><div id='dxccFilterDiv'></div></th>"; worker += "<th colspan=2><div id='dxccFilterDiv'></div></th>";
worker += "</tr> "; worker += "</tr> ";
worker += "<tr><th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(0);'>Station</th>"; worker += "<tr><th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(0);'>" + $.i18n("gt.qsoPage.Station") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(1);'>Grid</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(1);'>" + $.i18n("gt.qsoPage.Grid") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(5);'>Band</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(5);'>" + $.i18n("gt.qsoPage.Band") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(2);'>Mode</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(2);'>" + $.i18n("gt.qsoPage.Mode") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(6);'>QSL</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(6);'>" + $.i18n("gt.qsoPage.QSL") + "</th>";
worker += "<th align=center>Sent</th>"; worker += "<th align=center>" + $.i18n("gt.qsoPage.Sent") + "</th>";
worker += "<th align=center>Rcvd</th>"; worker += "<th align=center>" + $.i18n("gt.qsoPage.Rcvd") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(3);'>DXCC</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(3);'>" + $.i18n("gt.qsoPage.DXCC") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(3);'>Flag</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(3);'>" + $.i18n("gt.qsoPage.Flag") + "</th>";
worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(4);'>When</th>"; worker += "<th style='cursor:pointer;' align=center onclick='window.opener.showWorkedBox(4);'>" + $.i18n("gt.qsoPage.When") + "</th>";
if (GT.callsignLookups.lotwUseEnable == true) worker += "<th>LoTW</th>"; if (GT.callsignLookups.lotwUseEnable == true) worker += "<th>" + $.i18n("gt.qsoPage.LoTW") + "</th>";
if (GT.callsignLookups.eqslUseEnable == true) worker += "<th>eQSL</th>"; if (GT.callsignLookups.eqslUseEnable == true) worker += "<th>" + $.i18n("gt.qsoPage.eQSL") + "</th>";
if (GT.callsignLookups.oqrsUseEnable == true) worker += "<th>OQRS</th>"; if (GT.callsignLookups.oqrsUseEnable == true) worker += "<th>" + $.i18n("gt.qsoPage.OQRS") + "</th>";
worker += "</tr>"; worker += "</tr>";
var key = null; var key = null;
@ -9064,7 +9109,7 @@ function showStatBox(resize)
{ {
setStatsDiv( setStatsDiv(
"statViewDiv", "statViewDiv",
"&nbsp;<br/>...Parsing Log Entries...<br/>&nbsp;" "&nbsp;<br/>" + $.i18n("gt.statBox.NoEntries") + "<br/>&nbsp;"
); );
setStatsDivHeight("statViewDiv", "auto"); setStatsDivHeight("statViewDiv", "auto");
GT.statBoxTimer = nodeTimers.setTimeout(renderStatsBox, 250); GT.statBoxTimer = nodeTimers.setTimeout(renderStatsBox, 250);
@ -9073,7 +9118,7 @@ function showStatBox(resize)
{ {
setStatsDiv( setStatsDiv(
"statViewDiv", "statViewDiv",
"&nbsp;<br/>No log entries available, load one or more ADIF logs<br/>&nbsp;" "&nbsp;<br/>" + $.i18n("gt.statBox.NoEntries") + "<br/>&nbsp;"
); );
setStatsDivHeight("statViewDiv", "auto"); setStatsDivHeight("statViewDiv", "auto");
} }
@ -9503,28 +9548,28 @@ function renderStatsBox()
} }
var TypeNames = { var TypeNames = {
0: ["MIXED", "Mixed", ""], 0: ["MIXED", $.i18n("gt.typeNames.Mixed"), ""],
1: ["DIGITAL", "Digital", ""], 1: ["DIGITAL", $.i18n("gt.typeNames.Digital"), ""],
2: ["PHONE", "Phone", ""], 2: ["PHONE", $.i18n("gt.typeNames.Phone"), ""],
3: ["CW", "CW", ""], 3: ["CW", $.i18n("gt.typeNames.CW"), ""],
4: ["Other", "Other", ""] 4: ["Other", $.i18n("gt.typeNames.Other"), ""]
}; };
var AwardNames = { var AwardNames = {
0: ["WRFA", "Callsigns", "WRFA", "yellow"], 0: ["WRFA", $.i18n("gt.awardNames.WRFA"), "WRFA", "yellow"],
1: ["GRID", "Grids", "GSA", "cyan"], 1: ["GRID", $.i18n("gt.awardNames.Grid"), "GSA", "cyan"],
2: ["DXCC", "DXCCs", "DXWA", "orange"], 2: ["DXCC", $.i18n("gt.awardNames.DXCC"), "DXWA", "orange"],
3: ["CQ", "CQ Zones", "WAZ", "lightgreen"], 3: ["CQ", $.i18n("gt.awardNames.CQ"), "WAZ", "lightgreen"],
4: ["ITU", "ITU Zones", "ITUz", "#DD44DD"], 4: ["ITU", $.i18n("gt.awardNames.ITU"), "ITUz", "#DD44DD"],
5: ["WAC", "Continents", "WAC", "cyan"], 5: ["WAC", $.i18n("gt.awardNames.WAC"), "WAC", "cyan"],
6: ["WAS", "US States", "WAS", "lightblue"], 6: ["WAS", $.i18n("gt.awardNames.WAS"), "WAS", "lightblue"],
7: ["USC", "US Counties", "USA-CA", "orange"], 7: ["USC", $.i18n("gt.awardNames.USC"), "USA-CA", "orange"],
8: ["WPX", "Prefixes", "WPX", "yellow"] 8: ["WPX", $.i18n("gt.awardNames.WPX"), "WPX", "yellow"]
}; };
worker = "<font color='cyan'>"; worker = "<font color='cyan'>";
worker += "<h1>Logbook</h1>"; worker += "<h1>" + $.i18n("gt.logbook.title") + "</h1>";
worker += worker +=
"<table style='display:inline-table;margin:5px;' class='darkTable'>"; "<table style='display:inline-table;margin:5px;' class='darkTable'>";
@ -9538,20 +9583,22 @@ function renderStatsBox()
Object.keys(details.callsigns).sort().join(", ") + Object.keys(details.callsigns).sort().join(", ") +
"</b></td></tr>"; "</b></td></tr>";
worker += worker +=
"<tr><td>First Contact</td><td style='color:white' >" + "<tr><td>" + $.i18n("gt.logbook.firstContact") + "</td><td style='color:white' >" +
userTimeString(details.oldest * 1000) + userTimeString(details.oldest * 1000) +
"</td></tr>"; "</td></tr>";
worker += worker +=
"<tr><td>Last Contact</td><td style='color:white' >" + "<tr><td>" + $.i18n("gt.logbook.lastContact") + "</td><td style='color:white' >" +
userTimeString(details.newest * 1000) + userTimeString(details.newest * 1000) +
"</td></tr>"; "</td></tr>";
worker += "</table>"; worker += "</table>";
worker += "</br>"; worker += "</br>";
worker += "<h1>Score Card</h1>"; worker += "<h1>" + $.i18n("gt.logbook.scoreCard") + "</h1>";
worker += worker +=
"<table style='display:inline-table;margin:5px;' class='darkTable'>"; "<table style='display:inline-table;margin:5px;' class='darkTable'>";
worker += worker +=
"<tr><th>Top Score</th><th style='color:yellow'>Worked</th><th style='color:lightgreen'>Confirmed</th></tr>"; "<tr><th>" + $.i18n("gt.logbook.topScore") + "</th>" +
"<th style='color:yellow'>" + $.i18n("gt.logbook.worked") + "</th>" +
"<th style='color:lightgreen'>" + $.i18n("gt.logbook.confirmed") + "</th></tr>";
for (var key in AwardNames) for (var key in AwardNames)
{ {
@ -9585,7 +9632,7 @@ function renderStatsBox()
scoreSection = "Long Distance"; scoreSection = "Long Distance";
worker += "<tr><td style='color:white'>Long Distance</td>"; worker += "<tr><td style='color:white'>" + $.i18n("gt.score.LongDist") + "</td>";
worker += worker +=
"<td style='color:lightgreen'>" + "<td style='color:lightgreen'>" +
long_distance.worked_unit + long_distance.worked_unit +
@ -9620,7 +9667,7 @@ function renderStatsBox()
scoreSection = "Short Distance"; scoreSection = "Short Distance";
worker += "<tr><td style='color:white' >Short Distance</td>"; worker += "<tr><td style='color:white' >" + $.i18n("gt.score.ShortDist") + "</td>";
worker += worker +=
"<td style='color:lightblue'>" + "<td style='color:lightblue'>" +
short_distance.worked_unit + short_distance.worked_unit +
@ -9656,7 +9703,7 @@ function renderStatsBox()
worker += "</tr>"; worker += "</tr>";
worker += "</table>"; worker += "</table>";
worker += "</br>"; worker += "</br>";
worker += "<h1>Award Types</h1>"; worker += "<h1>" + $.i18n("gt.AwardTypes") + "</h1>";
scoreSection = "Award Types"; scoreSection = "Award Types";
for (var key in AwardNames) for (var key in AwardNames)
@ -9672,7 +9719,7 @@ function renderStatsBox()
scoreSection = "Mode Types"; scoreSection = "Mode Types";
worker += "<h1>Mode Types</h1>"; worker += "<h1>" + $.i18n("gt.ModeTypes") + "</h1>";
for (var key in TypeNames) for (var key in TypeNames)
{ {
worker += createStatTable( worker += createStatTable(
@ -9684,10 +9731,10 @@ function renderStatsBox()
worker += "<br/>"; worker += "<br/>";
worker += "<h1>Distances</h1>"; worker += "<h1>" + $.i18n("gt.Distances") + "</h1>";
scoreSection = "Distances"; scoreSection = "Distances";
worker += createDistanceTable(long_distance, "Longest Distance"); worker += createDistanceTable(long_distance, $.i18n("gt.LongestDist"));
worker += createDistanceTable(short_distance, "Shortest Distance"); worker += createDistanceTable(short_distance, $.i18n("gt.ShortestDist"));
worker += "<br/>"; worker += "<br/>";
} }
catch (e) catch (e)
@ -9695,7 +9742,7 @@ function renderStatsBox()
worker += worker +=
"<br/> In Section: " + "<br/> In Section: " +
scoreSection + scoreSection +
"<br/>Error Generating Stats<br/>Please take a screenshot and send to team@gridtracker.org"; "<br/>" + $.i18n("gt.scorecardError");
} }
setStatsDiv("statViewDiv", worker); setStatsDiv("statViewDiv", worker);
@ -9718,8 +9765,9 @@ function createDistanceTable(obj, name)
name + name +
"</th></tr>"; "</th></tr>";
worker += worker +=
"<tr><td></td><td><font color='yellow'>Worked</font></td><td colspan=2 ><font color='lightgreen'>Confirmed</font></td></tr>"; "<tr><td></td><td><font color='yellow'>" + $.i18n("gt.distanceTable.Worked") +
worker += "<tr><td align=center><font color='lightgreen'>Bands</font></td>"; "</font></td><td colspan=2 ><font color='lightgreen'>" + $.i18n("gt.distanceTable.Confirmed") + "</font></td></tr>";
worker += "<tr><td align=center><font color='lightgreen'>" + $.i18n("gt.distanceTable.Bands") + "</font></td>";
worker += "<td align=left><table class='subtable'>"; worker += "<td align=left><table class='subtable'>";
var keys = Object.keys(obj.band).sort(numberSort); var keys = Object.keys(obj.band).sort(numberSort);
for (var key in keys) for (var key in keys)
@ -9777,7 +9825,7 @@ function createDistanceTable(obj, name)
worker += "</table></td>"; worker += "</table></td>";
worker += "</tr>"; worker += "</tr>";
worker += "<tr><td align=center><font color='orange'>Modes</font></td>"; worker += "<tr><td align=center><font color='orange'>" + $.i18n("gt.distanceTable.Modes") + "</font></td>";
worker += "<td align=left><table class='subtable'>"; worker += "<td align=left><table class='subtable'>";
keys = Object.keys(obj.mode).sort(); keys = Object.keys(obj.mode).sort();
for (var key in keys) for (var key in keys)
@ -9834,7 +9882,7 @@ function createDistanceTable(obj, name)
} }
worker += "</table></td>"; worker += "</table></td>";
worker += "</tr>"; worker += "</tr>";
worker += "<tr><td align=center><font color='#DD44DD'>Types</font></td>"; worker += "<tr><td align=center><font color='#DD44DD'>" + $.i18n("gt.distanceTable.Types") + "</font></td>";
worker += "<td align=left><table class='subtable'>"; worker += "<td align=left><table class='subtable'>";
keys = Object.keys(obj.type).sort(); keys = Object.keys(obj.type).sort();
for (var key in keys) for (var key in keys)
@ -9940,14 +9988,14 @@ function createStatTable(title, infoObject, awardName)
wc1Table += wc1Table +=
"<tr>" + "<tr>" +
award + award +
"<td><font color='yellow'>Worked</font> <font color='white'>(" + "<td><font color='yellow'>" + $.i18n("gt.statTable.Worked") + "</font> <font color='white'>(" +
infoObject.worked + infoObject.worked +
")</font></td><td colspan=2 ><font color='lightgreen'>Confirmed</font> <font color='white'>(" + ")</font></td><td colspan=2 ><font color='lightgreen'>" + $.i18n("gt.statTable.Confirmed") + "</font> <font color='white'>(" +
infoObject.confirmed + infoObject.confirmed +
")</font></td></tr>"; ")</font></td></tr>";
wc1Table += wc1Table +=
"<tr><td align=center><font color='lightgreen'>Bands</font></td>"; "<tr><td align=center><font color='lightgreen'>" + $.i18n("gt.statTable.Bands") + "</font></td>";
wc1Table += "<td align=left><table class='subtable'>"; wc1Table += "<td align=left><table class='subtable'>";
var keys = Object.keys(infoObject.worked_bands).sort(numberSort); var keys = Object.keys(infoObject.worked_bands).sort(numberSort);
@ -9981,7 +10029,7 @@ function createStatTable(title, infoObject, awardName)
wc1Table += "</tr>"; wc1Table += "</tr>";
wc1Table += "<tr>"; wc1Table += "<tr>";
wc1Table += "<td align=center><font color='orange'>Modes</font></td>"; wc1Table += "<td align=center><font color='orange'>" + $.i18n("gt.statTable.Modes") + "</font></td>";
wc1Table += "<td align=left><table class='subtable'>"; wc1Table += "<td align=left><table class='subtable'>";
keys = Object.keys(infoObject.worked_modes).sort(); keys = Object.keys(infoObject.worked_modes).sort();
for (var key in keys) for (var key in keys)
@ -10018,7 +10066,7 @@ function createStatTable(title, infoObject, awardName)
if (infoObject.worked_type_count > 0) if (infoObject.worked_type_count > 0)
{ {
wc1Table += "<tr>"; wc1Table += "<tr>";
wc1Table += "<td align=center><font color='#DD44DD'>Types</font></td>"; wc1Table += "<td align=center><font color='#DD44DD'>" + $.i18n("gt.statTable.Types") + "</font></td>";
wc1Table += "<td align=left><table class='subtable'>"; wc1Table += "<td align=left><table class='subtable'>";
var keys = Object.keys(infoObject.worked_types).sort(); var keys = Object.keys(infoObject.worked_types).sort();
for (var key in keys) for (var key in keys)
@ -13256,7 +13304,7 @@ document.addEventListener("drop", function (event)
GT.startupTable = [ GT.startupTable = [
[startupVersionInit, "Completed Version Check"], [startupVersionInit, "Completed Version Check"],
[loadi18n, "Loading Locales"], [loadI18n, "Loading Locales"],
[qsoBackupFileInit, "QSO Backup Initialized"], [qsoBackupFileInit, "QSO Backup Initialized"],
[callsignServicesInit, "Callsign Services Initialized"], [callsignServicesInit, "Callsign Services Initialized"],
[loadMapSettings, "Map Settings Initialized"], [loadMapSettings, "Map Settings Initialized"],
@ -14076,17 +14124,18 @@ function continueWithLookup(callsign, gridPass)
else else
{ {
var worker = var worker =
"<center>C A L L O O K<br/>NO-NONSENSE AMATEUR RADIO U.S.A. CALLSIGN LOOKUPS<br/>are limited to United States and United States Territories Only<br/>"; "<center>" + $.i18n("gt.callookDX1") +
"<br/>" + $.i18n("gt.callookDX2") +
"<br/>" + $.i18n("gt.callookDX3") + "<br/>";
worker += worker +=
"<br/>The callsign <font color='orange'>" + "<br/>" + $.i18n("gt.callookDX4") + " <font color='orange'> " +
callsign + callsign +
"</font> requested is from <font color='yellow'>" + "</font> " + $.i18n("gt.callookDX5") + " <font color='yellow'> " +
where + where +
"</font><br/>"; "</font><br/>";
worker += worker +=
"<br/><br/>You might want to consider using QRZ.com, they have a free membership that provides limited data for most callsigns<br/>"; "<br/><br/>" + $.i18n("gt.callookDX6") + "<br/>";
worker += worker += $.i18n("gt.callookDX7") + "<br/></center>";
"and they have full details available for paid members<br/></center>";
setLookupDiv("lookupInfoDiv", worker); setLookupDiv("lookupInfoDiv", worker);
} }
@ -14365,7 +14414,7 @@ function qthHamLookupResults(buffer, gridPass, useCache)
GT.qrzLookupSessionId = null; GT.qrzLookupSessionId = null;
setLookupDiv( setLookupDiv(
"lookupInfoDiv", "lookupInfoDiv",
"<br/><b>No result for callsign</b><br/><br/>" "<br/><b>" + $.i18n("gt.lookup.NoResult") + "</b><br/><br/>"
); );
} }
} }
@ -14414,7 +14463,7 @@ function qrzLookupResults(buffer, gridPass, useCache)
{ {
setLookupDiv( setLookupDiv(
"lookupInfoDiv", "lookupInfoDiv",
"<br/><b>No result for callsign</b><br/><br/>" "<br/><b>" + $.i18n("gt.lookup.NoResult") + "</b><br/><br/>"
); );
GT.qrzLookupSessionId = null; GT.qrzLookupSessionId = null;
} }
@ -14438,9 +14487,9 @@ function initialDatabases()
GT.Irequest.onerror = function (event) GT.Irequest.onerror = function (event)
{ {
alert( alert(
"Database error: " + $.i18n("gt.dbInit.error1") +
event.target.errorCode + event.target.errorCode +
" : GridTracker will have issues" $.i18n("gt.dbInit.error2")
); );
}; };

Wyświetl plik

@ -5,7 +5,7 @@ let languages = {
de: "i18n/de.json" de: "i18n/de.json"
}; };
function loadi18n() function loadI18n()
{ {
$.i18n().load(languages).done(function () $.i18n().load(languages).done(function ()
{ {
@ -35,7 +35,7 @@ function loadChildWindowI18n()
}); });
} }
function loadRosteri18n() function loadRosterI18n()
{ {
$.i18n().load(languages).done(function () $.i18n().load(languages).done(function ()
{ {

Wyświetl plik

@ -1679,7 +1679,7 @@ function init()
updateInstances(); updateInstances();
// callback to addControls(); // callback to addControls();
loadRosteri18n(); loadRosterI18n();
setRosterTop(); setRosterTop();
} }