newsletter 3.2.22.0 → 3.2.25.1

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: bee9058c30f1db5dff731b8b612dace63b6b1c0e
4
- data.tar.gz: d82e66d08d8ef44fd44db0325b932ecdb5212f70
3
+ metadata.gz: a03ff50b471d3693c1d8e8cf7f4da0e044cf4c8b
4
+ data.tar.gz: 7895bbee35cac571cd1f210ba3038cce4f04fa76
5
5
  SHA512:
6
- metadata.gz: e114484f426dce3c2ab14d0d55ac8fea592ab82415586fa7c1a5f86e09c3b46188dbf63b8062c39ae6ec85521af7595ebf859e7902f6a561a48430c547f8ab25
7
- data.tar.gz: f3de7ccdb8de99c05a22de8a3398112f06b665e89d2fa817c49a1eada9b0b2c8febc1e4f11d9f08aebfba670330dfbc43996d5d9ac2012d4105ac54a09c50852
6
+ metadata.gz: c151d3ba497f8af462c5d3649c6bfb1e30ae1d03221bcacb03c4d8b992d080ad368ad475a079542346a4df3776ca1f030cfe19444ce0a18f5dbb20b23f29bd55
7
+ data.tar.gz: 70cfa08ba67446e0b55527a822ca73e6067d03d520975154b08b493798157669d132aa7f329d08adfe297c7e85da2541aedef37d6c48d703fc758efbeb9779b4
data/README.md CHANGED
@@ -16,7 +16,7 @@ Online Documentation
16
16
  Requirements
17
17
  ------------
18
18
 
19
- * Rails 3.2.x (currently tested against rails 3.2.21)
19
+ * Rails 3.2.x (currently tested against rails 3.2.25)
20
20
  * Ruby 2.1.5 (currently tested against 2.1.5, we have also tested against 1.9.3 - but it is no longer supported by ruby devs)
21
21
  * [Bundler](http://bundler.io)
22
22
 
@@ -16,7 +16,7 @@ module Newsletter
16
16
  has_many :pieces, :order => 'sequence', :class_name => "Newsletter::Piece"
17
17
  belongs_to :updated_by, :class_name => 'User'
18
18
 
19
- attr_accessor :should_destroy
19
+ attr_accessor :_destroy
20
20
 
21
21
  attr_protected :id
22
22
 
@@ -15,7 +15,7 @@ module ::Newsletter
15
15
  belongs_to :updated_by, :class_name => 'User'
16
16
  after_create :write_design
17
17
 
18
- accepts_nested_attributes_for :areas
18
+ accepts_nested_attributes_for :areas, allow_destroy: true
19
19
 
20
20
  attr_accessible :name, :description, :html_text, :areas_attributes,
21
21
  :stylesheet_text
@@ -20,7 +20,7 @@ module Newsletter
20
20
 
21
21
  validates_presence_of :name
22
22
 
23
- accepts_nested_attributes_for :fields
23
+ accepts_nested_attributes_for :fields, allow_destroy: true
24
24
 
25
25
  attr_protected :id
26
26
  #FIXME: make this work with deletable or convert to auditable, and extend it to access destroyed records
@@ -15,6 +15,8 @@ module Newsletter
15
15
  has_many :field_values, :class_name => 'Newsletter::FieldValue'
16
16
  belongs_to :updated_by, :class_name => 'User'
17
17
 
18
+ attr_accessor :_destroy
19
+
18
20
  acts_as_list :scope => :element, :column => :sequence
19
21
 
20
22
  validates_presence_of :name
@@ -28,7 +30,7 @@ module Newsletter
28
30
  field.id]).nil? }
29
31
  =end
30
32
  attr_accessible :name, :type, :element_id, :label, :sequence, :is_required,
31
- :description, :updated_by
33
+ :description, :updated_by, :_destroy
32
34
 
33
35
  include Deleteable
34
36
 
@@ -1,17 +1,6 @@
1
1
  <% div_for area do %>
2
2
  <% fields_for 'design[area_attributes][]', area do |naf| %>
3
3
  <%= naf.text_field :name, :index => nil %>
