markable 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -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