card-mod-carrierwave 0.11.0 → 0.11.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
  SHA256:
3
- metadata.gz: 29840e46e626a7121a84faa9b4b0f9889694ab7653031bd9cf97ccb896d46263
4
- data.tar.gz: 503d37c6471c6fd8d0e6cba3c94c65097663ab0854fc24861673c80f913e1e86
3
+ metadata.gz: 34b28c82c148d656ea2b868af80d713a79b0ae318cc3594daaeb0b174f9ad476
4
+ data.tar.gz: a8dea9684fae1880d58d26fb3a2731c3afa0a8ed5b40b115bac844d887ac22a4
5
5
  SHA512:
6
- metadata.gz: 65f55c9a919ea38e364f5863030d35b5674569dab60454ee157c3e78c762afbc427b3e258246d8389714e00eb752bf8076b948e8a5c70b4d202a2dd63ff01695
7
- data.tar.gz: 69c7e3184ca375b4342ad3a4f5dd2ae9f8654666e0e6cefded79f5b3c2823dfd8a074ad906acdb28b749f51413c49ebba315c7a790aa17907b1da063baf07791
6
+ metadata.gz: 0ac6214d839224cb946be3f23c12fa0a5291f9338b4124f31c8106dae432f3f1edd2cb02de9e4a405735e3c69181fd15dd4e872bc289a9c93d4321c2d86fc780
7
+ data.tar.gz: 0a0e99bfb0a5a9be113ce186683166ae880031fd15c2723ed00cce9f13eb8cea191ceead6155d3258fee5d3de171a71fdf41d6092248c15e1c3249a97e36dd23
@@ -279,8 +279,7 @@ module CarrierWave
279
279
  end
280
280
 
281
281
  def original_filename
282
- @original_filename ||= model.selected_action &&
283
- model.selected_action.comment
282
+ @original_filename ||= model.selected_action&.comment
284
283
  end
285
284
 
286
285
  def action_id
@@ -288,7 +287,7 @@ module CarrierWave
288
287
  end
289
288
 
290
289
  # delegate carrierwave's fog config methods to bucket configuration
291
- ::CarrierWave::FileCardUploader::CONFIG_OPTIONS.each do |name|
290
+ CONFIG_OPTIONS.each do |name|
292
291
  define_method("fog_#{name}") { bucket_config name }
293
292
  end
294
293
 
@@ -311,9 +310,9 @@ module CarrierWave
311
310
  def storage
312
311
  case @model.storage_type
313
312
  when :cloud
314
- ::CarrierWave::Storage::Fog.new(self)
313
+ Storage::Fog.new self
315
314
  else
316
- ::CarrierWave::Storage::File.new(self)
315
+ Storage::File.new self
317
316
  end
318
317
  end
319
318
  end
@@ -75,7 +75,7 @@ end
75
75
 
76
76
  def assign_set_specific_attributes
77
77
  # reset content if we really have something to upload
78
- self.content = nil if set_specific[attachment_name.to_s].present?
78
+ self.content = nil if set_specific[attachment_name].present?
79
79
  super
80
80
  end
81
81
 
@@ -95,18 +95,36 @@ def revision action, before_action=false
95
95
  end
96
96
 
97
97
  def attachment_format ext
98
- if ext.present? && attachment && (original_ext = attachment.extension.sub(/^\./, ""))
99
- if ["file", original_ext].member? ext
100
- original_ext
101
- elsif (exts = Mime::Types[attachment.content_type])
102
- if exts.find { |mt| mt.extensions.member? ext }
103
- ext
104
- else
105
- exts[0].extensions[0]
106
- end
107
- end
98
+ rescuing_extension_issues do
99
+ return unless ext.present? && original_extension
100
+
101
+ confirm_original_extension(ext) || detect_extension(ext)
108
102
  end
109
- rescue => e
103
+ end
104
+
105
+ def rescuing_extension_issues
106
+ yield
107
+ rescue StandardError => e
110
108
  Rails.logger.info "attachment_format issue: #{e.message}"
111
109
  nil
112
110
  end
111
+
112
+ def detect_extension ext
113
+ return unless (mime_types = Mime::Types[attachment.content_type])
114
+
115
+ recognized_extension?(mime_types, ext) ? ext : mime_types[0].extensions[0]
116
+ end
117
+
118
+ def recognized_extension? mime_types, ext
119
+ mime_types.find { |mt| mt.extensions.member? ext }
120
+ end
121
+
122
+ def confirm_original_extension ext
123
+ return unless ["file", original_extension].member? ext
124
+
125
+ original_extension
126
+ end
127
+
128
+ def original_extension
129
+ @original_extension ||= attachment&.extension&.sub(/^\./, "")
130
+ end
@@ -55,12 +55,20 @@ format :html do
55
55
 
56
56
  def old_image action, hide_diff
57
57
  return if hide_diff || !action
58
- return unless (last_change = card.last_change_on(:db_content, before: action))
59
- card.with_selected_action_id last_change.card_action_id do
60
- Card::Content::Diff.render_deleted_chunk _render_core
58
+
59
+ old_image_change action do |old_action_id|
60
+ card.with_selected_action_id old_action_id do
61
+ Card::Content::Diff.render_deleted_chunk _render_core
62
+ end
61
63
  end
62
64
  end
63
65
 
66
+ def old_image_change action
67
+ return unless (change = card.last_change_on(:db_content, before: action))
68
+
69
+ yield change.card_action_id
70
+ end
71
+
64
72
  def new_image action
65
73
  card.with_selected_action_id action.id do
66
74
  Card::Content::Diff.render_added_chunk _render_core
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: card-mod-carrierwave
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.11.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ethan McCutchen
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-12-24 00:00:00.000000000 Z
13
+ date: 2021-03-02 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: card
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 1.101.0
21
+ version: 1.101.1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 1.101.0
28
+ version: 1.101.1
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: carrierwave
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -60,28 +60,28 @@ dependencies:
60
60
  requirements:
61
61
  - - '='
62
62
  - !ruby/object:Gem::Version
63
- version: 0.11.0
63
+ version: 0.11.1
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - '='
69
69
  - !ruby/object:Gem::Version
70
- version: 0.11.0
70
+ version: 0.11.1
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: card-mod-permissions
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - '='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.11.0
77
+ version: 0.11.1
78
78
  type: :runtime
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
- version: 0.11.0
84
+ version: 0.11.1
85
85
  description: ''
86
86
  email:
87
87
  - info@decko.org