def award_author_badges(entity, author, author_stats): awarded = util_badges.update_with_triggers( [BadgeTriggerType.VOTEE], user_data=author, user_discussion_stats=author_stats) possible_badges = util_badges.badges_with_context_type( BadgeContextType.FEEDBACK) for badge in possible_badges: if not badge.is_already_owned_by( user_data=author, feedback=entity): if badge.is_satisfied_by( user_data=author, feedback=entity): badge.award_to(user_data=author, feedback=entity) awarded = True if awarded: author.put()
def award_author_badges(self, entity): user_data_author = UserData.get_from_db_key_email(entity.author.email()) if not user_data_author: return possible_badges = badges_with_context_type(BadgeContextType.FEEDBACK) awarded = False for badge in possible_badges: if not badge.is_already_owned_by(user_data=user_data_author, feedback=entity): if badge.is_satisfied_by(user_data=user_data_author, feedback=entity): badge.award_to(user_data=user_data_author, feedback=entity) awarded = True if awarded: user_data_author.put()
def award_author_badges(entity, author, author_stats): awarded = util_badges.update_with_triggers( [BadgeTriggerType.VOTEE], user_data=author, user_discussion_stats=author_stats) possible_badges = util_badges.badges_with_context_type( BadgeContextType.FEEDBACK) for badge in possible_badges: if not badge.is_already_owned_by(user_data=author, feedback=entity): if badge.is_satisfied_by(user_data=author, feedback=entity): badge.award_to(user_data=author, feedback=entity) awarded = True if awarded: author.put()