X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/0a8c26e596b40da6d428a5c91db0d815d13c89e4..64786faddf32c3dc328e64713d5b1c0945e7afcf:/app/models/user_token.rb?ds=sidebyside diff --git a/app/models/user_token.rb b/app/models/user_token.rb index a795de034..f927563a9 100644 --- a/app/models/user_token.rb +++ b/app/models/user_token.rb @@ -1,8 +1,36 @@ -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 - def after_initialize - self.token = OSM::make_token() if self.token.blank? - self.expiry = 1.week.from_now if self.expiry.blank? + after_initialize :set_defaults + + def expired? + expiry < Time.now.utc + end + + private + + def set_defaults + self.token = OSM.make_token if token.blank? + self.expiry = 1.week.from_now if expiry.blank? end end