From 06701856f8eaed0f6bf802308c07952f0f0dd92e Mon Sep 17 00:00:00 2001 From: Tannin Date: Mon, 18 Aug 2014 22:57:00 +0200 Subject: - login package now also uses a "proper" user-agent --- src/nxmaccessmanager.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/nxmaccessmanager.cpp') diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp index a238d1c8..18b47707 100644 --- a/src/nxmaccessmanager.cpp +++ b/src/nxmaccessmanager.cpp @@ -41,10 +41,11 @@ using namespace MOBase; using namespace MOShared; -NXMAccessManager::NXMAccessManager(QObject *parent) +NXMAccessManager::NXMAccessManager(QObject *parent, const QString &moVersion) : QNetworkAccessManager(parent) , m_LoginReply(NULL) , m_ProgressDialog() + , m_MOVersion(moVersion) , m_LoginAttempted(false) { setCookieJar(new PersistentCookieJar( @@ -59,6 +60,10 @@ NXMAccessManager::~NXMAccessManager() } } +void NXMAccessManager::setNMMVersion(const QString &nmmVersion) +{ + m_NMMVersion = nmmVersion; +} QNetworkReply *NXMAccessManager::createRequest( QNetworkAccessManager::Operation operation, const QNetworkRequest &request, @@ -122,7 +127,7 @@ void NXMAccessManager::login(const QString &username, const QString &password) void NXMAccessManager::pageLogin() { - QString requestString = (ToQString(GameInfo::instance().getNexusPage()) + "/sessions/?Login&uri=%1") + QString requestString = (ToQString(GameInfo::instance().getNexusPage()) + "/Sessions/?Login&uri=%1") .arg(QString(QUrl::toPercentEncoding(ToQString(GameInfo::instance().getNexusPage())))); QNetworkRequest request(requestString); @@ -141,6 +146,9 @@ void NXMAccessManager::pageLogin() postDataQuery = postData.encodedQuery(); #endif + QString userAgent = QString("Mod Organizer v%1 (compatible to Nexus Client v%2)").arg(m_MOVersion).arg(m_NMMVersion); + request.setRawHeader("User-Agent", userAgent.toUtf8()); + m_ProgressDialog.setLabelText(tr("Logging into Nexus")); QList buttons = m_ProgressDialog.findChildren(); buttons.at(0)->setEnabled(false); -- cgit v1.3.1