summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2019-01-31 17:16:17 -0600
committerSilarn <jrim@rimpo.org>2019-02-18 21:29:27 -0600
commitd08b836265c3f2c44041cb4d6da37183245b9a0e (patch)
tree0293875a9e86d4055aaf96cc0f2935a56c237e32 /src
parentb7d2a608d8c0364d76950bc908c53203e3f467ff (diff)
Fix various issues when not having a stored API key
Diffstat (limited to 'src')
-rw-r--r--src/mainwindow.cpp14
-rw-r--r--src/nexusinterface.cpp24
-rw-r--r--src/nxmaccessmanager.cpp2
-rw-r--r--src/settings.cpp7
4 files changed, 23 insertions, 24 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 9368192f..3a341298 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -3996,10 +3996,8 @@ void MainWindow::checkModsForUpdates()
if (m_OrganizerCore.settings().getNexusApiKey(apiKey)) {
m_OrganizerCore.doAfterLogin([this] () { this->checkModsForUpdates(); });
NexusInterface::instance(&m_PluginContainer)->getAccessManager()->apiCheck(apiKey);
- } else { // otherwise there will be no endorsement info
- MessageDialog::showMessage(tr("Not logged in, endorsement information will be wrong"),
- this, true);
- m_ModsToUpdate = ModInfo::checkAllForUpdate(&m_PluginContainer, this);
+ } else {
+ qWarning("You are not currently authenticated with Nexus. Please do so under Settings -> Nexus.");
}
}
@@ -5457,12 +5455,10 @@ void MainWindow::modUpdateCheck()
} else {
QString apiKey;
if (m_OrganizerCore.settings().getNexusApiKey(apiKey)) {
- m_OrganizerCore.doAfterLogin([this]() { this->checkModsForUpdates(); });
+ m_OrganizerCore.doAfterLogin([this]() { this->modUpdateCheck(); });
NexusInterface::instance(&m_PluginContainer)->getAccessManager()->apiCheck(apiKey);
- } else { // otherwise there will be no endorsement info
- MessageDialog::showMessage(tr("Not logged in, endorsement information will be wrong"),
- this, true);
- m_ModsToUpdate += ModInfo::autoUpdateCheck(&m_PluginContainer, this);
+ } else {
+ qWarning("You are not currently authenticated with Nexus. Please do so under Settings -> Nexus.");
}
}
}
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp
index 3ea7fdac..16f96154 100644
--- a/src/nexusinterface.cpp
+++ b/src/nexusinterface.cpp
@@ -628,23 +628,23 @@ void NexusInterface::requestFinished(std::list<NXMRequestInfo>::iterator iter)
emit nxmEndorsementToggled(iter->m_GameName, iter->m_ModID, iter->m_UserData, result, iter->m_ID);
} break;
}
+
+ m_RemainingDailyRequests = reply->rawHeader("x-rl-daily-remaining").toInt();
+ m_MaxDailyRequests = reply->rawHeader("x-rl-daily-limit").toInt();
+ m_RemainingHourlyRequests = reply->rawHeader("x-rl-hourly-remaining").toInt();
+ m_MaxHourlyRequests = reply->rawHeader("x-rl-hourly-limit").toInt();
+
+ emit requestsChanged(m_RequestQueue.size(), std::tuple<int, int, int, int>(std::make_tuple(
+ m_RemainingDailyRequests,
+ m_MaxDailyRequests,
+ m_RemainingHourlyRequests,
+ m_MaxHourlyRequests
+ )));
} else {
emit nxmRequestFailed(iter->m_GameName, iter->m_ModID, iter->m_FileID, iter->m_UserData, iter->m_ID, reply->error(), tr("invalid response"));
}
}
}
-
- m_RemainingDailyRequests = reply->rawHeader("x-rl-daily-remaining").toInt();
- m_MaxDailyRequests = reply->rawHeader("x-rl-daily-limit").toInt();
- m_RemainingHourlyRequests = reply->rawHeader("x-rl-hourly-remaining").toInt();
- m_MaxHourlyRequests = reply->rawHeader("x-rl-hourly-limit").toInt();
-
- emit requestsChanged(m_RequestQueue.size(), std::tuple<int, int, int, int>(std::make_tuple(
- m_RemainingDailyRequests,
- m_MaxDailyRequests,
- m_RemainingHourlyRequests,
- m_MaxHourlyRequests
- )));
}
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp
index 77ffbebc..d1720c76 100644
--- a/src/nxmaccessmanager.cpp
+++ b/src/nxmaccessmanager.cpp
@@ -270,5 +270,7 @@ void NXMAccessManager::validateFinished()
} else {
emit validateFailed(tr("Validation failed, please reauthenticate in the Settings -> Nexus tab: %1").arg(credentialsData.value("message").toString()));
}
+ } else {
+ emit validateFailed(tr("unknown error"));
}
}
diff --git a/src/settings.cpp b/src/settings.cpp
index 42f2e43f..cd0aec8e 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -178,11 +178,12 @@ void Settings::registerPlugin(IPlugin *plugin)
QString Settings::obfuscate(const QString &info)
{
+ QByteArray byteData = info.toUtf8();
QString result;
DATA_BLOB input;
DATA_BLOB output;
- std::vector<uint8_t> data(info.toUtf8().begin(), info.toUtf8().end());
- DWORD cbInput = info.size() + 1;
+ std::vector<uint8_t> data(byteData.begin(), byteData.end());
+ DWORD cbInput = data.size() + 1;
input.pbData = data.data();
input.cbData = cbInput;
@@ -203,7 +204,7 @@ QString Settings::deObfuscate(const QString &info)
DATA_BLOB input;
DATA_BLOB output;
std::vector<uint8_t> data(realInfo.begin(), realInfo.end());
- DWORD cbInput = realInfo.size() + 1;
+ DWORD cbInput = data.size() + 1;
input.pbData = data.data();
input.cbData = cbInput;