diff options
author | Hannah von Reth <hannah.vonreth@owncloud.com> | 2020-10-22 14:21:29 +0300 |
---|---|---|
committer | Hannah von Reth <vonreth@kde.org> | 2020-10-28 18:27:25 +0300 |
commit | b8ab29c1da1af735cfe82c92349b412cebddc477 (patch) | |
tree | 64ad5f12233c828536807c6255e634a3796f43bc /src/gui/connectionvalidator.cpp | |
parent | 1e89971cc3159c869f5dcbccfaf98699ac29252e (diff) |
Add idp username, used for oidc authentication
Diffstat (limited to 'src/gui/connectionvalidator.cpp')
-rw-r--r-- | src/gui/connectionvalidator.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gui/connectionvalidator.cpp b/src/gui/connectionvalidator.cpp index 6580f430c..6af5a6b8a 100644 --- a/src/gui/connectionvalidator.cpp +++ b/src/gui/connectionvalidator.cpp @@ -299,14 +299,19 @@ bool ConnectionValidator::setAndCheckServerVersion(const QString &version) void ConnectionValidator::slotUserFetched(const QJsonDocument &json) { - QString user = json.object().value("ocs").toObject().value("data").toObject().value("id").toString(); + const auto data = json.object().value("ocs").toObject().value("data").toObject(); + const QString user = data.value("id").toString(); if (!user.isEmpty()) { _account->setDavUser(user); } - QString displayName = json.object().value("ocs").toObject().value("data").toObject().value("display-name").toString(); + const QString displayName = data.value("display-name").toString(); if (!displayName.isEmpty()) { _account->setDavDisplayName(displayName); } + const QString userName = data.value("username").toString(); + if (!userName.isEmpty()) { + _account->setIdpUserName(userName); + } #ifndef TOKEN_AUTH_ONLY AvatarJob *job = new AvatarJob(_account, _account->davUser(), 128, this); job->setTimeout(20 * 1000); |