]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/oauth_token.rb
Clone objects before saving in case of a retry
[rails.git] / app / models / oauth_token.rb
index 0fe0bea301eebfdc5c4da325c28ec9f214ecc463..9a3e7de9eca142c21574f011ef33ee393f573539 100644 (file)
@@ -4,31 +4,32 @@ class OauthToken < ActiveRecord::Base
 
   scope :authorized, -> { where("authorized_at IS NOT NULL and invalidated_at IS NULL") }
 
 
   scope :authorized, -> { where("authorized_at IS NOT NULL and invalidated_at IS NULL") }
 
-  validates_uniqueness_of :token
-  validates_presence_of :client_application, :token
+  validates :token, :presence => true, :uniqueness => true
+  validates :user, :associated => true
+  validates :client_application, :presence => true
 
   before_validation :generate_keys, :on => :create
 
   before_validation :generate_keys, :on => :create
-  
+
   def invalidated?
     invalidated_at != nil
   end
   def invalidated?
     invalidated_at != nil
   end
-  
+
   def invalidate!
     update_attributes(:invalidated_at => Time.now)
   end
   def invalidate!
     update_attributes(:invalidated_at => Time.now)
   end
-  
+
   def authorized?
   def authorized?
-    authorized_at != nil && !invalidated?
+    !authorized_at.nil? && !invalidated?
   end
   end
-  
+
   def to_query
     "oauth_token=#{token}&oauth_token_secret=#{secret}"
   end
   def to_query
     "oauth_token=#{token}&oauth_token_secret=#{secret}"
   end
-    
-protected
-  
+
+  protected
+
   def generate_keys
   def generate_keys
-    self.token = OAuth::Helper.generate_key(40)[0,40]
-    self.secret = OAuth::Helper.generate_key(40)[0,40]
+    self.token = OAuth::Helper.generate_key(40)[0, 40]
+    self.secret = OAuth::Helper.generate_key(40)[0, 40]
   end
 end
   end
 end