def degolden(self, account, severe=False): from r2.models import Award if severe: account.gold_charter = False Award.take_away("charter_subscriber", account) Award.take_away("reddit_gold", account) account.gold = False account._commit()
def verify_email(user): """ For verifying an email address """ from r2.lib.pages import VerifyEmail user.email_verified = False user._commit() Award.take_away("verified_email", user) token = EmailVerificationToken._new(user) emaillink = 'http://' + g.domain + '/verification/' + token._id g.log.debug("Generated email verification link: " + emaillink) _system_email( user.email, VerifyEmail(user=user, emaillink=emaillink).render(style='email'), Email.Kind.VERIFY_EMAIL)
def verify_email(user): """ For verifying an email address """ from r2.lib.pages import VerifyEmail user.email_verified = False user._commit() Award.take_away("verified_email", user) token = EmailVerificationToken._new(user) emaillink = 'http://' + g.domain + '/verification/' + token._id g.log.debug("Generated email verification link: " + emaillink) _system_email(user.email, VerifyEmail(user=user, emaillink = emaillink).render(style='email'), Email.Kind.VERIFY_EMAIL)
def verify_email(user, dest): """ For verifying an email address """ from r2.lib.pages import VerifyEmail key = passhash(user.name, user.email) user.email_verified = False user._commit() Award.take_away("verified_email", user) emaillink = ('http://' + g.domain + '/verification/' + key + query_string(dict(dest=dest))) g.log.debug("Generated email verification link: " + emaillink) g.cache.set("email_verify_%s" %key, user._id, time=1800) _system_email(user.email, VerifyEmail(user=user, emaillink = emaillink).render(style='email'), Email.Kind.VERIFY_EMAIL)
def verify_email(user, dest=None): """ For verifying an email address """ from r2.lib.pages import VerifyEmail user.email_verified = False user._commit() Award.take_away("verified_email", user) token = EmailVerificationToken._new(user) emaillink = "http://" + g.domain + "/verification/" + token._id if dest: emaillink += "?dest=%s" % dest g.log.debug("Generated email verification link: " + emaillink) _system_email( user.email, VerifyEmail(user=user, emaillink=emaillink).render(style="email"), Email.Kind.VERIFY_EMAIL )
def verify_email(user, dest=None): """ For verifying an email address """ from r2.lib.pages import VerifyEmail user.email_verified = False user._commit() Award.take_away("verified_email", user) token = EmailVerificationToken._new(user) base = g.https_endpoint or g.origin emaillink = base + '/verification/' + token._id if dest: emaillink += '?dest=%s' % dest g.log.debug("Generated email verification link: " + emaillink) _system_email( user.email, VerifyEmail(user=user, emaillink=emaillink).render(style='email'), Email.Kind.VERIFY_EMAIL)
def verify_email(user, dest=None): """ For verifying an email address """ from r2.lib.pages import VerifyEmail user.email_verified = False user._commit() Award.take_away("verified_email", user) token = EmailVerificationToken._new(user) base = g.https_endpoint or g.origin emaillink = base + '/verification/' + token._id if dest: emaillink += '?dest=%s' % dest g.log.debug("Generated email verification link: " + emaillink) _system_email(user.email, VerifyEmail(user=user, emaillink = emaillink).render(style='email'), Email.Kind.VERIFY_EMAIL)
def give_awards(): import re from r2.models import Account, Subreddit, Award from r2.lib import utils from datetime import datetime, timedelta q = Account._query(Account.c._spam == False, Account.c._deleted == False, sort = asc('_date'), #Account.c.link_karma>-1, limit = 1000, data = True) i=0 ctime = datetime.now(g.tz) for account in utils.fetch_things2(q): prev_visit = last_visit(account) if not prev_visit: print "%s hasn't logged in for a long time" % account.name continue if (ctime - prev_visit).days > 90: print "%s hasn't logged in for %d days" % (account.name,(ctime-prev_visit).days) continue tsince = ctime - account._date if tsince.days < 30: Award.give_if_needed("newbie", account) elif tsince.days >= 30: Award.take_away("newbie", account) if tsince.days >= 365 and tsince.days < 365*2: Award.give_if_needed("1year", account) elif tsince.days >= 365*2: Award.take_away("1year", account) Award.give_if_needed("2years", account) if account.email_verified: print "%s has verified email: %s" % (account.name,account.email) Award.give_if_needed("verified_email", account)