X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/0dba53c0232385f0fd080266f9a5ce3665426293..a1a6c577e8f406c0d0fa31326209c98ebd78954d:/app/models/user_token.rb diff --git a/app/models/user_token.rb b/app/models/user_token.rb index dda191187..fbd276a6f 100644 --- a/app/models/user_token.rb +++ b/app/models/user_token.rb @@ -1,12 +1,38 @@ -class UserToken < ActiveRecord::Base +# == Schema Information +# +# Table name: user_tokens +# +# id :bigint(8) not null, primary key +# user_id :bigint(8) not null +# token :string not null +# expiry :datetime not null +# referer :text +# +# Indexes +# +# user_tokens_token_idx (token) UNIQUE +# user_tokens_user_id_idx (user_id) +# +# Foreign Keys +# +# user_tokens_user_id_fkey (user_id => users.id) +# + +class UserToken < ApplicationRecord belongs_to :user + scope :unexpired, -> { where("expiry >= now()") } + after_initialize :set_defaults -private + def expired? + expiry < Time.now.utc + end + + private def set_defaults - self.token = OSM::make_token() if self.token.blank? - self.expiry = 1.week.from_now if self.expiry.blank? + self.token = OSM.make_token if token.blank? + self.expiry = 1.week.from_now if expiry.blank? end end