summaryrefslogtreecommitdiff
path: root/src/nxmaccessmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/nxmaccessmanager.cpp')
-rw-r--r--src/nxmaccessmanager.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp
index 3df34de1..b65ff082 100644
--- a/src/nxmaccessmanager.cpp
+++ b/src/nxmaccessmanager.cpp
@@ -42,7 +42,10 @@ using namespace MOShared;
NXMAccessManager::NXMAccessManager(QObject *parent)
- : QNetworkAccessManager(parent), m_LoginReply(NULL), m_ProgressDialog()
+ : QNetworkAccessManager(parent)
+ , m_LoginReply(NULL)
+ , m_ProgressDialog()
+ , m_LoginAttempted(false)
{
setCookieJar(new PersistentCookieJar(
QDir::fromNativeSeparators(MOBase::ToQString(MOShared::GameInfo::instance().getCacheDir())) + "/nexus_cookies.dat", this));
@@ -92,6 +95,11 @@ bool NXMAccessManager::loggedIn() const
return hasLoginCookies();
}
+bool NXMAccessManager::loginWaiting() const
+{
+ return m_LoginReply != NULL;
+}
+
void NXMAccessManager::login(const QString &username, const QString &password)
{
@@ -104,6 +112,8 @@ void NXMAccessManager::login(const QString &username, const QString &password)
return;
}
+ m_LoginAttempted = true;
+
m_Username = username;
m_Password = password;
pageLogin();
@@ -149,6 +159,7 @@ void NXMAccessManager::loginTimeout()
emit loginFailed(tr("timeout"));
m_LoginReply->deleteLater();
m_LoginReply = NULL;
+ m_LoginAttempted = false; // this usually means we might have usccess later
m_LoginTimeout.stop();
m_Username.clear();
m_Password.clear();