Sha256: 1550692fa4aa37011d34a509a604b321c92212f76bdb14434755dacd16bbc5cd
Contents?: true
Size: 744 Bytes
Versions: 2
Compression:
Stored size: 744 Bytes
Contents
module Merit extend ActiveSupport::Concern module ClassMethods def has_merit(options = {}) belongs_to :sash if Merit.orm == :mongo_mapper plugin Merit key :sash_id, String key :points, Integer, :default => 0 key :level, Integer, :default => 0 end end end def badges create_sash_if_none sash.badge_ids.collect{|b_id| Badge.find(b_id) } end # Create sash if doesn't have def create_sash_if_none if sash.nil? self.sash = Sash.new self.save(:validate => false) end end end if Object.const_defined?('ActiveRecord') ActiveRecord::Base.send :include, Merit end if Object.const_defined?('MongoMapper') MongoMapper::Document.plugin Merit end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
merit-0.7.1 | lib/merit/model_additions.rb |
merit-0.7.0 | lib/merit/model_additions.rb |