model_attachment 0.0.18 → 0.0.20

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -1,5 +1,7 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
+ gem 'activerecord'
4
+ gem 'sqlite3'
3
5
  gem 'rake'
4
6
  gem 'test-unit'
5
7
 
@@ -1,3 +1,3 @@
1
1
  module ModelAttachment
2
- VERSION = "0.0.18"
3
- end
2
+ VERSION = "0.0.20"
3
+ end
@@ -124,13 +124,13 @@ module ModelAttachment
124
124
  # * +path+: sets the path, defaults to /documents/send
125
125
  # * +type+: sets the type, types come from the has_attachment method, ex. small, large
126
126
  def url(options = {})
127
- proto = options[:proto] || "http"
127
+ proto = options[:proto] || "http://"
128
128
  port = options[:port]
129
129
  server_name = options[:server_name] || "localhost"
130
130
  url_path = options[:path] || "/#{self.class.to_s.downcase.pluralize}/"
131
131
  type = options[:type]
132
132
 
133
- server_name += ":" + port.to_s if port
133
+ server_name += ":" + port.to_s if !port.nil? && port != 80 && port != 443
134
134
  type_string = "?type=#{type}" if type
135
135
 
136
136
  # if we aren't using aws set @bucket to nil
@@ -142,10 +142,10 @@ module ModelAttachment
142
142
  if public?
143
143
  url_path = path.gsub(/^\/public(.*)/, '\1')
144
144
  type_string = "_#{type}" if type
145
- url = "#{proto}://#{server_name}#{url_path}#{basename}#{type_string}#{extension}"
145
+ url = "#{proto}#{server_name}#{url_path}#{basename}#{type_string}#{extension}"
146
146
  elsif bucket.nil?
147
147
  # otherwise use private url with deliver
148
- url = "#{proto}://#{server_name}#{url_path}#{id}#{type_string}"
148
+ url = "#{proto}#{server_name}#{url_path}#{id}#{type_string}"
149
149
  else
150
150
  # if bucket is set, then use aws url
151
151
  url = aws_url(type)
@@ -220,7 +220,8 @@ module ModelAttachment
220
220
  # save the correct attribute info before the save
221
221
  def save_attributes
222
222
  return if file_name.nil? || file_name.class.to_s == "String"
223
- @temp_file = self.file_name
223
+ # this used to be @temp_file = self.file_name but some change must have happened between 3.0.1 and 3.0.5
224
+ @temp_file = (self.file_name.class == "ActionDispatch::Http::UploadFile" ? self.file_name.tempfile : self.file_name)
224
225
 
225
226
  # get original filename info and clean up for storage
226
227
  filename = File.basename(@temp_file)
@@ -254,7 +255,11 @@ module ModelAttachment
254
255
  FileUtils.chmod(0755, full_path)
255
256
 
256
257
  if File.exists?(@temp_file.path)
257
- FileUtils.mv(@temp_file.path, full_path + basename + extension)
258
+ new_file = full_path + basename + extension
259
+ FileUtils.mv(@temp_file.path, new_file)
260
+ if File.exists?(new_file)
261
+ File.open(new_file).chmod(0640)
262
+ end
258
263
  else
259
264
  raise "File Error: #{@temp_file.path} does not exist"
260
265
  end
@@ -283,7 +288,7 @@ module ModelAttachment
283
288
  new_filename = full_filename(name)
284
289
  log("Create #{name} by running #{command} on #{old_filename}")
285
290
  log("Created: #{new_filename}")
286
- `#{command} #{old_filename} #{new_filename}`
291
+ `#{command} #{old_filename} #{new_filename} ; chmod 640 #{new_filename}`
287
292
  rescue Exception => e
288
293
  puts "Process Images Error: #{e.message}"
289
294
  puts "\tBacktrace: #{e.backtrace[0]}"
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: model_attachment
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 18
9
- version: 0.0.18
4
+ prerelease:
5
+ version: 0.0.20
10
6
  platform: ruby
11
7
  authors:
12
8
  - Steve Walker
@@ -14,21 +10,19 @@ autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
12
 
17
- date: 2010-06-29 00:00:00 -04:00
13
+ date: 2011-03-24 00:00:00 -04:00
18
14
  default_executable:
19
15
  dependencies:
20
16
  - !ruby/object:Gem::Dependency
21
17
  name: aws-s3
22
- prerelease: false
23
18
  requirement: &id001 !ruby/object:Gem::Requirement
24
19
  none: false
25
20
  requirements:
26
21
  - - ">="
27
22
  - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
23
  version: "0"
31
24
  type: :runtime
25
+ prerelease: false
32
26
  version_requirements: *id001
33
27
  description: Simple file attachment gem
34
28
  email:
@@ -64,6 +58,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
64
58
  requirements:
65
59
  - - ">="
66
60
  - !ruby/object:Gem::Version
61
+ hash: -2213741255093125105
67
62
  segments:
68
63
  - 0
69
64
  version: "0"
@@ -72,15 +67,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
72
67
  requirements:
73
68
  - - ">="
74
69
  - !ruby/object:Gem::Version
75
- segments:
76
- - 1
77
- - 3
78
- - 6
79
70
  version: 1.3.6
80
71
  requirements: []
81
72
 
82
73
  rubyforge_project: model_attachment
83
- rubygems_version: 1.3.7
74
+ rubygems_version: 1.5.2
84
75
  signing_key:
85
76
  specification_version: 3
86
77
  summary: A simple file attachment gem