lib/paperclip-dimension.rb in paperclip-dimension-0.2.1 vs lib/paperclip-dimension.rb in paperclip-dimension-0.3.0
- old
+ new
@@ -30,22 +30,14 @@
send "after_#{name}_post_process", lambda { save_dimensions_for(name) }
end
end
def save_dimensions_for(name)
- if self.class.respond_to?(:attachment_definitions)
- # for Paperclip version <= 3.4.2 and >= 3.5.1
- opts = self.class.attachment_definitions[name]
- else
- # for Paperclip version 3.5.0
- opts = ::Paperclip::Tasks::Attachments.definitions_for(self.class)[name]
- end
-
- styles = [:original]
- styles += opts[:styles].keys if opts[:styles]
dimension_hash = {}
+ attachment = self.send(name)
+ styles = [:original]
+ styles += attachment.styles.keys if attachment.styles
styles.each do |style|
- attachment = self.send name
geo = ::Paperclip::Geometry.from_file(attachment.queued_for_write[style])
dimension_hash[style.to_s] = [ geo.width.to_i, geo.height.to_i ]
end
self.send "#{name}_dimensions=", dimension_hash
end