mail_manager 3.2.1 → 3.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 629cb0adeedd16a50516d77a801d98a355d3c4f1
4
- data.tar.gz: 1257352173175de86d30db19ddfbe1890b342ebb
3
+ metadata.gz: 8b444aa191cc3f0026ee9f5934f8ff6d64e7a2a5
4
+ data.tar.gz: d8f188339a7d1e3799348b560348c182cbdd9d9b
5
5
  SHA512:
6
- metadata.gz: bcb81576b3fd8311480e663386bb4537f51fe56d66eb574c1867fe1972aab6dff8d5e00ffbc51537dcb5c2ca4ba94f15fda0b65dcc51effa3715afedb0af9f6f
7
- data.tar.gz: c9f26c7e02ead7da06cbac09e31785ed14d4457c52d41768d049e410d523b5c3d437ced9e33a60b40021b0e9aa518a7e6bf42d39ef46bac915b7c41a1dbcfd4c
6
+ metadata.gz: bab64c443443b55a2e3b0158c46a4971b37c6b45926ea91acd8e90c8b807d6e43c145c01e908e47c3c3f2bc394c62c2bad7f7ea8cd91f9a492b0de852d4ec220
7
+ data.tar.gz: 7ad7d02707c79454a10c0b2d9b18c8f5d507576f773df76e689589019797c4d3ed16406dd4e053e8012c13293796f0ed66c9277644f017ccc1dddd89861ed923
data/README.md CHANGED
@@ -3,6 +3,8 @@ Mail Manager
3
3
 
4
4
  The goal of this project will be to create a plugin for use in any site which will provide an interface to manage mailing lists, scheduling of email mailings, subscribe/unsubscribe from lists by contacts, and view reports of bounces and possible track views of emails. Currently, only one list is supported for subscribe/unsubscribe by contact. An interface is available to provide mailable objects from other plugins.
5
5
 
