From 3688d7548c4dc14c51c63a2031cece3fa449ba3c Mon Sep 17 00:00:00 2001 From: Manuel Cortez Date: Tue, 6 Jul 2021 13:59:34 -0500 Subject: [PATCH] Check alias before returning any user object --- src/sessions/twitter/session.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/sessions/twitter/session.py b/src/sessions/twitter/session.py index 5b0f46e8..ea0561e2 100644 --- a/src/sessions/twitter/session.py +++ b/src/sessions/twitter/session.py @@ -430,9 +430,25 @@ class Session(base.baseSession): users = self.db["users"] users[user.id_str] = user self.db["users"] = users + user.name = self.get_user_alias(user) return user else: - return self.db["users"][str(id)] + user = self.db["users"][str(id)] + user.name = self.get_user_alias(user) + return user + + def get_user_alias(self, user): + """ Retrieves an alias for the passed user model, if exists. + @ user Tweepy.models.user: An user object. + """ + aliases = self.settings.get("user-aliases") + if aliases == None: + log.error("Aliases are not defined for this config spec.") + return user.name + user_alias = aliases.get(user.id_str) + if user_alias != None: + return user_alias + return user.name def get_user_by_screen_name(self, screen_name): """ Returns an user identifier associated with a screen_name.