gluttonberg-core 2.5.6 → 2.5.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -7,12 +7,12 @@ module Gluttonberg
7
7
 
8
8
  def self.process(asset_obj)
9
9
  if asset_obj.asset_type.asset_category.name == "audio"
10
- collect_mp3_info(asset)
10
+ self.collect_mp3_info(asset_obj)
11
11
  end
12
12
  end
13
13
 
14
14
  # Collect mp3 files info using Mp3Info gem
15
- def collect_mp3_info(asset)
15
+ def self.collect_mp3_info(asset)
16
16
  audio = AudioAssetAttribute.find( :first , :conditions => {:asset_id => asset.id})
17
17
 
18
18
  begin
@@ -36,8 +36,8 @@ module Gluttonberg
36
36
  s3_server_url = S3::ClassMethods.s3_server_url
37
37
  s3_bucket = S3::ClassMethods.s3_bucket_name
38
38
  if !key_id.blank? && !key_val.blank? && !s3_server_url.blank? && !s3_bucket.blank?
39
- s3 = Aws::S3.new(key_id, key_val, {:server => s3_server_url})
40
- bucket = s3.bucket(s3_bucket)
39
+ s3 = AWS::S3.new({ :access_key_id => key_id, :secret_access_key => key_val , :server => s3_server_url})
40
+ bucket = s3.buckets[s3_bucket]
41
41
  else
42
42
  nil
43
43
  end
@@ -50,16 +50,17 @@ module Gluttonberg
50
50
  local_file = "public/user_assets/" + asset_hash + "/" + file_name
51
51
  key_for_s3 = "user_assets/" + asset_hash + "/" + file_name
52
52
  date = Time.now+1.years
53
- key = bucket.key(key_for_s3, true)
53
+ key = bucket.objects[key_for_s3]
54
54
  asset = Gluttonberg::Asset.where(:asset_hash => asset_hash).first
55
55
  unless asset.blank?
56
56
  puts " Copying #{local_file} to #{S3::ClassMethods.s3_bucket_name}"
57
+
57
58
  unless asset.mime_type.blank?
58
- key.put(File.open(local_file), 'public-read', {"Expires" => date.rfc2822, "content-type" => asset.mime_type})
59
+ key.write(File.open(local_file), {:expires => date.rfc2822, :content_type => asset.mime_type , :acl => :public_read })
59
60
  else
60
- key.put(File.open(local_file), 'public-read', {"Expires" => date.rfc2822})
61
+ key.write(File.open(local_file) , {:expires => date.rfc2822 , :acl => :public_read })
61
62
  end
62
- Gluttonberg::Asset.update_attributes(:copied_to_s3 => true)
63
+ asset.update_attributes(:copied_to_s3 => true)
63
64
  puts "Copied"
64
65
  end
65
66
  end
@@ -112,7 +113,7 @@ module Gluttonberg
112
113
 
113
114
  def remove_file_from_tmp_storage
114
115
  if File.exists?(tmp_directory)
115
- puts "Remove assset folder from tmp storage (tmp_directory)"
116
+ puts "Remove assset folder from tmp storage (#{tmp_directory})"
116
117
  FileUtils.rm_r(tmp_directory)
117
118
  end
118
119
  end
@@ -146,11 +147,11 @@ module Gluttonberg
146
147
  folder = self.asset_hash
147
148
  date = Time.now+1.years
148
149
  puts "Copying #{file_name} (#{local_file}) to #{S3::ClassMethods.s3_bucket_name}"
149
- key = bucket.key(self.directory + "/" + file_name, true)
150
+ key = bucket.objects[self.directory + "/" + file_name]
150
151
  unless self.mime_type.blank?
151
- key.put(File.open(local_file), 'public-read', {"Expires" => date.rfc2822, "content-type" => self.mime_type})
152
+ key.write(File.open(local_file), {:expires => date.rfc2822, :content_type => self.mime_type , :acl => :public_read })
152
153
  else
153
- key.put(File.open(local_file), 'public-read', {"Expires" => date.rfc2822})
154
+ key.write(File.open(local_file) , {:expires => date.rfc2822 , :acl => :public_read })
154
155
  end
155
156
  self.update_column(:copied_to_s3 , true)
156
157
  puts "Copied"
@@ -166,7 +167,7 @@ module Gluttonberg
166
167
  def remove_asset_folder_from_s3
167
168
  bucket = bucket_handle
168
169
  unless bucket.blank?
169
- bucket.delete_folder(self.directory)
170
+ bucket.objects.with_prefix(self.directory).delete_all
170
171
  end
171
172
  end
172
173
 
@@ -177,14 +178,18 @@ module Gluttonberg
177
178
  def download_orginal_file_from_s3
178
179
  FileUtils.mkdir(self.tmp_directory) unless File.exists?(self.tmp_directory)
179
180
  bucket = bucket_handle
180
- key = bucket.key(self.location_on_disk)
181
- File.open(self.tmp_location_on_disk, "w") do |f|
182
- f.write(key.get)
181
+ key = bucket.objects[self.location_on_disk]
182
+ File.open(self.tmp_location_on_disk, "w", encoding: "ASCII-8BIT") do |f|
183
+ key.read do |chunk|
184
+ f.write(chunk)
185
+ end
183
186
  end
184
- key = bucket.key(self.original_file_on_disk)
187
+ key = bucket.objects[self.original_file_on_disk]
185
188
  if key.exists?
186
- File.open(self.tmp_original_file_on_disk, "w") do |f|
187
- f.write(key.get)
189
+ File.open(self.tmp_original_file_on_disk, "w", encoding: "ASCII-8BIT") do |f|
190
+ key.read do |chunk|
191
+ f.write(chunk)
192
+ end
188
193
  end
189
194
  end
190
195
  end
@@ -1,3 +1,3 @@
1
1
  module Gluttonberg
2
- VERSION = "2.5.6"
2
+ VERSION = "2.5.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gluttonberg-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.6
4
+ version: 2.5.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2013-02-13 00:00:00.000000000 Z
15
+ date: 2013-02-14 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: authlogic
@@ -286,6 +286,22 @@ dependencies:
286
286
  - - ! '>='
287
287
  - !ruby/object:Gem::Version
288
288
  version: '0'
289
+ - !ruby/object:Gem::Dependency
290
+ name: aws-sdk
291
+ requirement: !ruby/object:Gem::Requirement
292
+ none: false
293
+ requirements:
294
+ - - '='
295
+ - !ruby/object:Gem::Version
296
+ version: 1.8.1.3
297
+ type: :runtime
298
+ prerelease: false
299
+ version_requirements: !ruby/object:Gem::Requirement
300
+ none: false
301
+ requirements:
302
+ - - '='
303
+ - !ruby/object:Gem::Version
304
+ version: 1.8.1.3
289
305
  description: ! 'The Gluttonberg goal has always been to create a Content Management
290
306
  System that''s great for users, content manager and developers. The focus of Gluttonberg
291
307
  2.5 has been two-fold: a refined management user interface to make maintaining your