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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8884ac7a8faa723ee19fbdf68db6d79af9d3d85c
4
- data.tar.gz: afd92fa0f0357bb0dd1ca7acd03339601c1fb7a2
3
+ metadata.gz: 004f6a5e1bdcf871337d5ef463b9ad8bd702f1e5
4
+ data.tar.gz: 539373de26ba8c9284daadeaff2e8070cc35c222
5
5
  SHA512:
6
- metadata.gz: 104b3026b64cc6c8410d6decdea1d3ecb35932f80b3eb4f5f2985244fb652e723739f573619a5431c4753c03e4141aac5b6d6c63d22ed27414700c9891e41182
7
- data.tar.gz: 545bd5a95acf1d83822865a2104764b8a978f77f13e4e973bb63f1def020bf05c1afcd1de4e1945b81b77b45cdca042d1afc3c628b9e096e66d1bc56a49563a8
6
+ metadata.gz: 058969bcf2fa0f4858d91674be89cdf3ce955e818662e3cbef740e0470ac47889e6873fd52b89c98040307fa742d3950cf178bf1ee4c4efffd0f3807c85c7606
7
+ data.tar.gz: 40566223ce13ecb645da2b93540750ce5213203f0833f5e963f4e9f853bba9eb99ad732bf80f120c8d7641b0cdac34d6f76307e4705c52be53a3455a9e9dcd29
@@ -27,7 +27,7 @@ class ChimpmunkMigration < ActiveRecord::Migration
27
27
  t.integer :emails_sent
28
28
  t.integer :clicked
29
29
  t.integer :opened
30
- t.string :status
30
+ t.string :status, default: 'draft'
31
31
  t.integer :hard_bounces
32
32
  t.integer :soft_bounces
33
33
  t.integer :unsubscribes
@@ -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
- response['errors'].nil?
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.to_time.to_s.gsub(' UTC', '')
216
+ schedule_time: self.send_date.strftime("%Y-%m-%d %H:%M:%S")
216
217
  })
217
- response['errors'].nil? && self.update_attribute(:scheduled, true)
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
- response['errors'].nil? && self.update_attribute(:scheduled, false)
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
 
@@ -1,3 +1,3 @@
1
1
  module Chimpmunk
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
@@ -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[:notice] = "Campaign was duplicated. Please edit the content now."
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[:notice] = "Campaign was successfully sent."
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[:notice] = "Campaign was successfully scheduled."
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[:notice] = "Campaign was successfully un-scheduled."
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.7
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-02-24 00:00:00.000000000 Z
11
+ date: 2015-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord