The problem is that you double-defined the version :medium . It strikes:
..., :if => is_landscape?
which for non-landscape images returns false. As a result, nothing is done. The second version :medium declaration that you have there never starts because you cannot declare two versions with the same name, so it just skipped completely.
What you need to do is create only one version with the name :medium and conditionally handle the clockwise rotation. Sort of:
class FloorPlanPhotoUploader < CarrierWave::Uploader::Base ... version :medium do process :rotate_cw, :if => :is_landscape? process :resize_and_pad => [ 260, 360, :white, 'Center'] end ... end
Thus, you can link several processing steps in one version. Here is a great tutorial that touches on this topic in more detail.
source share