6
+ See the latest docs at the [Homepage](http://ireachnews.com) or the [Wiki](https://github.com/LoneStarInternet/mail_manager/wiki)
7
+
6
8
  Requirements
7
9
  ------------
8
10
  * Rails 3.2.x (currently tested with rails 3.2.21)
@@ -53,7 +53,7 @@ module MailManager
53
53
  def deliver
54
54
  Rails.logger.info "Starting to Process Mailing '#{subject}' ID:#{id}"
55
55
  Lock.with_lock("mail_mgr_mailing_send[#{id}]") do |lock|
56
- unless status.to_s.eql?('scheduled')
56
+ unless can_run?
57
57
  raise Exception.new("Mailing was not scheduled when job tried to run!")
58
58
  end
59
59
  unless scheduled_at <= Time.now
@@ -210,6 +210,10 @@ module MailManager
210
210
  def can_cancel?
211
211
  ['pending','scheduled','processing'].include?(status.to_s)
212
212
  end
213
+
214
+ def can_run?
215
+ ['scheduled','processing'].include?(status.to_s)
216
+ end
213
217
 
214
218
  def can_schedule?
215
219
  ['pending'].include?(status.to_s) && scheduled_at.present?
@@ -230,7 +234,7 @@ module MailManager
230
234
  end
231
235
 
232
236
  def mailing_jobs
233
- Delayed::Job.where("handler like ?","%MailManager::Mailing%#{subject}%")
237
+ Delayed::Job.where("handler like ?","%MailManager::Mailing% id: #{self.id}\n%")
234
238
  end
235
239
 
236
240
  def cancel
@@ -20,11 +20,12 @@
20
20
  <% if mailing.can_edit? %>
21
21
  <%= link_to 'Edit', mail_manager.edit_mailing_path(mailing), :class => 'button' %>
22
22
  <% if mailing.can_schedule? %>
23
- <%= link_to 'Schedule', mail_manager.schedule_mailing_path(mailing), :method => :put, :class => 'button', :confirm => "Are you sure you want to start the mailing at #{l(mailing.scheduled_at) rescue "N/A"}?" %>
24
- <% elsif mailing.can_cancel? %>
25
- <%= link_to 'Cancel', mail_manager.cancel_mailing_path(mailing), :method => :put, :class => 'button', :id => "cancel_mailing_#{mailing.id}" %>
26
- <% end %>
23
+ <%= link_to 'Schedule', mail_manager.schedule_mailing_path(mailing), :method => :put, :class => 'button', :id => "schedule_mailing_#{mailing.id}", :confirm => "Are you sure you want to start the mailing at #{l(mailing.scheduled_at) rescue "N/A"}?" %>
27
24
  <% end %>
25
+ <% end %>
26
+ <% if mailing.can_cancel? %>
27
+ <%= link_to 'Cancel', mail_manager.cancel_mailing_path(mailing), :method => :put, :class => 'button', :id => "cancel_mailing_#{mailing.id}" %>
28
+ <% end %>
28
29
  <% if mailing.messages.size > 0 %>
29
30
  <%= link_to 'Messages', mail_manager.mailing_messages_path(mailing), :class => 'button' %>
30
31
  <% end %>
@@ -1,3 +1,3 @@
1
1
  module MailManager
2
- VERSION = "3.2.1"
2
+ VERSION = "3.2.2"
3
3
  end
@@ -13,6 +13,10 @@ def get_config(env,filename='config/mail_manager.yml')
13
13
  end
14
14
 
15
15
  namespace :mail_manager do
16
+ desc "Upgrade tasks" do
17
+ Rake::Task['mail_manager:import_migrations'].invoke
18
+ Rake::Task['db:migrate'].invoke
19
+ end
16
20
  desc "Add mlm defaults to config/mail_manager.yml"
17
21
  task :default_app_config, :table_prefix do |t,args|
18
22
  Rails.logger.warn "Adding defaults to config/mail_manager.yml"
data/mail_manager.gemspec CHANGED
@@ -7,11 +7,11 @@ Gem::Specification.new do |gem|
7
7
  gem.name = "mail_manager"
8
8
  gem.version = MailManager::VERSION
9
9
  gem.authors = ["Lone Star Internet"]
10
- gem.email = ["biz@lone-star.net"]
10
+ gem.email = ["biz@lone-star.net", 'chauboldt@lone-star.net']
11
11
  gem.licenses = ["MIT"]
12
12
  gem.description = %q{Manages the delivery of mailable items. Handles bounces, unsubscribe, opt-in, etc.}
13
13
  gem.summary = %q{Mailing list management tool}
14
- gem.homepage = "http://ireach.com"
14
+ gem.homepage = "http://ireachnews.com"
15
15
 
16
16
  gem.add_dependency "rails", "~>3.2"
17
17
  gem.add_dependency 'jquery-rails', "~>3.1"
@@ -13,7 +13,7 @@ CREATE TABLE `delayed_jobs` (
13
13
  `updated_at` datetime NOT NULL,
14
14
  PRIMARY KEY (`id`),
15
15
  KEY `delayed_jobs_priority` (`priority`,`run_at`)
16
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
16
+ ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
17
17
 
18
18
  CREATE TABLE `mail_manager_bounces` (
19
19
  `id` int(11) NOT NULL AUTO_INCREMENT,
@@ -43,7 +43,7 @@ CREATE TABLE `mail_manager_contacts` (
43
43
  `login_token` varchar(255) DEFAULT NULL,
44
44
  `login_token_created_at` datetime DEFAULT NULL,
45
45
  PRIMARY KEY (`id`)
46
- ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
46
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
47
47
 
48
48
  CREATE TABLE `mail_manager_mailables` (
49
49
  `id` int(11) NOT NULL AUTO_INCREMENT,
@@ -91,7 +91,7 @@ CREATE TABLE `mail_manager_mailings` (
91
91
  `messages_count` int(11) DEFAULT '0',
92
92
  `deleted_at` datetime DEFAULT NULL,
93
93
  PRIMARY KEY (`id`)
94
- ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
94
+ ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
95
95
 
96
96
  CREATE TABLE `mail_manager_messages` (
97
97
  `id` int(11) NOT NULL AUTO_INCREMENT,
@@ -27,7 +27,7 @@ RSpec.feature MailManager::Mailing, type: :feature do
27
27
  click_link "Schedule"
28
28
  expect(page).to have_content "Mailing scheduled"
29
29
  @mailing = MailManager::Mailing.find(@mailing)
30
- expect(@mailing.status).to eq "scheduled"
30
+ expect(@mailing.status).to eq "scheduled"
31
31
  expect(Delayed::Job.count).to eq 1
32
32
  and_it "can then be cancelled and its job removed" do
33
33
  mailing2 = FactoryGirl.create(:mailing)
@@ -10,6 +10,16 @@ RSpec.describe MailManager::Mailing do
10
10
  Delayed::Worker.delay_jobs = false
11
11
  ActionMailer::Base.deliveries.clear
12
12
  end
13
+ it "allows a processing mailing to run(for resetting a failed job)" do
14
+ mailing = MailManager::Mailing.create(valid_attributes)
15
+ mailing.change_status(:processing)
16
+ expect(mailing.can_run?).to be true
17
+ end
18
+ it "allows a processing mailing to run(for resetting a failed job)" do
19
+ mailing = MailManager::Mailing.create(valid_attributes)
20
+ mailing.change_status(:processing)
21
+ expect(mailing.can_run?).to be true
22
+ end
13
23
  it "sets its initial status properly" do
14
24
  attributes = valid_attributes
15
25
  attributes.delete('status')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mail_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.1
4
+ version: 3.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lone Star Internet
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-27 00:00:00.000000000 Z
11
+ date: 2015-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -196,6 +196,7 @@ description: Manages the delivery of mailable items. Handles bounces, unsubscrib
196
196
  opt-in, etc.
197
197
  email:
198
198
  - biz@lone-star.net
199
+ - chauboldt@lone-star.net
199
200
  executables: []
200
201
  extensions: []
201
202
  extra_rdoc_files: []
@@ -484,7 +485,7 @@ files:
484
485
  - spec/test_app/spec/views/users/index.html.erb_spec.rb
485
486
  - spec/test_app/spec/views/users/new.html.erb_spec.rb
486
487
  - spec/test_app/spec/views/users/show.html.erb_spec.rb
487
- homepage: http://ireach.com
488
+ homepage: http://ireachnews.com
488
489
  licenses:
489
490
  - MIT
490
491
  metadata: {}