Sha256: 582106eba8700202ec66c80b21c84bed0d708bc561e7f511f5019e2c421a313f

Contents?: true

Size: 1.2 KB

Versions: 62

Compression:

Stored size: 1.2 KB

Contents

module ActiveScaffold
  module Bridges
    class Paperclip
      module PaperclipBridge
        def initialize_with_paperclip(model_id)
          initialize_without_paperclip(model_id)
          return unless self.model.respond_to?(:attachment_definitions) && !self.model.attachment_definitions.nil? 

          self.update.multipart = true
          self.create.multipart = true

          self.model.attachment_definitions.keys.each do |field|
            configure_paperclip_field(field.to_sym)
            # define the "delete" helper for use with active scaffold, unless it's already defined
            ActiveScaffold::Bridges::Paperclip::PaperclipBridgeHelpers.generate_delete_helper(self.model, field)
          end
        end

        def self.included(base)
          base.alias_method_chain :initialize, :paperclip
        end

        private
        def configure_paperclip_field(field)
          self.columns << field
          self.columns[field].form_ui ||= :paperclip
          self.columns[field].params.add "delete_#{field}"

          [:file_name, :content_type, :file_size, :updated_at].each do |f|
            self.columns.exclude("#{field}_#{f}".to_sym)
          end
        end
      end
    end
  end
end

Version data entries

62 entries across 62 versions & 2 rubygems

Version Path
active_scaffold-3.4.17 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.16 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.14 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.13 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.12 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.11 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.10 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.9 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.8 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.7 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.5 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.4 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.3 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.2 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.1 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.0.1 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.4.0 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.3.3 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.3.2 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb
active_scaffold-3.3.1 lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb