def degolden(self, account, severe=False): if severe: account.gold_charter = False Award.take_away("charter_subscriber", account) Award.take_away("reddit_gold", account) account.gold = False account._commit()
def engolden(self, account): now = datetime.now(g.display_tz) account.gold = True description = "Since " + now.strftime("%B %Y") trophy = Award.give_if_needed("reddit_gold", account, description=description, url="/gold/about") if trophy and trophy.description.endswith("Member Emeritus"): trophy.description = description trophy._commit() account._commit() account.friend_rels_cache(_update=True)
def create_award_claim_code(self, unique_award_id, award_codename, description, url): """Create a one-time-use claim URL for a user to claim a trophy. `unique_award_id` - A string that uniquely identifies the kind of Trophy the user would be claiming. See: token.py:AwardClaimToken.uid `award_codename` - The codename of the Award the user will claim `description` - The description the Trophy will receive `url` - The URL the Trophy will receive """ award = Award._by_codename(award_codename) token = AwardClaimToken._new(unique_award_id, award, description, url) return token.confirm_url()
def create_award_claim_code(self, unique_award_id, award_codename, description, url): '''Create a one-time-use claim URL for a user to claim a trophy. `unique_award_id` - A string that uniquely identifies the kind of Trophy the user would be claiming. See: token.py:AwardClaimToken.uid `award_codename` - The codename of the Award the user will claim `description` - The description the Trophy will receive `url` - The URL the Trophy will receive ''' award = Award._by_codename(award_codename) token = AwardClaimToken._new(unique_award_id, award, description, url) return token.confirm_url()
def engolden(self, account, days): account.gold = True now = datetime.now(g.display_tz) existing_expiration = getattr(account, "gold_expiration", None) if existing_expiration is None or existing_expiration < now: existing_expiration = now account.gold_expiration = existing_expiration + timedelta(days) description = "Since " + now.strftime("%B %Y") trophy = Award.give_if_needed("reddit_gold", account, description=description, url="/gold/about") if trophy and trophy.description.endswith("Member Emeritus"): trophy.description = description trophy._commit() account._commit() account.friend_rels_cache(_update=True)
def degolden(self, account): Award.take_away("reddit_gold", account) account.gold = False account._commit()