lib/spontaneous/permissions/access_key.rb in spontaneous-0.2.0.alpha2 vs lib/spontaneous/permissions/access_key.rb in spontaneous-0.2.0.alpha3
- old
+ new
@@ -3,20 +3,20 @@
module Spontaneous::Permissions
class AccessKey < Sequel::Model(:spontaneous_access_keys)
plugin :timestamps
many_to_one :user, :class => :'Spontaneous::Permissions::User'
- def self.authenticate(key_id)
+ def self.authenticate(key_id, ip_address = nil)
if key = self.for_id(key_id)
- key.access!
+ key.access!(ip_address)
return key
end
nil
end
def self.valid?(key_id, user)
- return true if (key = self.for_id(key_id)) and key.user == user
+ return true if (key = self.for_id(key_id)) && (key.user == user) && (key.user.enabled?)
false
end
def self.for_id(key_id)
self[:key_id => key_id]
@@ -26,10 +26,10 @@
self.key_id = Spontaneous::Permissions.random_string(44)
self.last_access_at = Time.now
super
end
- def access!
- self.update(:last_access_at => Time.now)
+ def access!(ip_address = nil)
+ self.update(:last_access_at => Time.now, :last_access_ip => ip_address)
end
end
end