aboutsummaryrefslogtreecommitdiffstats
path: root/src/activitypub/apactor.cpp
diff options
context:
space:
mode:
authorConfuSomu2024-01-20 21:57:39 -0500
committerConfuSomu2024-01-20 21:57:39 -0500
commit5aac009e969cc3bd15c484ba3437348cb7a4d186 (patch)
tree96cff55a273b9de31d639b00f7139110946ce1b6 /src/activitypub/apactor.cpp
parent328c9b166e9d623cd1b80c7ae064baf6172da58f (diff)
downloadActorViewer-5aac009e969cc3bd15c484ba3437348cb7a4d186.tar
ActorViewer-5aac009e969cc3bd15c484ba3437348cb7a4d186.tar.gz
ActorViewer-5aac009e969cc3bd15c484ba3437348cb7a4d186.zip
Implemement Actor information tab
This class still has improvements to be made, but it works and I am satisfied with it!
Diffstat (limited to 'src/activitypub/apactor.cpp')
-rw-r--r--src/activitypub/apactor.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/activitypub/apactor.cpp b/src/activitypub/apactor.cpp
index 6731dd3..78ed9a3 100644
--- a/src/activitypub/apactor.cpp
+++ b/src/activitypub/apactor.cpp
@@ -1,11 +1,34 @@
#include "apactor.h"
+#include <QDebug>
APActor::APActor() {}
-APActor::APActor(const QString url) {
+APActor::APActor(const QString& url) {
object_url = url;
}
+APActor::APActor(APActorFields& fields) {
+ object_url = fields.url;
+ username = fields.username;
+ name = fields.display_name;
+ summary = fields.summary;
+ manuallyApprovesFollowers = fields.manuallyApprovesFollowers;
+ discoverable = fields.discoverable;
+ joined = QDateTime::fromString(fields.joined_date, Qt::ISODate);
+ avatar = fields.avatar;
+ header = fields.header;
+
+ if (fields.keys.length() == fields.values.length())
+ for (int i = 0; i < fields.keys.length(); ++i)
+ table.push_back({fields.keys[i], fields.values[i]});
+ else qDebug() << "key and value vectors don't have the same lenght!";
+}
+
+APActor::~APActor() {
+ if (avatar) delete avatar;
+ if (header) delete header;
+}
+
const QString APActor::get_url() {
return object_url;
}