Sha256: 5914cce753b3d9ee76a07bdd3f4e2fc67de58e0c858d8db0c2234c78b69fdaf3

Contents?: true

Size: 816 Bytes

Versions: 15

Compression:

Stored size: 816 Bytes

Contents

module RailsAdminJcrop
  module Orm
    module Extension

      CropFields = [:crop_x, :crop_y, :crop_w, :crop_h, :crop_field]

      def self.included(base)
        base.send :attr_accessor, *CropFields
      end

      def rails_admin_cropping?
        CropFields.all? {|f| send(f).present?}
      end

      def rails_admin_crop!(params)
        CropFields.each {|f| self.send "#{f}=", params[f] }
        ::RailsAdminJcrop::AssetEngine.crop!(self, self.crop_field) if self.rails_admin_cropping?
      end

    end
  end
end

if defined?(::ActiveRecord)
  ::ActiveRecord::Base.send(:include, ::RailsAdminJcrop::Orm::Extension)
end

if defined?(::Mongoid)
  module Mongoid
    module Document
      def self.included(base)
        base.send(:include, ::RailsAdminJcrop::Orm::Extension)
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
ack_rails_admin_jcrop-0.0.10 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.9 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.7 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.6 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.5 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.4 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.3 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.2 lib/rails_admin_jcrop/orm.rb
ack_rails_admin_jcrop-0.0.1 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-1.4.0 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-1.3.0 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-1.2.1 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-1.2.0 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-1.1.2 lib/rails_admin_jcrop/orm.rb
rails_admin_jcrop-0.2.1 lib/rails_admin_jcrop/orm.rb