diff --git a/files/classes/user.py b/files/classes/user.py index 2c927001d..b38d0ea0c 100644 --- a/files/classes/user.py +++ b/files/classes/user.py @@ -414,25 +414,12 @@ class User(Base): @property @lazy def is_cakeday(self): - return_value = False - if time.time() - self.created_utc > 363 * 86400: date = time.strftime("%d %b", time.gmtime(self.created_utc)) now = time.strftime("%d %b", time.gmtime()) - if date == now: - return_value = True - - if time.time() - self.created_utc > 365 * 86400 and not self.has_badge(134): - new_badge = Badge(badge_id=134, user_id=self.id) - g.db.add(new_badge) - g.db.flush() - - if time.time() - self.created_utc > 365 * 86400 * 2 and not self.has_badge(237): - new_badge = Badge(badge_id=237, user_id=self.id) - g.db.add(new_badge) - g.db.flush() - - return return_value + if date == now: + return True + return False @property @lazy diff --git a/files/helpers/awards.py b/files/helpers/awards.py index b121190ce..0ae8d2261 100644 --- a/files/helpers/awards.py +++ b/files/helpers/awards.py @@ -5,6 +5,7 @@ from flask import g from files.classes.user import User from files.helpers.alerts import send_repeatable_notification from files.helpers.config.const import * +from files.helpers.useractions import * def award_timers(v, bot=False): now = time.time() @@ -100,6 +101,12 @@ def award_timers(v, bot=False): badge = v.has_badge(179) if badge: g.db.delete(badge) + if time.time() - v.created_utc > 365 * 86400: + badge_grant(user=v, badge_id=134) + + if time.time() - v.created_utc > 365 * 86400: + badge_grant(user=v, badge_id=237) + g.db.add(v)