4
- <% if area.new_record? %>
5
- <%= link_to_function "Remove", "$(this).up('.area').remove()", :class => 'button' %><br/>
6
- <% else %>
7
- <%= link_to_function "Remove", "$(this).next('.should_destroy').value = 1; $(this).hide();"+
8
- "$('area_restore_#{area.id}').show()", :class => 'button',
9
- :id => "area_remove_#{area.id}" %>
10
- <%= link_to_function "Restore", "$(this).next('.should_destroy').value = 0; $(this).hide();"+
11
- "$('area_remove_#{area.id}').show()", :class => 'button',
12
- :id => "area_restore_#{area.id}", :style => 'display:none' %><br/>
13
- <%= naf.hidden_field :id, :index => nil %>
14
- <%= naf.hidden_field :should_destroy, :index => nil, :class => 'should_destroy' %>
15
- <% end %>
4
+ <%= naff.link_to_remove "Remove", {class: 'button', style: 'margin-left: 130px;'} %>
16
5
  <% end %>
17
6
  <% end %>
@@ -11,6 +11,14 @@ module Deleteable
11
11
  !deleted_at.nil?
12
12
  end
13
13
 
14
+ def destroy(hard_delete=false)
15
+ if !hard_delete && self.class.column_names.include?('deleted_at')
16
+ delete
17
+ else
18
+ super
19
+ end
20
+ end
21
+
14
22
  def delete
15
23
  update_attribute(:deleted_at,Time.now)
16
24
  end
@@ -1,3 +1,3 @@
1
1
  module Newsletter
2
- VERSION = "3.2.22.0"
2
+ VERSION = "3.2.25.1"
3
3
  end
@@ -28,7 +28,7 @@ Gem::Specification.new do |gem|
28
28
  gem.add_dependency 'rack-protection', '=2.0.1'
29
29
  gem.add_dependency "jquery-rails", "~>3.1"
30
30
  gem.add_dependency "jquery-ui-rails", "~>5.0"
31
- gem.add_dependency "mini_magick", "~>4.1"
31
+ gem.add_dependency "mini_magick", "=4.9.4"
32
32
  gem.add_dependency "will_paginate", "~>3.0"
33
33
  gem.add_dependency 'carrierwave', "~>0.10"
34
34
  gem.add_dependency "dynamic_form", "~>1.1"
@@ -147,6 +147,15 @@ EOT
147
147
  expect(@nice_image_field.label).to eq "Nice Image"
148
148
  click_link "Back to Design"
149
149
  end
150
+ and_it "can delete an area" do
151
+ area = @design.areas.first
152
+ within(:css, "#area_#{area.id}") do
153
+ click_link "Remove"
154
+ end
155
+ click_button "Submit"
156
+ expect(Newsletter::Area.find_by_id(area.id)).to be_nil
157
+ expect(Newsletter::Area.deleted.find_by_id(area.id)).not_to be_nil
158
+ end
150
159
  and_it "soft deletes designs" do
151
160
  click_link "View All"
152
161
  click_link "Delete"
@@ -35,6 +35,27 @@ RSpec.describe 'Element management', type: :feature do
35
35
  end
36
36
  end
37
37
 
38
+ it "removes a field from an element", js: true do
39
+ visit "/newsletter/designs/#{@design.id}/edit"
40
+ Debugging::wait_until_success do
41
+ click_link "Manage Elements", match: :first
42
+ end
43
+ element = @design.elements.first
44
+ Debugging::wait_until_success do
45
+ within(:css, "#element_#{element.id}") do
46
+ click_link "Edit"
47
+ end
48
+ end
49
+ field = element.fields.first
50
+ field_id = "field_#{field.type.split(/:+/).last.downcase}_#{field.id}"
51
+ find(:css, "##{field_id} a").click() # click Remove for the field
52
+ click_button "Submit"
53
+ Debugging::wait_until_success do
54
+ Newsletter::Field.deleted.find_by_id(field.id).present?
55
+ Newsletter::Field.find_by_id(field.id).blank?
56
+ end
57
+ end
58
+
38
59
  it "has javascript on the editor" do
39
60
  visit "/newsletters/#{@newsletter.id}/editor"
40
61
  expect(page.body).to include('<script')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newsletter
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.22.0
4
+ version: 3.2.25.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lone Star Internet
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-05-09 00:00:00.000000000 Z
12
+ date: 2019-08-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -71,16 +71,16 @@ dependencies:
71
71
  name: mini_magick
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - "~>"
74
+ - - '='
75
75
  - !ruby/object:Gem::Version
76
- version: '4.1'
76
+ version: 4.9.4
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - "~>"
81
+ - - '='
82
82
  - !ruby/object:Gem::Version
83
- version: '4.1'
83
+ version: 4.9.4
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: will_paginate
86
86
  requirement: !ruby/object:Gem::Requirement