From 8036474ddad2f20c27a2fb023395306d6b9e577d Mon Sep 17 00:00:00 2001
From: Dessalines <tyhou13@gmx.com>
Date: Fri, 31 Jan 2020 20:02:20 -0500
Subject: Starting to work on user message scope.

---
 ui/src/components/post.tsx | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

(limited to 'ui/src/components/post.tsx')

diff --git a/ui/src/components/post.tsx b/ui/src/components/post.tsx
index 36621248..99a20b46 100644
--- a/ui/src/components/post.tsx
+++ b/ui/src/components/post.tsx
@@ -47,6 +47,7 @@ interface PostState {
   community: Community;
   moderators: Array<CommunityUser>;
   admins: Array<UserView>;
+  online: number;
   scrolled?: boolean;
   scrolled_comment_id?: number;
   loading: boolean;
@@ -62,6 +63,7 @@ export class Post extends Component<any, PostState> {
     community: null,
     moderators: [],
     admins: [],
+    online: null,
     scrolled: false,
     loading: true,
     crossPosts: [],
@@ -280,6 +282,7 @@ export class Post extends Component<any, PostState> {
           community={this.state.community}
           moderators={this.state.moderators}
           admins={this.state.admins}
+          online={this.state.online}
         />
       </div>
     );
@@ -378,6 +381,7 @@ export class Post extends Component<any, PostState> {
       this.state.community = data.community;
       this.state.moderators = data.moderators;
       this.state.admins = data.admins;
+      this.state.online = data.online;
       this.state.loading = false;
       document.title = `${this.state.post.name} - ${WebSocketService.Instance.site.name}`;
 
@@ -432,10 +436,15 @@ export class Post extends Component<any, PostState> {
       this.setState(this.state);
     } else if (res.op == UserOperation.CreatePostLike) {
       let data = res.data as CreatePostLikeResponse;
-      this.state.post.my_vote = data.post.my_vote;
       this.state.post.score = data.post.score;
       this.state.post.upvotes = data.post.upvotes;
       this.state.post.downvotes = data.post.downvotes;
+      if (data.post.my_vote !== null) {
+        this.state.post.my_vote = data.post.my_vote;
+        this.state.post.upvoteLoading = false;
+        this.state.post.downvoteLoading = false;
+      }
+
       this.setState(this.state);
     } else if (res.op == UserOperation.EditPost) {
       let data = res.data as PostResponse;
-- 
cgit v1.2.3

