markable 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -70,6 +70,22 @@ module Markable
70
70
  end
71
71
 
72
72
  module MarkableInstanceMethods
73
+
74
+ def method_missing(method_sym, *args)
75
+ Markable.models.each do |model_name|
76
+ if method_sym.to_s =~ Regexp.new("^#{model_name.downcase.pluralize}_have_marked_as(_[\\w_]+)?$")
77
+ model_name.constantize # ping model
78
+
79
+ if self.methods.include? method_sym # method has appear
80
+ return self.method(method_sym).call(*args) # call this method
81
+ end
82
+ end
83
+ end
84
+ super
85
+ rescue
86
+ super
87
+ end
88
+
73
89
  def mark_as(mark, markers)
74
90
  Array.wrap(markers).each do |marker|
75
91
  Markable.can_mark_or_raise? marker, self, mark
@@ -1,3 +1,3 @@
1
1
  module Markable
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: markable
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.1
5
+ version: 0.1.2
6
6
  platform: ruby
7
7
  authors:
8
8
  - Alex Chrome
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-06-04 00:00:00 Z
13
+ date: 2012-11-06 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails