File indexing completed on 2024-04-28 16:44:07
0001 /* 0002 SPDX-FileCopyrightText: 2019 Harald Sitter <sitter@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #include "bugzilla.h" 0008 0009 namespace Bugzilla 0010 { 0011 QString version(KJob *kjob) 0012 { 0013 const APIJob *job = qobject_cast<APIJob *>(kjob); 0014 const QString version = job->object().value(QLatin1String("version")).toString(); 0015 return version; 0016 } 0017 0018 APIJob *version(const Connection &connection) 0019 { 0020 return connection.get(QStringLiteral("/version")); 0021 } 0022 0023 LoginDetails login(KJob *kjob) 0024 { 0025 const APIJob *job = qobject_cast<APIJob *>(kjob); 0026 const auto obj = job->object(); 0027 const QString token = obj.value(QLatin1String("token")).toString(); 0028 const int id = obj.value(QLatin1String("id")).toInt(-1); 0029 return LoginDetails{id, token}; 0030 } 0031 0032 APIJob *login(const QString &username, const QString &password, const Connection &connection) 0033 { 0034 Query query; 0035 query.addQueryItem(QStringLiteral("login"), username); 0036 query.addQueryItem(QStringLiteral("password"), password); 0037 query.addQueryItem(QStringLiteral("restrict_login"), QStringLiteral("true")); 0038 return connection.get(QStringLiteral("/login"), query); 0039 } 0040 0041 } // namespace Bugzilla