chimpmunk 0.0.7 → 0.0.8
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.
- checksums.yaml +4 -4
- data/db/migrate/1_chimpmunk_migration.rb +1 -1
- data/lib/chimpmunk/email_campaign.rb +7 -4
- data/lib/chimpmunk/email_subscriber.rb +5 -1
- data/lib/chimpmunk/version.rb +1 -1
- data/lib/rails_admin/chimpmunk_custom_actions.rb +4 -4
- data/spec/chimpmunk/email_campaign_spec.rb +0 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 004f6a5e1bdcf871337d5ef463b9ad8bd702f1e5
|
4
|
+
data.tar.gz: 539373de26ba8c9284daadeaff2e8070cc35c222
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 058969bcf2fa0f4858d91674be89cdf3ce955e818662e3cbef740e0470ac47889e6873fd52b89c98040307fa742d3950cf178bf1ee4c4efffd0f3807c85c7606
|
7
|
+
data.tar.gz: 40566223ce13ecb645da2b93540750ce5213203f0833f5e963f4e9f853bba9eb99ad732bf80f120c8d7641b0cdac34d6f76307e4705c52be53a3455a9e9dcd29
|
@@ -204,7 +204,8 @@ module Chimpmunk
|
|
204
204
|
# send a mailchimp campaign
|
205
205
|
def send_campaign
|
206
206
|
response = Chimpmunk.mailchimp.campaigns.send({cid: self.mailchimp_campaign_id})
|
207
|
-
|
207
|
+
self.skip_update_callbacks
|
208
|
+
response['errors'].nil? && send.update_attribute(:status, 'sent')
|
208
209
|
end
|
209
210
|
|
210
211
|
##
|
@@ -212,16 +213,18 @@ module Chimpmunk
|
|
212
213
|
def schedule_campaign
|
213
214
|
response = Chimpmunk.mailchimp.campaigns.schedule({
|
214
215
|
cid: self.mailchimp_campaign_id,
|
215
|
-
schedule_time: self.send_date.
|
216
|
+
schedule_time: self.send_date.strftime("%Y-%m-%d %H:%M:%S")
|
216
217
|
})
|
217
|
-
|
218
|
+
self.skip_update_callbacks
|
219
|
+
response['errors'].nil? && self.update_attribute(:status, 'scheduled')
|
218
220
|
end
|
219
221
|
|
220
222
|
##
|
221
223
|
# un-schedule email campaign that has been scheduled
|
222
224
|
def unschedule_campaign
|
223
225
|
response = Chimpmunk.mailchimp.campaigns.unschedule({cid: self.mailchimp_campaign_id})
|
224
|
-
|
226
|
+
self.skip_update_callbacks
|
227
|
+
response['errors'].nil? && self.update_attribute(:status, 'un-scheduled')
|
225
228
|
end
|
226
229
|
|
227
230
|
##
|
@@ -24,7 +24,11 @@ module Chimpmunk
|
|
24
24
|
def create_mailchimp_subscriber
|
25
25
|
Chimpmunk.mailchimp.lists.subscribe({
|
26
26
|
id: self.email_list.mailchimp_id,
|
27
|
-
email: { email: self.email }
|
27
|
+
email: { email: self.email },
|
28
|
+
merge_vars: {
|
29
|
+
fname: self.first_name,
|
30
|
+
lname: self.last_name
|
31
|
+
}
|
28
32
|
})
|
29
33
|
end
|
30
34
|
|
data/lib/chimpmunk/version.rb
CHANGED
@@ -113,7 +113,7 @@ module RailsAdmin
|
|
113
113
|
# Would rather have this method be new instead of edit
|
114
114
|
@new_object = @object.duplicate_campaign
|
115
115
|
if @new_object.save
|
116
|
-
flash[:
|
116
|
+
flash[:alert] = "Campaign was duplicated. Please edit the content now."
|
117
117
|
redirect_to rails_admin.edit_path("email_campaign", @new_object)
|
118
118
|
else
|
119
119
|
flash[:error] = "Campaign could not be duplicated."
|
@@ -144,7 +144,7 @@ module RailsAdmin
|
|
144
144
|
register_instance_option :controller do
|
145
145
|
Proc.new do
|
146
146
|
if @object.send_campaign
|
147
|
-
flash[:
|
147
|
+
flash[:alert] = "Campaign was successfully sent."
|
148
148
|
redirect_to rails_admin.index_path("chimpmunk~email_campaign")
|
149
149
|
else
|
150
150
|
flash[:error] = "Campaign could not be sent."
|
@@ -175,7 +175,7 @@ module RailsAdmin
|
|
175
175
|
register_instance_option :controller do
|
176
176
|
Proc.new do
|
177
177
|
if @object.schedule_campaign
|
178
|
-
flash[:
|
178
|
+
flash[:alert] = "Campaign was successfully scheduled."
|
179
179
|
redirect_to rails_admin.index_path("chimpmunk~email_campaign")
|
180
180
|
else
|
181
181
|
flash[:error] = "Campaign could not be scheduled."
|
@@ -206,7 +206,7 @@ module RailsAdmin
|
|
206
206
|
register_instance_option :controller do
|
207
207
|
Proc.new do
|
208
208
|
if @object.unschedule_campaign
|
209
|
-
flash[:
|
209
|
+
flash[:alert] = "Campaign was successfully un-scheduled."
|
210
210
|
redirect_to rails_admin.index_path("chimpmunk~email_campaign")
|
211
211
|
else
|
212
212
|
flash[:error] = "Campaign could not be un-scheduled."
|
@@ -70,14 +70,6 @@ describe Chimpmunk::EmailCampaign do
|
|
70
70
|
new_template = Chimpmunk::EmailTemplate.create(name: 'new template')
|
71
71
|
@email_campaign.update(email_template_id: new_template.id)
|
72
72
|
end
|
73
|
-
|
74
|
-
it "should not call 'update_content' on update if the template id didn't change" do
|
75
|
-
@email_campaign.save
|
76
|
-
@email_campaign.skip_update_callbacks = false
|
77
|
-
|
78
|
-
expect(@email_campaign).to_not receive(:update_content)
|
79
|
-
@email_campaign.update(subject: 'new subject')
|
80
|
-
end
|
81
73
|
end
|
82
74
|
|
83
75
|
describe 'destroy' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chimpmunk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nick Franken
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-03-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|