Sha256: 6b8d4e4a3d6c58c0adc41c167e068457c51e7e33f29ee1e6465798782b8820dd

Contents?: true

Size: 1.36 KB

Versions: 15

Compression:

Stored size: 1.36 KB

Contents

module Devise
  module Orm
    module MongoMapper
      module InstanceMethods
        def save(options={})
          if options == false
            super(:validate => false)
          else
            super
          end
        end
      end

      def self.included_modules_hook(klass)
        klass.send :extend,  self
        klass.send :include, InstanceMethods
        yield

        klass.devise_modules.each do |mod|
          klass.send(mod) if klass.respond_to?(mod)
        end
      end
      
      def find(*args)
        case args.first
        when :first, :all
          send(args.shift, *args)
        else
          super
        end
      end
      
      include Devise::Schema

      # Tell how to apply schema methods. This automatically converts DateTime
      # to Time, since MongoMapper does not recognize the former.
      def apply_schema(name, type, options={})
        return unless Devise.apply_schema
        type = Time if type == DateTime
        key name, type, options
      end
    end
  end
end

if MongoMapper::Version >= "0.8.0"
  MongoMapper::Plugins::Document::ClassMethods.send(:include, Devise::Models)
  MongoMapper::Plugins::EmbeddedDocument::ClassMethods.send(:include, Devise::Models)
else
  MongoMapper::Document::ClassMethods.send(:include, Devise::Models)
  MongoMapper::EmbeddedDocument::ClassMethods.send(:include, Devise::Models)
end

Version data entries

15 entries across 10 versions & 3 rubygems

Version Path
graffititracker_devise-1.0.11 lib/devise/orm/mongo_mapper.rb
devise-1.0.11 lib/devise/orm/mongo_mapper.rb
devise-1.0.10 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.4.1.0.9 test/rails_app/vendor/plugins/devise/lib/devise/orm/mongo_mapper.rb
devise_ennder-1.4.1.0.9 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.3.1.0.9 test/rails_app/vendor/plugins/devise/lib/devise/orm/mongo_mapper.rb
devise_ennder-1.3.1.0.9 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.2.1.0.9 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.2.1.0.9 test/rails_app/vendor/plugins/devise/lib/devise/orm/mongo_mapper.rb
devise_ennder-1.1.1.0.9 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.1.1.0.9 test/rails_app/vendor/plugins/devise/lib/devise/orm/mongo_mapper.rb
devise_ennder-1.0.1.0.9 lib/devise/orm/mongo_mapper.rb
devise_ennder-1.0.1.0.9 test/rails_app/vendor/plugins/devise/lib/devise/orm/mongo_mapper.rb
devise-1.0.9 lib/devise/orm/mongo_mapper.rb
devise-1.0.8 lib/devise/orm/mongo_mapper.rb