]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/user.rb
Convert OpenID authentication to generic third party authentication
[rails.git] / app / models / user.rb
index 132f0de2170aff5edc6e09d70349b88c4be7d806..ac293a0bdbeeeb38e5a9e3650d768311c03b5542 100644 (file)
@@ -1,5 +1,5 @@
 class User < ActiveRecord::Base
-  require 'xml/libxml'
+  require "xml/libxml"
 
   has_many :traces, -> { where(:visible => true) }
   has_many :diary_entries, -> { order(:created_at => :desc) }
@@ -13,7 +13,7 @@ class User < ActiveRecord::Base
   has_many :preferences, :class_name => "UserPreference"
   has_many :changesets, -> { order(:created_at => :desc) }
   has_many :changeset_comments, :foreign_key =>  :author_id
-  has_and_belongs_to_many :changeset_subscriptions, :class_name => 'Changeset', :join_table => 'changesets_subscribers', :foreign_key => 'subscriber_id'
+  has_and_belongs_to_many :changeset_subscriptions, :class_name => "Changeset", :join_table => "changesets_subscribers", :foreign_key => "subscriber_id"
   has_many :note_comments, :foreign_key => :author_id
   has_many :notes, :through => :note_comments
 
@@ -39,7 +39,6 @@ class User < ActiveRecord::Base
   validates_confirmation_of :pass_crypt # , :message => ' must match the confirmation password'
   validates_uniqueness_of :display_name, :allow_nil => true, :case_sensitive => false, :if => proc { |u| u.display_name_changed? }
   validates_uniqueness_of :email, :case_sensitive => false, :if => proc { |u| u.email_changed? }
-  validates_uniqueness_of :openid_url, :allow_nil => true
   validates_length_of :pass_crypt, :within => 8..255
   validates_length_of :display_name, :within => 3..255, :allow_nil => true
   validates_email_format_of :email, :if => proc { |u| u.email_changed? }
@@ -100,14 +99,14 @@ class User < ActiveRecord::Base
   end
 
   def to_xml_node
-    el1 = XML::Node.new 'user'
-    el1['display_name'] = display_name.to_s
-    el1['account_created'] = creation_time.xmlschema
+    el1 = XML::Node.new "user"
+    el1["display_name"] = display_name.to_s
+    el1["account_created"] = creation_time.xmlschema
     if home_lat && home_lon
-      home = XML::Node.new 'home'
-      home['lat'] = home_lat.to_s
-      home['lon'] = home_lon.to_s
-      home['zoom'] = home_zoom.to_s
+      home = XML::Node.new "home"
+      home["lat"] = home_lat.to_s
+      home["lon"] = home_lon.to_s
+      home["zoom"] = home_zoom.to_s
       el1 << home
     end
     el1
@@ -167,13 +166,13 @@ class User < ActiveRecord::Base
   ##
   # returns true if the user has the moderator role, false otherwise
   def moderator?
-    has_role? 'moderator'
+    has_role? "moderator"
   end
 
   ##
   # returns true if the user has the administrator role, false otherwise
   def administrator?
-    has_role? 'administrator'
+    has_role? "administrator"
   end
 
   ##
@@ -199,7 +198,8 @@ class User < ActiveRecord::Base
     self.image = nil
     self.email_valid = false
     self.new_email = nil
-    self.openid_url = nil
+    self.auth_provider = nil
+    self.auth_uid = nil
     self.status = "deleted"
     save
   end