summaryrefslogtreecommitdiff
path: root/src/nexusinterface.cpp
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2019-01-31 23:19:16 -0600
committerSilarn <jrim@rimpo.org>2019-02-18 21:29:27 -0600
commit7f56407b916f6ca204e72f25c01965441e0228b1 (patch)
tree851c0c605678efbdf7dc397b3cc802d613e3a906 /src/nexusinterface.cpp
parentd08b836265c3f2c44041cb4d6da37183245b9a0e (diff)
Use NXM link key and expiration in file list API call when available
Diffstat (limited to 'src/nexusinterface.cpp')
-rw-r--r--src/nexusinterface.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp
index 16f96154..1d6d2015 100644
--- a/src/nexusinterface.cpp
+++ b/src/nexusinterface.cpp
@@ -532,7 +532,12 @@ void NexusInterface::nextRequest()
url = QString("%1/games/%2/mods/%3/files/%4").arg(info.m_URL).arg(info.m_GameName).arg(info.m_ModID).arg(info.m_FileID);
} break;
case NXMRequestInfo::TYPE_DOWNLOADURL: {
- url = QString("%1/games/%2/mods/%3/files/%4/download_link").arg(info.m_URL).arg(info.m_GameName).arg(info.m_ModID).arg(info.m_FileID);
+ ModRepositoryFileInfo *fileInfo = qobject_cast<ModRepositoryFileInfo*>(qvariant_cast<QObject*>(info.m_UserData));
+ if (!fileInfo->nexusKey.isEmpty() && fileInfo->nexusExpires)
+ url = QString("%1/games/%2/mods/%3/files/%4/download_link?key=%5&expires=%6")
+ .arg(info.m_URL).arg(info.m_GameName).arg(info.m_ModID).arg(info.m_FileID).arg(fileInfo->nexusKey).arg(fileInfo->nexusExpires);
+ else
+ url = QString("%1/games/%2/mods/%3/files/%4/download_link").arg(info.m_URL).arg(info.m_GameName).arg(info.m_ModID).arg(info.m_FileID);
} break;
case NXMRequestInfo::TYPE_TOGGLEENDORSEMENT: {
QString endorse = info.m_Endorse ? "endorse" : "abstain";