kopia lustrzana https://gitlab.com/gridtracker.org/gridtracker
Squashed commits '${title}'
rodzic
dcd1970d1f
commit
60d40b6121
|
@ -1,4 +1,4 @@
|
||||||
gridtracker (1.24.0907) unstable; urgency=low
|
gridtracker (1.24.8907) unstable; urgency=low
|
||||||
- Main - Map View Filters can now be hidden
|
- Main - Map View Filters can now be hidden
|
||||||
- Main - Conditions button now planetary K-index (5 minute update)
|
- Main - Conditions button now planetary K-index (5 minute update)
|
||||||
- Main - Fixed Prediction button not returning when going online
|
- Main - Fixed Prediction button not returning when going online
|
||||||
|
@ -10,7 +10,7 @@ gridtracker (1.24.0907) unstable; urgency=low
|
||||||
- System - Missing translations for Spanish and German fixed
|
- System - Missing translations for Spanish and German fixed
|
||||||
- System - Map engine OpenLayers updated to 10.1.0
|
- System - Map engine OpenLayers updated to 10.1.0
|
||||||
- System - BIGCTY update from September 5th
|
- System - BIGCTY update from September 5th
|
||||||
-- Tag Loomis <n0ttl@gridtracker.org> Sat, 07 Sep 2024 00:00:00 -000
|
-- Tag Loomis <n0ttl@gridtracker.org> Sun, 08 Sep 2024 00:00:00 -000
|
||||||
|
|
||||||
gridtracker (1.24.0814) unstable; urgency=low
|
gridtracker (1.24.0814) unstable; urgency=low
|
||||||
- Map - Added layer attribution
|
- Map - Added layer attribution
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
Name: {{{ git_name name=gridtracker }}}
|
Name: {{{ git_name name=gridtracker }}}
|
||||||
Summary: GridTracker: An Amateur Radio Companion
|
Summary: GridTracker: An Amateur Radio Companion
|
||||||
Version: 1.24.0907
|
Version: 1.24.0908
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Source0: {{{ git_dir_pack }}}
|
Source0: {{{ git_dir_pack }}}
|
||||||
|
@ -40,7 +40,7 @@ DESTDIR=${RPM_BUILD_ROOT} make clean
|
||||||
%license %{_docdir}/%{name}/
|
%license %{_docdir}/%{name}/
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Sat Sep 07 2024 Tag Loomis <n0ttl@gridtracker.org> - 1.24.0907-1
|
* Sun Sep 08 2024 Tag Loomis <n0ttl@gridtracker.org> - 1.24.0908-1
|
||||||
- Main - Map View Filters can now be hidden
|
- Main - Map View Filters can now be hidden
|
||||||
- Main - Conditions button now planetary K-index (5 minute update)
|
- Main - Conditions button now planetary K-index (5 minute update)
|
||||||
- Main - Fixed Prediction button not returning when going online
|
- Main - Fixed Prediction button not returning when going online
|
||||||
|
|
|
@ -55,6 +55,18 @@
|
||||||
"maxZoom": 18,
|
"maxZoom": 18,
|
||||||
"offline": false
|
"offline": false
|
||||||
},
|
},
|
||||||
|
"Terrain by Esri (No Labels)": {
|
||||||
|
"url": "https://server.arcgisonline.com/ArcGIS/rest/services/World_Terrain_Base/MapServer/tile/{z}/{y}/{x}",
|
||||||
|
"attribution": "Esri",
|
||||||
|
"maxZoom": 13,
|
||||||
|
"offline": false
|
||||||
|
},
|
||||||
|
"Shaded Relief by Esri (No Labels)": {
|
||||||
|
"url": "https://server.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer/tile/{z}/{y}/{x}",
|
||||||
|
"attribution": "Esri",
|
||||||
|
"maxZoom": 13,
|
||||||
|
"offline": false
|
||||||
|
},
|
||||||
"Humanitarian by OpenStreetMap (Intl)": {
|
"Humanitarian by OpenStreetMap (Intl)": {
|
||||||
"url": "http://{a-c}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png",
|
"url": "http://{a-c}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png",
|
||||||
"attributions": "<a href=\"http://openstreetmap.org/\" target=\"_blank\">OpenStreetMap</a>",
|
"attributions": "<a href=\"http://openstreetmap.org/\" target=\"_blank\">OpenStreetMap</a>",
|
||||||
|
@ -74,6 +86,12 @@
|
||||||
"maxZoom": 16,
|
"maxZoom": 16,
|
||||||
"offline": false
|
"offline": false
|
||||||
},
|
},
|
||||||
|
"Oceans by Esri (No Labels)": {
|
||||||
|
"url": "https://server.arcgisonline.com/arcgis/rest/services/Ocean/World_Ocean_Base/MapServer/tile/{z}/{y}/{x}",
|
||||||
|
"attributions": "Esri",
|
||||||
|
"maxZoom": 10,
|
||||||
|
"offline": false
|
||||||
|
},
|
||||||
"Midnight Commander by Carto (No Labels)": {
|
"Midnight Commander by Carto (No Labels)": {
|
||||||
"url": "https://cartocdn_{a-d}.global.ssl.fastly.net/base-midnight/{z}/{x}/{y}.png",
|
"url": "https://cartocdn_{a-d}.global.ssl.fastly.net/base-midnight/{z}/{x}/{y}.png",
|
||||||
"attributions": "Carto",
|
"attributions": "Carto",
|
||||||
|
@ -161,5 +179,12 @@
|
||||||
"minZoom": 3,
|
"minZoom": 3,
|
||||||
"maxZoom": 19,
|
"maxZoom": 19,
|
||||||
"offline": false
|
"offline": false
|
||||||
|
},
|
||||||
|
"City Lights by NASA (No Labels)": {
|
||||||
|
"url": "https://tagloomis.com/maps/CityLights2016/{z}/{x}/{-y}.png",
|
||||||
|
"attributions": "NASA",
|
||||||
|
"minZoom": 0,
|
||||||
|
"maxZoom": 5,
|
||||||
|
"offline": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Plik binarny nie jest wyświetlany.
Plik binarny nie jest wyświetlany.
|
@ -117,8 +117,7 @@ function lotwLoadCallsigns()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var data = fs.readFileSync(GT.lotwFile);
|
GT.lotwCallsigns = require(GT.lotwFile);
|
||||||
GT.lotwCallsigns = JSON.parse(data);
|
|
||||||
if (Object.keys(GT.lotwCallsigns).length < 100)
|
if (Object.keys(GT.lotwCallsigns).length < 100)
|
||||||
{
|
{
|
||||||
lotwDownload();
|
lotwDownload();
|
||||||
|
@ -417,8 +416,7 @@ function oqrsLoadCallsigns()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var data = fs.readFileSync(GT.oqrsFile);
|
GT.oqrsCallsigns = require(GT.oqrsFile);
|
||||||
GT.oqrsCallsigns = JSON.parse(data);
|
|
||||||
}
|
}
|
||||||
if (GT.callsignLookups.oqrsLastUpdate == 0)
|
if (GT.callsignLookups.oqrsLastUpdate == 0)
|
||||||
{
|
{
|
||||||
|
@ -548,8 +546,7 @@ function eqslLoadCallsigns()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var data = fs.readFileSync(GT.eqslFile);
|
GT.eqslCallsigns = require(GT.eqslFile);
|
||||||
GT.eqslCallsigns = JSON.parse(data);
|
|
||||||
}
|
}
|
||||||
if (GT.callsignLookups.eqslLastUpdate == 0)
|
if (GT.callsignLookups.eqslLastUpdate == 0)
|
||||||
{
|
{
|
||||||
|
@ -934,8 +931,7 @@ function processCtyDat(buffer)
|
||||||
var file = "./data/mh-root-prefixed.json";
|
var file = "./data/mh-root-prefixed.json";
|
||||||
if (fs.existsSync(file))
|
if (fs.existsSync(file))
|
||||||
{
|
{
|
||||||
var fileBuf = fs.readFileSync(file, "UTF-8");
|
var dxccInfo = require(file);
|
||||||
var dxccInfo = JSON.parse(fileBuf);
|
|
||||||
for (const key in dxccInfo)
|
for (const key in dxccInfo)
|
||||||
{
|
{
|
||||||
dxccInfo[key].ituzone = null;
|
dxccInfo[key].ituzone = null;
|
||||||
|
|
|
@ -4340,7 +4340,7 @@ function initMap()
|
||||||
|
|
||||||
document.getElementById("mapDiv").innerHTML = "";
|
document.getElementById("mapDiv").innerHTML = "";
|
||||||
|
|
||||||
GT.maps = JSON.parse(fs.readFileSync(GT.mapsFile));
|
GT.maps = require(GT.mapsFile);
|
||||||
if (GT.maps)
|
if (GT.maps)
|
||||||
{
|
{
|
||||||
var saveSettings = false;
|
var saveSettings = false;
|
||||||
|
@ -6515,8 +6515,7 @@ function importSettings()
|
||||||
var filename = GT.appData + GT.dirSeperator + "gt_settings.json";
|
var filename = GT.appData + GT.dirSeperator + "gt_settings.json";
|
||||||
if (fs.existsSync(filename))
|
if (fs.existsSync(filename))
|
||||||
{
|
{
|
||||||
var data = fs.readFileSync(filename);
|
var data = require(filename);
|
||||||
data = JSON.parse(data);
|
|
||||||
if (typeof data.appSettings != "undefined")
|
if (typeof data.appSettings != "undefined")
|
||||||
{
|
{
|
||||||
GT.localStorage = {};
|
GT.localStorage = {};
|
||||||
|
@ -10762,8 +10761,7 @@ function loadMaidenHeadData()
|
||||||
var file = "./data/mh-root-prefixed.json";
|
var file = "./data/mh-root-prefixed.json";
|
||||||
if (fs.existsSync(file))
|
if (fs.existsSync(file))
|
||||||
{
|
{
|
||||||
var fileBuf = fs.readFileSync(file, "UTF-8");
|
GT.dxccInfo = require(file);
|
||||||
GT.dxccInfo = JSON.parse(fileBuf);
|
|
||||||
|
|
||||||
for (var key in GT.dxccInfo)
|
for (var key in GT.dxccInfo)
|
||||||
{
|
{
|
||||||
|
@ -10817,19 +10815,14 @@ function loadMaidenHeadData()
|
||||||
if (GT.dxccInfo[key].dxcc != 291) { delete GT.dxccInfo[key].mh; }
|
if (GT.dxccInfo[key].dxcc != 291) { delete GT.dxccInfo[key].mh; }
|
||||||
}
|
}
|
||||||
|
|
||||||
file = "./data/dxcc.json";
|
let dxccGeo = require("./data/dxcc.json");
|
||||||
|
|
||||||
var files = fs.readFileSync(file);
|
|
||||||
var dxccGeo = JSON.parse(files);
|
|
||||||
for (var key in dxccGeo.features)
|
for (var key in dxccGeo.features)
|
||||||
{
|
{
|
||||||
var dxcc = dxccGeo.features[key].properties.dxcc_entity_code;
|
var dxcc = dxccGeo.features[key].properties.dxcc_entity_code;
|
||||||
GT.dxccInfo[dxcc].geo = dxccGeo.features[key];
|
GT.dxccInfo[dxcc].geo = dxccGeo.features[key];
|
||||||
}
|
}
|
||||||
|
|
||||||
file = "./data/counties.json";
|
let countyData = require("./data/counties.json");
|
||||||
files = fs.readFileSync(file);
|
|
||||||
var countyData = JSON.parse(files);
|
|
||||||
|
|
||||||
for (var id in countyData)
|
for (var id in countyData)
|
||||||
{
|
{
|
||||||
|
@ -10860,12 +10853,9 @@ function loadMaidenHeadData()
|
||||||
GT.zipToCounty[zipS].push(cnty);
|
GT.zipToCounty[zipS].push(cnty);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
files = null;
|
|
||||||
countyData = null;
|
|
||||||
|
|
||||||
GT.shapeData = JSON.parse(fs.readFileSync(GT.shapeFile));
|
GT.shapeData = require(GT.shapeFile);
|
||||||
|
GT.StateData = require("./data/state.json");
|
||||||
GT.StateData = JSON.parse(fs.readFileSync("./data/state.json"));
|
|
||||||
|
|
||||||
for (var key in GT.StateData)
|
for (var key in GT.StateData)
|
||||||
{
|
{
|
||||||
|
@ -10876,12 +10866,8 @@ function loadMaidenHeadData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
file = "./data/phone.json";
|
GT.phonetics = require("./data/phone.json");
|
||||||
fileBuf = fs.readFileSync(file, "UTF-8");
|
GT.enums = require("./data/enums.json");
|
||||||
GT.phonetics = JSON.parse(fileBuf);
|
|
||||||
file = "./data/enums.json";
|
|
||||||
fileBuf = fs.readFileSync(file, "UTF-8");
|
|
||||||
GT.enums = JSON.parse(fileBuf);
|
|
||||||
|
|
||||||
for (var key in GT.dxccInfo)
|
for (var key in GT.dxccInfo)
|
||||||
{
|
{
|
||||||
|
@ -10909,11 +10895,8 @@ function loadMaidenHeadData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fileBuf = fs.readFileSync("./data/cqzone.json");
|
GT.cqZones = require("./data/cqzone.json");
|
||||||
GT.cqZones = JSON.parse(fileBuf);
|
GT.ituZones = require("./data/ituzone.json");
|
||||||
|
|
||||||
fileBuf = fs.readFileSync("./data/ituzone.json");
|
|
||||||
GT.ituZones = JSON.parse(fileBuf);
|
|
||||||
|
|
||||||
for (var key in GT.StateData)
|
for (var key in GT.StateData)
|
||||||
{
|
{
|
||||||
|
@ -11404,8 +11387,10 @@ function loadMapSettings()
|
||||||
shadowValue.value = GT.mapSettings.shadow;
|
shadowValue.value = GT.mapSettings.shadow;
|
||||||
showDarknessTd.innerHTML = parseInt(shadowValue.value * 100) + "%";
|
showDarknessTd.innerHTML = parseInt(shadowValue.value * 100) + "%";
|
||||||
pathWidthTd.innerHTML = pathWidthValue.value = GT.appSettings.pathWidthWeight;
|
pathWidthTd.innerHTML = pathWidthValue.value = GT.appSettings.pathWidthWeight;
|
||||||
qrzPathWidthTd.innerHTML = qrzPathWidthValue.value =
|
qrzPathWidthTd.innerHTML = qrzPathWidthValue.value = GT.appSettings.qrzPathWidthWeight;
|
||||||
GT.appSettings.qrzPathWidthWeight;
|
|
||||||
|
mapTransValue.value = GT.mapSettings.mapTrans;
|
||||||
|
mapTransChange();
|
||||||
|
|
||||||
gridDecay.value = GT.appSettings.gridsquareDecayTime;
|
gridDecay.value = GT.appSettings.gridsquareDecayTime;
|
||||||
changeGridDecay();
|
changeGridDecay();
|
||||||
|
@ -14397,15 +14382,13 @@ function mediaCheck()
|
||||||
msgAlertMedia.appendChild(newOption(filename, noExt));
|
msgAlertMedia.appendChild(newOption(filename, noExt));
|
||||||
});
|
});
|
||||||
|
|
||||||
var modeData = fs.readFileSync("./data/modes.json");
|
GT.modes = require("./data/modes.json");
|
||||||
GT.modes = JSON.parse(modeData);
|
|
||||||
for (var key in GT.modes)
|
for (var key in GT.modes)
|
||||||
{
|
{
|
||||||
gtModeFilter.appendChild(newOption(key));
|
gtModeFilter.appendChild(newOption(key));
|
||||||
}
|
}
|
||||||
|
|
||||||
modeData = fs.readFileSync("./data/modes-phone.json");
|
GT.modes_phone = require("./data/modes-phone.json");
|
||||||
GT.modes_phone = JSON.parse(modeData);
|
|
||||||
|
|
||||||
initQSOdata();
|
initQSOdata();
|
||||||
GT.QSOhash = {};
|
GT.QSOhash = {};
|
||||||
|
@ -14422,7 +14405,7 @@ function mediaCheck()
|
||||||
let fileExists = fs.existsSync(GT.NWappData + "internal_qso.json");
|
let fileExists = fs.existsSync(GT.NWappData + "internal_qso.json");
|
||||||
if (fileExists == true && GT.startVersion > 1240831)
|
if (fileExists == true && GT.startVersion > 1240831)
|
||||||
{
|
{
|
||||||
var data = JSON.parse(fs.readFileSync(GT.NWappData + "internal_qso.json"));
|
var data = require(GT.NWappData + "internal_qso.json");
|
||||||
GT.tracker = data.tracker;
|
GT.tracker = data.tracker;
|
||||||
GT.myQsoGrids = data.myQsoGrids;
|
GT.myQsoGrids = data.myQsoGrids;
|
||||||
GT.myQsoCalls = data.myQsoCalls;
|
GT.myQsoCalls = data.myQsoCalls;
|
||||||
|
@ -14487,9 +14470,7 @@ function loadReceptionReports()
|
||||||
var clear = true;
|
var clear = true;
|
||||||
if (fs.existsSync(GT.NWappData + "spots.json"))
|
if (fs.existsSync(GT.NWappData + "spots.json"))
|
||||||
{
|
{
|
||||||
GT.receptionReports = JSON.parse(
|
GT.receptionReports = require(GT.NWappData + "spots.json");
|
||||||
fs.readFileSync(GT.NWappData + "spots.json")
|
|
||||||
);
|
|
||||||
if (timeNowSec() - GT.receptionReports.lastDownloadTimeSec <= 86400) { clear = false; }
|
if (timeNowSec() - GT.receptionReports.lastDownloadTimeSec <= 86400) { clear = false; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3473,10 +3473,9 @@ function loadAwardJson()
|
||||||
let fs = require("fs");
|
let fs = require("fs");
|
||||||
if (fs.existsSync("./data/awards.json"))
|
if (fs.existsSync("./data/awards.json"))
|
||||||
{
|
{
|
||||||
fileBuf = fs.readFileSync("./data/awards.json");
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
CR.awards = JSON.parse(fileBuf);
|
CR.awards = require("./data/awards.json");
|
||||||
for (const sp in CR.awards)
|
for (const sp in CR.awards)
|
||||||
{
|
{
|
||||||
for (const aw in CR.awards[sp].awards)
|
for (const aw in CR.awards[sp].awards)
|
||||||
|
|
|
@ -33,7 +33,7 @@ if (document.title.substring(0, 12).trim() == "GridTracker")
|
||||||
{
|
{
|
||||||
if (fs.existsSync(filename))
|
if (fs.existsSync(filename))
|
||||||
{
|
{
|
||||||
let data = JSON.parse(fs.readFileSync(filename));
|
let data = require(filename);
|
||||||
if (data)
|
if (data)
|
||||||
{
|
{
|
||||||
GT.localStorage = data;
|
GT.localStorage = data;
|
||||||
|
@ -139,11 +139,8 @@ function saveScreenSettings()
|
||||||
setWindowInfo();
|
setWindowInfo();
|
||||||
|
|
||||||
var setting = { showing: isShowing, zoomLevel: s_zoomLevel, window: g_windowInfo };
|
var setting = { showing: isShowing, zoomLevel: s_zoomLevel, window: g_windowInfo };
|
||||||
|
|
||||||
s_screenSettings = JSON.parse(GT.localStorage.screenSettings);
|
s_screenSettings = JSON.parse(GT.localStorage.screenSettings);
|
||||||
|
|
||||||
s_screenSettings[s_title] = setting;
|
s_screenSettings[s_title] = setting;
|
||||||
|
|
||||||
GT.localStorage.screenSettings = JSON.stringify(s_screenSettings);
|
GT.localStorage.screenSettings = JSON.stringify(s_screenSettings);
|
||||||
}
|
}
|
||||||
// listen to screen events
|
// listen to screen events
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "GridTracker",
|
"name": "GridTracker",
|
||||||
"product_string_do_not_use": "gridtracker",
|
"product_string_do_not_use": "gridtracker",
|
||||||
"version": "1.24.0907",
|
"version": "1.24.0908",
|
||||||
"betaVersion": "",
|
"betaVersion": "",
|
||||||
"description": "GridTracker: An Amateur Radio Companion",
|
"description": "GridTracker: An Amateur Radio Companion",
|
||||||
"author": "GridTracker.org",
|
"author": "GridTracker.org",
|
||||||
|
|
Ładowanie…
Reference in New Issue