gridtracker/package.nw/lib/roster/prepareRosterSettings.js

85 wiersze
2.4 KiB
JavaScript

function prepareRosterSettings()
{
let rosterSettings = {
bands: {},
modes: {},
callMode: CR.rosterSettings.callsign,
onlyHits: false,
isAwardTracker: false,
now: timeNowSec()
}
if (rosterSettings.callMode == "hits")
{
rosterSettings.callMode = "all"
rosterSettings.onlyHits = true;
}
if (referenceNeed.value == LOGBOOK_AWARD_TRACKER)
{
rosterSettings.callMode = "all";
rosterSettings.onlyHits = false;
rosterSettings.isAwardTracker = true;
CR.rosterSettings.huntNeed = "confirmed";
}
// this appears to be determine if we should show the OAMS column
// if the user is not in offline mode and has OAMS enabled, this could
// be it's own function maybe?
rosterSettings.canMsg =
window.opener.GT.mapSettings.offlineMode == false &&
window.opener.GT.appSettings.gtShareEnable == true &&
window.opener.GT.appSettings.gtMsgEnable == true;
// The following 3 sections deal with QSLing, do we break them out
// individually or lump them into a qslUser function that sets
// all three at the same time?
// this section is for LoTW users, can be a function
if (window.opener.GT.callsignLookups.lotwUseEnable == true)
{
usesLoTWDiv.style.display = "";
if (CR.rosterSettings.usesLoTW == true)
{
maxLoTW.style.display = "";
maxLoTWView.style.display = "";
}
else
{
maxLoTW.style.display = "none";
maxLoTWView.style.display = "none";
}
}
else
{
usesLoTWDiv.style.display = "none";
maxLoTW.style.display = "none";
maxLoTWView.style.display = "none";
}
if (CR.rosterSettings.huntNeed == "mixed")
{
rosterSettings.huntIndex = CR.confirmed;
rosterSettings.workedIndex = CR.worked;
rosterSettings.layeredMode = LAYERED_MODE_FOR[String(CR.rosterSettings.reference)];
}
else if (CR.rosterSettings.huntNeed == "worked")
{
rosterSettings.huntIndex = CR.worked;
rosterSettings.workedIndex = false;
rosterSettings.layeredMode = false;
}
else if (CR.rosterSettings.huntNeed == "confirmed")
{
rosterSettings.huntIndex = CR.confirmed;
rosterSettings.workedIndex = CR.worked;
rosterSettings.layeredMode = false;
}
else
{
console.log("Invalid/Unknown huntNeed");
rosterSettings.huntIndex = false;
rosterSettings.workedIndex = false;
rosterSettings.layeredMode = false;
}
return rosterSettings
}