newsletterable 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/newsletterable/subscriber.rb +4 -3
- data/lib/newsletterable/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b571beb798558330426251ae9bbb09da2e71f14
|
4
|
+
data.tar.gz: 9572cf34e78a6d5e8530387b639bc09c3e7b49d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c50055cf3e967a49e04ef04ecc47e1082fc7729adc90b05602f593fd6308b7c2edf2474a4a5def8e80f62731e94b85d32213c8cc62f1d44ba4fabd3cce0ef7fd
|
7
|
+
data.tar.gz: 73b480e71a16f94485f2f28b29adab0e1254a35d0ee00e144719fe545f85b08bb01ee49ff277a6ef050ac461e08034cbce8b7043de391c7e1434ba8365247daa
|
@@ -65,7 +65,6 @@ module Newsletterable
|
|
65
65
|
end
|
66
66
|
|
67
67
|
module ClassMethods
|
68
|
-
|
69
68
|
def subscribe_on(list_name, options = {})
|
70
69
|
field = options[:field] || list_name
|
71
70
|
|
@@ -73,12 +72,14 @@ module Newsletterable
|
|
73
72
|
self.__newsletterable_options[list_name] = options.merge(field: field)
|
74
73
|
|
75
74
|
after_save -> { manage_subscription(list_name) }, if: :"#{field}_changed?"
|
76
|
-
|
75
|
+
define_method :"update_subscription_#{list_name}" do |&block|
|
76
|
+
update_subscription(list_name, &block)
|
77
|
+
end
|
78
|
+
around_update :"update_subscription_#{list_name}", if: -> { send(:"#{field}?") && email_changed? }
|
77
79
|
unless options[:unsubscribe_on_destroy]
|
78
80
|
before_destroy -> { remove_subscription(list_name) }, if: :"#{field}?"
|
79
81
|
end
|
80
82
|
end
|
81
|
-
|
82
83
|
end
|
83
84
|
end
|
84
85
|
end
|