module ActsAsUser::UserDelegate::ClassMethods

Public Instance Methods

define_user_accessors() click to toggle source
# File lib/acts_as_user/user_delegate.rb, line 48
      def define_user_accessors
        #We check the user columns to declare them as attributes to delegate
        all_attributes = User.columns.map(&:name)

        attributes_to_delegate = all_attributes - ActsAsUser.ignored_attributes

        #User method delegation
        attributes_to_delegate.each do |attrib|
          class_eval <<-RUBY
          def #{attrib}
            user.#{attrib}
          end

          def #{attrib}=(value)
            self.user.#{attrib} = value
          end

          def #{attrib}?
            self.user.#{attrib}?
          end
            RUBY
        end
      end