discourse/lib/email_backup_token.rb

30 lines
521 B
Ruby

# frozen_string_literal: true
class EmailBackupToken
def self.key(user_id)
"email-backup-token:#{user_id}"
end
def self.generate
SecureRandom.hex
end
def self.set(user_id)
token = self.generate
Discourse.redis.setex self.key(user_id), 1.day.to_i, token
token
end
def self.get(user_id)
Discourse.redis.get self.key(user_id)
end
def self.del(user_id)
Discourse.redis.del self.key(user_id)
end
def self.compare(user_id, token)
token == self.get(user_id)
end
end