lib/paperclip/attachment.rb in joshpuetz-paperclip-2.3.0.1 vs lib/paperclip/attachment.rb in joshpuetz-paperclip-2.3.0.2
- old
+ new
@@ -12,11 +12,12 @@
:styles => {},
:default_url => "/:attachment/:style/missing.png",
:default_style => :original,
:validations => [],
:storage => :filesystem,
- :whiny => Paperclip.options[:whiny] || Paperclip.options[:whiny_thumbnails]
+ :whiny => Paperclip.options[:whiny] || Paperclip.options[:whiny_thumbnails],
+ :keep_old_files=> false
}
end
attr_reader :name, :instance, :styles, :default_style, :convert_options, :queued_for_write, :options
@@ -38,10 +39,11 @@
@default_url = options[:default_url]
@validations = options[:validations]
@default_style = options[:default_style]
@storage = options[:storage]
@whiny = options[:whiny_thumbnails] || options[:whiny]
+ @keep_old_files = options[:keep_old_files]
@convert_options = options[:convert_options] || {}
@processors = options[:processors] || [:thumbnail]
@options = options
@queued_for_delete = []
@queued_for_write = {}
@@ -392,12 +394,14 @@
Paperclip::Interpolations.interpolate(pattern, self, style)
end
def queue_existing_for_delete #:nodoc:
return unless file?
- @queued_for_delete += [:original, *@styles.keys].uniq.map do |style|
- path(style) if exists?(style)
- end.compact
+ unless @keep_old_files
+ @queued_for_delete += [:original, *@styles.keys].uniq.map do |style|
+ path(style) if exists?(style)
+ end.compact
+ end
instance_write(:file_name, nil)
instance_write(:content_type, nil)
instance_write(:file_size, nil)
instance_write(:updated_at, nil)
end