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