summaryrefslogtreecommitdiffstats
path: root/logic/auth/AuthSession.cpp
diff options
context:
space:
mode:
authorJan Dalheimer <jan@dalheimer.de>2014-02-01 19:58:13 +0100
committerJan Dalheimer <jan@dalheimer.de>2014-02-01 19:58:13 +0100
commit983a40698c47739fee3786cf54c917004523ea36 (patch)
tree4a0d73577afbf430934cd878ff23674aaa7aea74 /logic/auth/AuthSession.cpp
parent866d7029afa10293a57d71aecbe3629399c95d06 (diff)
parent1936bd181f57a554ce0dd757ffe9419100eb47f4 (diff)
downloadMultiMC-983a40698c47739fee3786cf54c917004523ea36.tar
MultiMC-983a40698c47739fee3786cf54c917004523ea36.tar.gz
MultiMC-983a40698c47739fee3786cf54c917004523ea36.tar.lz
MultiMC-983a40698c47739fee3786cf54c917004523ea36.tar.xz
MultiMC-983a40698c47739fee3786cf54c917004523ea36.zip
Merge remote-tracking branch 'upstream/feature_derpstances' into feature_derpstances
Diffstat (limited to 'logic/auth/AuthSession.cpp')
-rw-r--r--logic/auth/AuthSession.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/logic/auth/AuthSession.cpp b/logic/auth/AuthSession.cpp
new file mode 100644
index 00000000..8758bfbd
--- /dev/null
+++ b/logic/auth/AuthSession.cpp
@@ -0,0 +1,30 @@
+#include "AuthSession.h"
+#include <QJsonObject>
+#include <QJsonArray>
+#include <QJsonDocument>
+#include <QStringList>
+
+QString AuthSession::serializeUserProperties()
+{
+ QJsonObject userAttrs;
+ for (auto key : u.properties.keys())
+ {
+ auto array = QJsonArray::fromStringList(u.properties.values(key));
+ userAttrs.insert(key, array);
+ }
+ QJsonDocument value(userAttrs);
+ return value.toJson(QJsonDocument::Compact);
+
+}
+
+bool AuthSession::MakeOffline(QString offline_playername)
+{
+ if (status != PlayableOffline && status != PlayableOnline)
+ {
+ return false;
+ }
+ session = "-";
+ player_name = offline_playername;
+ status = PlayableOffline;
+ return true;
+}