diff --git a/package.nw/data/acknowledgements.json b/package.nw/data/acknowledgements.json
new file mode 100644
index 00000000..6db356ba
--- /dev/null
+++ b/package.nw/data/acknowledgements.json
@@ -0,0 +1,34 @@
+{
+ "N0TTL": {
+ "badge": "⭐️",
+ "message": "Creator of GridTracker"
+ },
+ "K1JT": {
+ "badge": "⭐️",
+ "message": "Creator of FT8 and WSJT-X"
+ },
+ "N2VFL": {
+ "badge": "🏆",
+ "message": "GridTracker Developer"
+ },
+ "NR0Q": {
+ "badge": "🏆",
+ "message": "GridTracker Developer"
+ },
+ "KF5QHQ": {
+ "badge": "🏆",
+ "message": "GridTracker Developer"
+ },
+ "WA4YA": {
+ "badge": "🏆",
+ "message": "GridTracker Developer"
+ },
+ "KI2D": {
+ "badge": "🥃",
+ "message": "GridTracker Developer"
+ },
+ "K5TUX": {
+ "badge": "🐧",
+ "message": "GridTracker Partner"
+ }
+}
diff --git a/package.nw/lib/gt.js b/package.nw/lib/gt.js
index 03edc4a9..7bdd10c5 100644
--- a/package.nw/lib/gt.js
+++ b/package.nw/lib/gt.js
@@ -97,6 +97,8 @@ var g_callsignDatabaseUSplus = {
202: true
};
+var g_acknowledgedCalls = require("./data/acknowledgements.json");
+
function loadAllSettings()
{
for (var x in localStorage)
@@ -15614,6 +15616,14 @@ function searchLogForCallsign(call)
})
.sort(myBandCompare);
+ var worker = ""
+
+ if (g_acknowledgedCalls[call])
+ {
+ worker = `
GridTracker would like to acknowledge ${call}: ` +
+ `${g_acknowledgedCalls[call].badge} ${g_acknowledgedCalls[call].message}
`
+ }
+
if (list.length > 0)
{
var work = {};
@@ -15637,7 +15647,7 @@ function searchLogForCallsign(call)
}
else if (!(what in conf)) work[what] = g_pskColors[list[row].band];
}
- var worker =
+ worker +=
"";
if (Object.keys(work).length > 0)
{
@@ -15699,9 +15709,10 @@ function searchLogForCallsign(call)
}
worker += "
";
- setLookupDiv("lookupLocalDiv", worker);
}
+ setLookupDiv("lookupLocalDiv", worker);
+
list = null;
}
diff --git a/package.nw/lib/roster.js b/package.nw/lib/roster.js
index 63ca18ce..d83d2bca 100644
--- a/package.nw/lib/roster.js
+++ b/package.nw/lib/roster.js
@@ -1722,7 +1722,15 @@ function viewRoster()
if (g_rosterSettings.compact == false)
{
+ var acks = window.opener.g_acknowledgedCalls
+
var thisHash = thisCall + callObj.band + callObj.mode;
+ var callStr = thisCall.formatCallsign()
+ if (acks[thisCall])
+ {
+ callStr = `${callStr} ${acks[thisCall].badge}`
+ callObj.awardReason += ` - ${acks[thisCall].badge} ${acks[thisCall].message}`
+ }
worker += "";
worker +=
@@ -1735,7 +1743,7 @@ function viewRoster()
callObj.band +
callObj.mode +
"\")'>" +
- thisCall.formatCallsign() +
+ callStr +
"";
if (showBands)
diff --git a/package.nw/lib/style_roster.css b/package.nw/lib/style_roster.css
index f8b5c5bb..748b8a59 100644
--- a/package.nw/lib/style_roster.css
+++ b/package.nw/lib/style_roster.css
@@ -547,3 +547,9 @@ table.rosterTable thead th:first-child {
box-shadow: inset 0px 11px 6px -8px #888, inset 0px -11px 6px -8px #888;
}
+.acknowledged {
+ float: right;
+ font-size: 70%;
+ padding-left: 3px;
+ padding-rright: 3px;
+}