summaryrefslogtreecommitdiff
path: root/discord/guild.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'discord/guild.cpp')
-rw-r--r--discord/guild.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/discord/guild.cpp b/discord/guild.cpp
index 5fb524e..d387729 100644
--- a/discord/guild.cpp
+++ b/discord/guild.cpp
@@ -197,3 +197,20 @@ std::vector<RoleData> GuildData::FetchRoles() const {
});
return ret;
}
+
+void from_json(const nlohmann::json &j, GuildApplicationData &m) {
+ JS_D("user_id", m.UserID);
+ JS_D("guild_id", m.GuildID);
+ auto tmp = j.at("application_status").get<std::string_view>();
+ if (tmp == "STARTED")
+ m.ApplicationStatus = GuildApplicationStatus::STARTED;
+ else if (tmp == "PENDING")
+ m.ApplicationStatus = GuildApplicationStatus::PENDING;
+ else if (tmp == "REJECTED")
+ m.ApplicationStatus = GuildApplicationStatus::REJECTED;
+ else if (tmp == "APPROVED")
+ m.ApplicationStatus = GuildApplicationStatus::APPROVED;
+ JS_N("rejection_reason", m.RejectionReason);
+ JS_N("last_seen", m.LastSeen);
+ JS_N("created_at", m.CreatedAt);
+}