caboose-cms 0.7.70 → 0.7.71

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: 94e48a620f536176ccf6ee33e90e59b8331c752d
4
- data.tar.gz: 7dc5ab55f600522400b39c22979643e23ebbc94b
3
+ metadata.gz: 7ef12fa6392d39fa4faf8be10245f0e0532ce088
4
+ data.tar.gz: 49253e331627337f49c57c13cb38663876b2d89f
5
5
  SHA512:
6
- metadata.gz: a5127d554da77f633376092e414714fc973f7e1a16f079b371e267e2beefc3725b2c1938dd5fc3f6469e485f1e39a3cea3394654260541351e31ede0cbfb34c7
7
- data.tar.gz: 2f223ec65ff19aa7e7098b6d7b64d2e12fe3353633122d57f8fd1088a1b01960a252a2d8e8c27b37710d0d79b365780950aa663ee55e3122a36cd59a6fe7d13a
6
+ metadata.gz: 4a7973212ed78b8282de7dceece1989b2e6efa373b2946657c4f16bfc0674fce4c3111e95b09c63ae53c41e32c0a4d8d3ad4f34b0b84e219affa6407d904ad4a
7
+ data.tar.gz: d6224a2867094144f871a41eaf098275777082fbf63b3fa39363456e9a81f1c650042fbb0aa98413503daae333ca15a31ad02fa427f6aa5e2f48ecc2d039cdd0
@@ -83,7 +83,8 @@ MediaController.prototype = {
83
83
  type: 'post',
84
84
  data: {
85
85
  media_category_id: that.cat_id,
86
- name: file.name
86
+ name: file.name,
87
+ file_type: file.type
87
88
  },
88
89
  success: function(resp) {},
89
90
  async: false
@@ -167,9 +167,15 @@ module Caboose
167
167
  media_category_id = params[:media_category_id]
168
168
  original_name = params[:name]
169
169
  name = Caboose::Media.upload_name(original_name)
170
+ file_type = params[:file_type]
171
+ if ['image/gif', 'image/jpeg', 'image/png', 'image/tiff'].include? file_type
172
+ image_content_type = file_type
173
+ else
174
+ file_content_type = file_type
175
+ end
170
176
  m = Media.where(:media_category_id => media_category_id, :original_name => original_name, :name => name).first
171
177
  if m.nil?
172
- m = Media.create(:media_category_id => media_category_id, :original_name => original_name, :name => name, :processed => false)
178
+ m = Media.create(:media_category_id => media_category_id, :original_name => original_name, :name => name, :image_content_type => image_content_type, :file_content_type => file_content_type, :processed => false)
173
179
  end
174
180
  p = Product.where(:media_category_id => media_category_id).last
175
181
  if p
@@ -24,7 +24,9 @@ class Caboose::Media < ActiveRecord::Base
24
24
  :name,
25
25
  :original_name,
26
26
  :description,
27
- :processed
27
+ :processed,
28
+ :image_content_type,
29
+ :file_content_type
28
30
 
29
31
  has_attached_file :sample
30
32
 
@@ -47,20 +49,24 @@ class Caboose::Media < ActiveRecord::Base
47
49
  key = "#{self.media_category_id}_#{self.original_name}"
48
50
  key = URI.encode(key.gsub(' ', '+'))
49
51
  uri = "http://#{bucket}.s3.amazonaws.com/#{key}"
50
-
51
- image_extensions = ['.jpg', '.jpeg', '.gif', '.png', '.tif']
52
- ext = File.extname(key).downcase
53
- mimetype = Caboose::Mimetype.mimetype_for_extension(ext)
54
- if image_extensions.include?(ext)
52
+
53
+ content_type = self.image_content_type || self.file_content_type
54
+
55
+ if is_image?
55
56
  self.image = URI.parse(uri)
56
- self.image_content_type = mimetype if mimetype
57
+ self.image_content_type = content_type
57
58
  else
58
59
  self.file = URI.parse(uri)
59
- self.file_content_type = mimetype if mimetype
60
- end
60
+ self.file_content_type = content_type
61
+ end
61
62
  self.processed = true
62
63
  self.save
63
-
64
+
65
+ # Set the content-type metadata on S3
66
+ if !is_image?
67
+ self.set_file_content_type(content_type)
68
+ end
69
+
64
70
  # Remember when the last upload processing happened
65
71
  s = Caboose::Setting.where(:site_id => self.media_category.site_id, :name => 'last_upload_processed').first
66
72
  s = Caboose::Setting.create(:site_id => self.media_category.site_id, :name => 'last_upload_processed') if s.nil?
@@ -80,7 +86,8 @@ class Caboose::Media < ActiveRecord::Base
80
86
  :access_key_id => config['access_key_id'],
81
87
  :secret_access_key => config['secret_access_key']
82
88
  })
83
- bucket = config['bucket']
89
+ s3 = AWS::S3.new
90
+ bucket = s3.buckets[config['bucket']]
84
91
  ext = File.extname(self.image_file_name)[1..-1]
85
92
  self.image.styles.each do |style|
86
93
  k = "media/#{self.id}_#{self.name}_#{style}.#{ext}"
@@ -94,9 +101,10 @@ class Caboose::Media < ActiveRecord::Base
94
101
  :access_key_id => config['access_key_id'],
95
102
  :secret_access_key => config['secret_access_key']
96
103
  })
97
- bucket = config['bucket']
98
- ext = File.extname(self.image_file_name)[1..-1]
99
- has_attached_file :file, :path => ':caboose_prefixmedia/:id_:media_name.:extension'
104
+ s3 = AWS::S3.new
105
+ bucket = s3.buckets[config['bucket']]
106
+ ext = File.extname(self.file_file_name)[1..-1]
107
+ # has_attached_file :file, :path => ':caboose_prefixmedia/:id_:media_name.:extension'
100
108
  k = "media/#{self.id}_#{self.name}.#{ext}"
101
109
  bucket.objects[k].copy_from(k, :content_type => content_type) # a copy needs to be done to change the content-type
102
110
  end
@@ -1,3 +1,3 @@
1
1
  module Caboose
2
- VERSION = '0.7.70'
2
+ VERSION = '0.7.71'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caboose-cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.70
4
+ version: 0.7.71
5
5
  platform: ruby
6
6
  authors:
7
7
  - William Barry