module Authpds::ActsAsAuthentic::CoreAttributes
Public Class Methods
included(klass)
click to toggle source
# File lib/authpds/acts_as_authentic/core_attributes.rb, line 4 def self.included(klass) klass.class_eval { serialize :user_attributes } end
Public Instance Methods
user_attributes=(new_attributes)
click to toggle source
“Smart” updating of user_attributes. Maintains user_attributes that are not explicity overwritten.
# File lib/authpds/acts_as_authentic/core_attributes.rb, line 16 def user_attributes=(new_attributes) if new_attributes.kind_of?(Hash) # Merge new/updated attributes with new attributes taking precedence merged_attributes = (user_attributes || {}).merge(new_attributes) write_attribute(:user_attributes, merged_attributes) else write_attribute(:user_attributes, new_attributes) end end
username=(value)
click to toggle source
Setting the username field also resets the persistence_token if the value changes.
# File lib/authpds/acts_as_authentic/core_attributes.rb, line 9 def username=(value) write_attribute(:username, value) reset_persistence_token if username_changed? end