summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2008-04-02 21:30:32 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2008-04-02 21:30:32 +0000
commit6348eeaf8a5124dfd7793211d673bb928f1ea64b (patch)
tree09cd1cec3cf162ef793d2be2d5ee7eeac2eece2c /app
parent4cbe6b626e3b338d7c8d7dcb236d40f8f99ff393 (diff)
downloadredmine-6348eeaf8a5124dfd7793211d673bb928f1ea64b.tar.gz
redmine-6348eeaf8a5124dfd7793211d673bb928f1ea64b.zip
Attachment model clean up: fixed some inconsistent indentation and an inaccurate comment (closes patch #903 by Rocco Stanzione).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1321 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r--app/models/attachment.rb97
1 files changed, 48 insertions, 49 deletions
diff --git a/app/models/attachment.rb b/app/models/attachment.rb
index cdcb8d231..08f440816 100644
--- a/app/models/attachment.rb
+++ b/app/models/attachment.rb
@@ -35,48 +35,48 @@ class Attachment < ActiveRecord::Base
errors.add_to_base :too_long if self.filesize > Setting.attachment_max_size.to_i.kilobytes
end
- def file=(incomming_file)
- unless incomming_file.nil?
- @temp_file = incomming_file
- if @temp_file.size > 0
- self.filename = sanitize_filename(@temp_file.original_filename)
- self.disk_filename = DateTime.now.strftime("%y%m%d%H%M%S") + "_" + self.filename
- self.content_type = @temp_file.content_type.to_s.chomp
- self.filesize = @temp_file.size
- end
- end
- end
-
- def file
- nil
- end
-
- # Copy temp file to its final location
- def before_save
- if @temp_file && (@temp_file.size > 0)
- logger.debug("saving '#{self.diskfile}'")
- File.open(diskfile, "wb") do |f|
- f.write(@temp_file.read)
- end
- self.digest = Digest::MD5.hexdigest(File.read(diskfile))
- end
- # Don't save the content type if it's longer than the authorized length
- if self.content_type && self.content_type.length > 255
- self.content_type = nil
- end
- end
-
- # Deletes file on the disk
- def after_destroy
- if self.filename?
- File.delete(diskfile) if File.exist?(diskfile)
- end
- end
+ def file=(incoming_file)
+ unless incoming_file.nil?
+ @temp_file = incoming_file
+ if @temp_file.size > 0
+ self.filename = sanitize_filename(@temp_file.original_filename)
+ self.disk_filename = DateTime.now.strftime("%y%m%d%H%M%S") + "_" + self.filename
+ self.content_type = @temp_file.content_type.to_s.chomp
+ self.filesize = @temp_file.size
+ end
+ end
+ end
- # Returns file's location on disk
- def diskfile
- "#{@@storage_path}/#{self.disk_filename}"
- end
+ def file
+ nil
+ end
+
+ # Copy temp file to its final location
+ def before_save
+ if @temp_file && (@temp_file.size > 0)
+ logger.debug("saving '#{self.diskfile}'")
+ File.open(diskfile, "wb") do |f|
+ f.write(@temp_file.read)
+ end
+ self.digest = Digest::MD5.hexdigest(File.read(diskfile))
+ end
+ # Don't save the content type if it's longer than the authorized length
+ if self.content_type && self.content_type.length > 255
+ self.content_type = nil
+ end
+ end
+
+ # Deletes file on the disk
+ def after_destroy
+ if self.filename?
+ File.delete(diskfile) if File.exist?(diskfile)
+ end
+ end
+
+ # Returns file's location on disk
+ def diskfile
+ "#{@@storage_path}/#{self.disk_filename}"
+ end
def increment_download
increment!(:downloads)
@@ -87,18 +87,17 @@ class Attachment < ActiveRecord::Base
end
def image?
- self.filename =~ /\.(jpeg|jpg|gif|png)$/i
+ self.filename =~ /\.(jpe?g|gif|png)$/i
end
private
def sanitize_filename(value)
- # get only the filename, not the whole path
- just_filename = value.gsub(/^.*(\\|\/)/, '')
- # NOTE: File.basename doesn't work right with Windows paths on Unix
- # INCORRECT: just_filename = File.basename(value.gsub('\\\\', '/'))
+ # get only the filename, not the whole path
+ just_filename = value.gsub(/^.*(\\|\/)/, '')
+ # NOTE: File.basename doesn't work right with Windows paths on Unix
+ # INCORRECT: just_filename = File.basename(value.gsub('\\\\', '/'))
- # Finally, replace all non alphanumeric, underscore or periods with underscore
- @filename = just_filename.gsub(/[^\w\.\-]/,'_')
+ # Finally, replace all non alphanumeric, hyphens or periods with underscore
+ @filename = just_filename.gsub(/[^\w\.\-]/,'_')
end
-
end