fastcomments_sdk/client/src/models/
pub_sub_comment.rs1use crate::client::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct PubSubComment {
16 #[serde(rename = "date")]
17 pub date: String,
18 #[serde(rename = "_id")]
19 pub _id: String,
20 #[serde(rename = "tenantId")]
21 pub tenant_id: String,
22 #[serde(rename = "urlId")]
23 pub url_id: String,
24 #[serde(rename = "url")]
25 pub url: String,
26 #[serde(rename = "pageTitle", skip_serializing_if = "Option::is_none")]
27 pub page_title: Option<String>,
28 #[serde(rename = "userId", skip_serializing_if = "Option::is_none")]
29 pub user_id: Option<String>,
30 #[serde(rename = "anonUserId", skip_serializing_if = "Option::is_none")]
31 pub anon_user_id: Option<String>,
32 #[serde(rename = "commenterName")]
33 pub commenter_name: String,
34 #[serde(rename = "commenterLink", skip_serializing_if = "Option::is_none")]
35 pub commenter_link: Option<String>,
36 #[serde(rename = "comment")]
37 pub comment: String,
38 #[serde(rename = "commentHTML")]
39 pub comment_html: String,
40 #[serde(rename = "parentId", skip_serializing_if = "Option::is_none")]
41 pub parent_id: Option<String>,
42 #[serde(rename = "votes", skip_serializing_if = "Option::is_none")]
43 pub votes: Option<i32>,
44 #[serde(rename = "votesUp", skip_serializing_if = "Option::is_none")]
45 pub votes_up: Option<i32>,
46 #[serde(rename = "votesDown", skip_serializing_if = "Option::is_none")]
47 pub votes_down: Option<i32>,
48 #[serde(rename = "expireAt", skip_serializing_if = "Option::is_none")]
49 pub expire_at: Option<String>,
50 #[serde(rename = "verified")]
51 pub verified: bool,
52 #[serde(rename = "reviewed", skip_serializing_if = "Option::is_none")]
53 pub reviewed: Option<bool>,
54 #[serde(rename = "avatarSrc", skip_serializing_if = "Option::is_none")]
55 pub avatar_src: Option<String>,
56 #[serde(rename = "isSpam", skip_serializing_if = "Option::is_none")]
57 pub is_spam: Option<bool>,
58 #[serde(rename = "hasImages", skip_serializing_if = "Option::is_none")]
59 pub has_images: Option<bool>,
60 #[serde(rename = "hasLinks", skip_serializing_if = "Option::is_none")]
61 pub has_links: Option<bool>,
62 #[serde(rename = "hasCode", skip_serializing_if = "Option::is_none")]
63 pub has_code: Option<bool>,
64 #[serde(rename = "approved")]
65 pub approved: bool,
66 #[serde(rename = "locale")]
67 pub locale: String,
68 #[serde(rename = "isDeleted", skip_serializing_if = "Option::is_none")]
69 pub is_deleted: Option<bool>,
70 #[serde(rename = "isDeletedUser", skip_serializing_if = "Option::is_none")]
71 pub is_deleted_user: Option<bool>,
72 #[serde(rename = "isBannedUser", skip_serializing_if = "Option::is_none")]
73 pub is_banned_user: Option<bool>,
74 #[serde(rename = "isByAdmin", skip_serializing_if = "Option::is_none")]
75 pub is_by_admin: Option<bool>,
76 #[serde(rename = "isByModerator", skip_serializing_if = "Option::is_none")]
77 pub is_by_moderator: Option<bool>,
78 #[serde(rename = "isPinned", skip_serializing_if = "Option::is_none")]
79 pub is_pinned: Option<bool>,
80 #[serde(rename = "isLocked", skip_serializing_if = "Option::is_none")]
81 pub is_locked: Option<bool>,
82 #[serde(rename = "flagCount", skip_serializing_if = "Option::is_none")]
83 pub flag_count: Option<i32>,
84 #[serde(rename = "rating", skip_serializing_if = "Option::is_none")]
85 pub rating: Option<f64>,
86 #[serde(rename = "displayLabel", skip_serializing_if = "Option::is_none")]
87 pub display_label: Option<String>,
88 #[serde(rename = "badges", skip_serializing_if = "Option::is_none")]
89 pub badges: Option<Vec<models::CommentUserBadgeInfo>>,
90 #[serde(rename = "domain", skip_serializing_if = "Option::is_none")]
91 pub domain: Option<String>,
92 #[serde(rename = "feedbackIds", skip_serializing_if = "Option::is_none")]
93 pub feedback_ids: Option<Vec<String>>,
94 #[serde(rename = "groupIds", skip_serializing_if = "Option::is_none")]
95 pub group_ids: Option<Vec<String>>,
96 #[serde(rename = "viewCount", skip_serializing_if = "Option::is_none")]
97 pub view_count: Option<i64>,
98 #[serde(rename = "isLive", skip_serializing_if = "Option::is_none")]
99 pub is_live: Option<bool>,
100 #[serde(rename = "hidden", skip_serializing_if = "Option::is_none")]
101 pub hidden: Option<bool>,
102}
103
104impl PubSubComment {
105 pub fn new(date: String, _id: String, tenant_id: String, url_id: String, url: String, commenter_name: String, comment: String, comment_html: String, verified: bool, approved: bool, locale: String) -> PubSubComment {
106 PubSubComment {
107 date,
108 _id,
109 tenant_id,
110 url_id,
111 url,
112 page_title: None,
113 user_id: None,
114 anon_user_id: None,
115 commenter_name,
116 commenter_link: None,
117 comment,
118 comment_html,
119 parent_id: None,
120 votes: None,
121 votes_up: None,
122 votes_down: None,
123 expire_at: None,
124 verified,
125 reviewed: None,
126 avatar_src: None,
127 is_spam: None,
128 has_images: None,
129 has_links: None,
130 has_code: None,
131 approved,
132 locale,
133 is_deleted: None,
134 is_deleted_user: None,
135 is_banned_user: None,
136 is_by_admin: None,
137 is_by_moderator: None,
138 is_pinned: None,
139 is_locked: None,
140 flag_count: None,
141 rating: None,
142 display_label: None,
143 badges: None,
144 domain: None,
145 feedback_ids: None,
146 group_ids: None,
147 view_count: None,
148 is_live: None,
149 hidden: None,
150 }
151 }
152}
153