File indexing completed on 2024-05-12 05:04:11
0001 // SPDX-FileCopyrightText: 2023 Rishi Kumar <rsi.dev17@gmail.com> 0002 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 0004 #include "federationinfo.h" 0005 0006 #include <QJsonObject> 0007 0008 using namespace Qt::Literals::StringLiterals; 0009 0010 QString FederationInfo::id() const 0011 { 0012 return m_id; 0013 } 0014 0015 QString FederationInfo::domain() const 0016 { 0017 return m_domain; 0018 } 0019 0020 QDateTime FederationInfo::createdAt() const 0021 { 0022 return m_createdAt; 0023 } 0024 0025 QString FederationInfo::severity() const 0026 { 0027 return m_severity; 0028 } 0029 0030 void FederationInfo::setSeverity(const QString &severity) 0031 { 0032 m_severity = severity; 0033 } 0034 0035 bool FederationInfo::rejectMedia() const 0036 { 0037 return m_rejectMedia; 0038 } 0039 0040 void FederationInfo::setRejectMedia(const bool &rejectMedia) 0041 { 0042 m_rejectMedia = rejectMedia; 0043 } 0044 0045 bool FederationInfo::rejectReports() const 0046 { 0047 return m_rejectReports; 0048 } 0049 0050 void FederationInfo::setRejectReports(const bool &rejectReports) 0051 { 0052 m_rejectReports = rejectReports; 0053 } 0054 0055 QString FederationInfo::privateComment() const 0056 { 0057 return m_privateComment; 0058 } 0059 0060 void FederationInfo::setPrivateComment(const QString &privateComment) 0061 { 0062 m_privateComment = privateComment; 0063 } 0064 0065 QString FederationInfo::publicComment() const 0066 { 0067 return m_publicComment; 0068 } 0069 0070 void FederationInfo::setPublicComment(const QString &publicComment) 0071 { 0072 m_publicComment = publicComment; 0073 } 0074 0075 bool FederationInfo::obfuscate() const 0076 { 0077 return m_obfuscate; 0078 } 0079 0080 void FederationInfo::setObfuscate(const bool &obfuscate) 0081 { 0082 m_obfuscate = obfuscate; 0083 } 0084 0085 FederationInfo FederationInfo::fromSourceData(const QJsonObject &doc) 0086 { 0087 FederationInfo info; 0088 info.m_id = doc["id"_L1].toString(); 0089 info.m_domain = doc["domain"_L1].toString(); 0090 info.m_createdAt = QDateTime::fromString(doc["created_at"_L1].toString(), Qt::ISODate).toLocalTime(); 0091 info.m_severity = doc["severity"_L1].toString(); 0092 info.m_rejectMedia = doc["reject_media"_L1].toBool(); 0093 info.m_rejectReports = doc["reject_reports"_L1].toBool(); 0094 info.m_privateComment = doc["private_comment"_L1].toString(); 0095 info.m_publicComment = doc["public_comment"_L1].toString(); 0096 info.m_obfuscate = doc["obfuscate"_L1].toBool(); 0097 return info; 0098 }