@@ -620,17 +620,7 @@ bool DownloadManager::addDownload(QNetworkReply* reply, const QStringList& URLs,
620620
621621void DownloadManager::removePending (QString gameName, int modID, int fileID)
622622{
623- QString gameShortName = gameName;
624- QStringList games (m_ManagedGame->validShortNames ());
625- games += m_ManagedGame->gameShortName ();
626- for (auto game : games) {
627- MOBase::IPluginGame* gamePlugin = m_OrganizerCore->getGame (game);
628- if (gamePlugin != nullptr &&
629- gamePlugin->gameNexusName ().compare (gameName, Qt::CaseInsensitive) == 0 ) {
630- gameShortName = gamePlugin->gameShortName ();
631- break ;
632- }
633- }
623+ QString gameShortName = getValidGameShortName (gameName);
634624 for (auto iter : m_PendingDownloads) {
635625 if (gameShortName.compare (std::get<0 >(iter), Qt::CaseInsensitive) == 0 &&
636626 (std::get<1 >(iter) == modID) && (std::get<2 >(iter) == fileID)) {
@@ -1909,15 +1899,7 @@ void DownloadManager::nxmFileInfoAvailable(QString gameName, int modID, int file
19091899
19101900 info->repository = " Nexus" ;
19111901
1912- QStringList games (m_ManagedGame->validShortNames ());
1913- games += m_ManagedGame->gameShortName ();
1914- for (auto game : games) {
1915- MOBase::IPluginGame* gamePlugin = m_OrganizerCore->getGame (game);
1916- if (gamePlugin != nullptr &&
1917- gamePlugin->gameNexusName ().compare (gameName, Qt::CaseInsensitive) == 0 ) {
1918- info->gameName = gamePlugin->gameShortName ();
1919- }
1920- }
1902+ info->gameName = getValidGameShortName (gameName);
19211903
19221904 info->modID = modID;
19231905 info->fileID = fileID;
@@ -2145,19 +2127,7 @@ void DownloadManager::nxmFileInfoFromMd5Available(QString gameName, QVariant use
21452127 info->m_FileInfo ->uploader = modDetails[" uploaded_by" ].toString ();
21462128 info->m_FileInfo ->uploaderUrl = modDetails[" uploaded_users_profile_url" ].toString ();
21472129
2148- QString gameShortName = gameName;
2149- QStringList games (m_ManagedGame->validShortNames ());
2150- games += m_ManagedGame->gameShortName ();
2151- for (auto game : games) {
2152- MOBase::IPluginGame* gamePlugin = m_OrganizerCore->getGame (game);
2153- if (gamePlugin != nullptr &&
2154- gamePlugin->gameNexusName ().compare (gameName, Qt::CaseInsensitive) == 0 ) {
2155- gameShortName = gamePlugin->gameShortName ();
2156- break ;
2157- }
2158- }
2159-
2160- info->m_FileInfo ->gameName = gameShortName;
2130+ info->m_FileInfo ->gameName = getValidGameShortName (gameName);
21612131
21622132 // If the file description is not present, send another query to get it
21632133 if (!fileDetails[" description" ].isValid ()) {
@@ -2428,3 +2398,18 @@ void DownloadManager::writeData(DownloadInfo* info)
24282398 }
24292399 }
24302400}
2401+
2402+ QString DownloadManager::getValidGameShortName (const QString& gameNexusName) const
2403+ {
2404+ QStringList games (m_ManagedGame->validShortNames ());
2405+ games.prepend (m_ManagedGame->gameShortName ());
2406+ for (auto & game : games) {
2407+ MOBase::IPluginGame* gamePlugin = m_OrganizerCore->getGame (game);
2408+ if (gamePlugin != nullptr &&
2409+ gamePlugin->gameNexusName ().compare (gameNexusName, Qt::CaseInsensitive) == 0 ) {
2410+ return gamePlugin->gameShortName ();
2411+ }
2412+ }
2413+
2414+ return gameNexusName;
2415+ }
0 commit comments