summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorDessalines <happydooby@gmail.com>2019-04-17 08:50:44 -0700
committerDessalines <happydooby@gmail.com>2019-04-17 08:50:44 -0700
commitbfe87a7ec6d83240d270b1bb7f717b1dfa48d83b (patch)
tree2ce29a240b968e80d7c2ead4defc739675a9821a /server
parent65650c8ba765104f31c57059c056208c55b0eb9e (diff)
Community modlog doesn't show non-community actions.
Fixes #65
Diffstat (limited to 'server')
-rw-r--r--server/src/actions/post_view.rs3
-rw-r--r--server/src/websocket_server/server.rs14
2 files changed, 14 insertions, 3 deletions
diff --git a/server/src/actions/post_view.rs b/server/src/actions/post_view.rs
index 0ebcf40d..f95c0177 100644
--- a/server/src/actions/post_view.rs
+++ b/server/src/actions/post_view.rs
@@ -116,6 +116,9 @@ impl PostView {
.order_by(score.desc())
};
+
+ // TODO make sure community removed isn't fetched either
+
query = query.filter(removed.eq(false));
query.load::<Self>(conn)
diff --git a/server/src/websocket_server/server.rs b/server/src/websocket_server/server.rs
index ef05f801..6b91a76b 100644
--- a/server/src/websocket_server/server.rs
+++ b/server/src/websocket_server/server.rs
@@ -1792,11 +1792,19 @@ impl Perform for GetModlog {
let removed_posts = ModRemovePostView::list(&conn, self.community_id, self.mod_user_id, self.limit, self.page).unwrap();
let locked_posts = ModLockPostView::list(&conn, self.community_id, self.mod_user_id, self.limit, self.page).unwrap();
let removed_comments = ModRemoveCommentView::list(&conn, self.community_id, self.mod_user_id, self.limit, self.page).unwrap();
- let removed_communities = ModRemoveCommunityView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
let banned_from_community = ModBanFromCommunityView::list(&conn, self.community_id, self.mod_user_id, self.limit, self.page).unwrap();
- let banned = ModBanView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
let added_to_community = ModAddCommunityView::list(&conn, self.community_id, self.mod_user_id, self.limit, self.page).unwrap();
- let added = ModAddView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
+
+ // These arrays are only for the full modlog, when a community isn't given
+ let mut removed_communities = Vec::new();
+ let mut banned = Vec::new();
+ let mut added = Vec::new();
+
+ if self.community_id.is_none() {
+ removed_communities = ModRemoveCommunityView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
+ banned = ModBanView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
+ added = ModAddView::list(&conn, self.mod_user_id, self.limit, self.page).unwrap();
+ }
// Return the jwt
serde_json::to_string(