lib/markable/acts_as_markable.rb in markable-0.0.5 vs lib/markable/acts_as_markable.rb in markable-0.0.6

- old
+ new

@@ -4,19 +4,23 @@ module ClassMethods def markable_as(marks, options = {}) Markable.set_models - cattr_accessor :markable_marks, :instance_writer => false + class_eval { + class << self + attr_accessor :__markable_marks + end + } marks = Array.wrap(marks).map!{|i| i.to_sym } markers = options[:by].present? ? Array.wrap(options[:by]) : :all - self.markable_marks ||= {} + self.__markable_marks ||= {} marks.each { |mark| - self.markable_marks[mark] = { + self.__markable_marks[mark] = { :allowed_markers => markers } } class_eval { @@ -42,10 +46,10 @@ end result.group("#{self.table_name}.id") end } - self.markable_marks.each { |mark, o| + self.__markable_marks.each { |mark, o| class_eval %( def self.marked_as_#{mark} options = {} self.marked_as :#{mark}, options end