diff options
Diffstat (limited to 'src/mainwindow.cpp')
| -rw-r--r-- | src/mainwindow.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index fecf8704..cdf363cc 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -5489,6 +5489,7 @@ void MainWindow::nxmUpdatesAvailable(QString gameName, int modID, QVariant userD } std::vector<ModInfo::Ptr> modsList = ModInfo::getByModID(gameNameReal, modID); + bool requiresInfo = false; for (auto mod : modsList) { bool foundUpdate = false; bool oldFile = false; @@ -5544,13 +5545,18 @@ void MainWindow::nxmUpdatesAvailable(QString gameName, int modID, QVariant userD if (foundUpdate) { // Just get the standard data updates for endorsements and descriptions mod->setLastNexusUpdate(QDateTime::currentDateTimeUtc()); - mod->updateNXMInfo(); } else { // Scrape mod data here so we can use the mod version if no file update was located - NexusInterface::instance(&m_PluginContainer)->requestModInfo(gameName, modID, this, QVariant(), QString()); + requiresInfo = true; } + + if (mod->getLastNexusQuery().addDays(1) <= QDateTime::currentDateTime()) + requiresInfo = true; } + if (requiresInfo) + NexusInterface::instance(&m_PluginContainer)->requestModInfo(gameName, modID, this, QVariant(), QString()); + if (--m_ModsToUpdate <= 0) { statusBar()->hide(); } else { |
