def add_liked_post(username, post_id, **kwargs): """ post_id : id of the post being liked """ liked_post_updates = LikedPosts_update.objects(username=username).first() # print(type(liked_post_updates)) if liked_post_updates is None: liked_post_updates_twopset = TwoPSet() liked_post_updates = LikedPosts_update() liked_post_updates.username = username liked_post_updates.update_value = json_util.dumps( liked_post_updates_twopset.toDict()) # Loading data in TwoPSet liked_post_updates_twopset = TwoPSet().loadFromDict( json_util.loads(liked_post_updates.update_value)) # print('liked_post_json : ',liked_post_json) # print('type(liked_post) : ', type(liked_post)) liked_post_updates_twopset.add(post_id) liked_post_updates_twopset_dict = liked_post_updates_twopset.toDict() liked_post_updates.update_value = json_util.dumps( liked_post_updates_twopset_dict) liked_post_updates.save()
def add_post(username, post, **kwargs): post_updates = Posts_update.objects(username=username).first() if post_updates is None: post_updates_twopset = TwoPSet() post_updates = Posts_update() post_updates.username = username post_updates.update_value = json_util.dumps( post_updates_twopset.toDict()) # print(type(post_updates.update_value),post_updates.update_value) # post_updates_twopset = TwoPSet().loadFromDict(post_updates.update_value) post_updates.save() # post_updates_twopset_dict = json_util.loads(post_updates.update_value) # print(post_updates_twopset_dict) # post_updates_twopset = TwoPSet() # Loading data in TwoPSet post_updates_twopset = TwoPSet().loadFromDict( json_util.loads(post_updates.update_value)) # print(type(post_updates_twopset),post_updates_twopset) # post_updates_twopset_dict post_updates_twopset.add(post.to_json()) post_updates_twopset_dict = post_updates_twopset.toDict() post_updates.update_value = json_util.dumps(post_updates_twopset_dict) post_updates.save()
def get_post_updates_msg(username, post, update_type='add'): """ update_type : add/remove """ posts_update = Posts_update() posts_update.username = username posts_update_twoPset = TwoPSet() if update_type == 'add': posts_update_twoPset.add(post.to_json()) else: posts_update_twoPset.remove(post.to_json()) posts_update.update_value = json_util.dumps(posts_update_twoPset.toDict()) msg = { "type": 'posts_update', "data": { 'username': username, 'posts': posts_update.update_value } } return json_util.dumps(msg)
def get_followers_update_msg(username, follower, update_type='follow'): """ username : this user who is being followed follower: username of the person who is clicking the follow button to follow the user with username in first argument update_type: follow/unfollow """ followers_update = Followers_update() followers_update.username = follower username_twoPSet = TwoPSet() if update_type == 'follow': username_twoPSet.add(username) else: username_twoPSet.remove(username) followers_update.update_value = json_util.dumps(username_twoPSet.toDict()) msg = { 'type': 'Followers_update', 'data': { 'username': followers_update.username, 'update_value': followers_update.update_value } } return json.dumps(msg)
def get_likedposts_updates_msg(post_id, username, update_type='liked'): """ update_type: liked/disliked """ liked_posts_update = LikedPosts_update() liked_posts_update.username = username liked_posts_twoPSet = TwoPSet() if update_type == 'liked': liked_posts_twoPSet.add(post_id) else: liked_posts_twoPSet.remove(post_id) liked_posts_update.update_value = json_util.dumps( liked_posts_twoPSet.toDict()) msg = { 'type': 'Likedposts_update', 'data': { 'username': liked_posts_update.username, 'update_value': liked_posts_update.update_value } } return json.dumps(msg)
def remove_post(username, post, **kwargs): post_updates = Posts_update.objects(username=username).first() if post_updates is None: post_updates_twopset = TwoPSet() post_updates = Posts_update() post_updates.username = username post_updates.update_value = json_util.dumps( post_updates_twopset.toDict()) # post_updates.save() # Loading data in TwoPSet post_updates_twopset = TwoPSet().loadFromDict( json_util.loads(post_updates.update_value)) post_updates_twopset.remove(post) post_updates.update_value = json_util.dumps(post_updates_twopset.toDict()) post_updates.save()
def update_post_content(username, post_content, **kwargs): # Change to LWW # # Change to LWW # post_content_updates = Post_content_update.objects().first() if post_content_updates is None: post_content_updates_twopset = TwoPSet() post_content_updates = Post_content_update() # post_content_updates.username = username post_content_updates.update_value = json_util.dumps( post_content_updates_twopset.toDict()) # post_content_updates.save() # Loading data in TwoPSet post_content_updates_twopset = TwoPSet().loadFromDict( json_util.loads(post_content_updates.update_value)) post_content_updates_twopset.add(post_content) post_content_updates.update_value = json_util.dumps( post_content_updates_twopset.toDict()) post_content_updates.save()
def merge_followers_update(username, update_value): followers_update = Followers_update.objects(username=username).first() if(followers_update==None): followers_update = Followers_update() followers_update.username = username followers_update.update_value = update_value followers_update.save() followers_update_twoPSet = TwoPSet().loadFromDict(json_util.loads(followers_update.update_value)) incoming_update_twoPSet = TwoPSet().loadFromDict(json_util.loads(update_value)) followers_update_twoPSet.merge(incoming_update_twoPSet) followers_update.update_value = json_util.dumps(followers_update_twoPSet.toDict()) followers_update.save()
def update_user_followers(username, follower_name, **kwargs): """ username : this user who is being followed follower_name : username of the person who is clicking the follow button to follow the user with username in first argument """ user_followers_updates = Followers_update.objects( username=username).first() if user_followers_updates is None: user_followers_updates_twopset = TwoPSet() user_followers_updates = Followers_update() user_followers_updates.username = username user_followers_updates.update_value = json_util.dumps( user_followers_updates_twopset.toDict()) # user_followers_updates.save() # Loading data in TwoPSet user_followers_updates_twopset = TwoPSet().loadFromDict( json_util.loads(user_followers_updates.update_value)) user_followers_updates_twopset.add(follower_name) user_followers_updates.update_value = json_util.dumps( user_followers_updates_twopset.toDict()) user_followers_updates.save()
def remove_user_follower(username, follower_name, **kwargs): """ username : this user is clicking the unfollow button to follow the user with username in second argument follower_name : username of the person to be unfollowed """ user_followers_updates = Followers_update.objects( username=username).first() if user_followers_updates is None: user_followers_updates_twopset = TwoPSet() user_followers_updates = Followers_update() user_followers_updates.username = username user_followers_updates.update_value = json_util.dumps( user_followers_updates_twopset.__dict__) # user_followers_updates.save() # Loading data in TwoPSet user_followers_updates_twopset = TwoPSet().loadFromDict( json_util.loads(user_followers_updates.update_value)) user_followers_updates_twopset.remove(follower_name) user_followers_updates.update_value = json_util.dumps( user_followers_updates_twopset.toDict()) user_followers_updates.save()