Sha256: 6c32c10e78168e522853c6451c237a900213eea6739e5c969e9f9539314933d1

Contents?: true

Size: 1.29 KB

Versions: 38

Compression:

Stored size: 1.29 KB

Contents

module Ckeditor
  module Backend
    module Dragonfly
      def self.included(base)
        base.send(:include, InstanceMethods)
        base.send(:extend, ClassMethods)
      end
      
      module ClassMethods
        def attachment_file_types
          @attachment_file_types ||= Ckeditor.attachment_file_types.map(&:to_sym).tap do |formats|
            # This is not ideal but Dragonfly doesn't return double
            # extensions. Having said that, the other backends
            # currently don't use attachment_file_types at all.
            [ :bz2, :gz, :lzma, :xz ].each do |f|
              formats << f if formats.include?("tar.#{f}".to_sym)
            end
          end
        end

        def image_file_types
          @image_file_types ||= Ckeditor.image_file_types.map(&:to_sym)
        end
      end
      
      module InstanceMethods
        delegate :url, :path, :size, :image?, :width, :height, :to => :data

        alias_attribute :data_file_name, :data_name
        alias_attribute :data_content_type, :data_mime_type
        alias_attribute :data_file_size, :data_size

        private

        def url_thumb_options
          if data.basename.present?
            { :basename => "thumb_#{data.basename}" }
          else
            {}
          end
        end
      end
    end
  end
end

Version data entries

38 entries across 38 versions & 4 rubygems

Version Path
ckeditor-4.0.9 lib/ckeditor/backend/dragonfly.rb
ckeditor-4.0.8 lib/ckeditor/backend/dragonfly.rb
base2_ckeditor-4.0.7 lib/ckeditor/backend/dragonfly.rb
ckeditor-4.0.7 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1.5 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1.4 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1.3 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1.2 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1.1 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.2.1 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.7 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.6 lib/ckeditor/backend/dragonfly.rb
ckeditor-4.0.6 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.5 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.4 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.3 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.2 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1.1 lib/ckeditor/backend/dragonfly.rb
glebtv-ckeditor-4.1.1 lib/ckeditor/backend/dragonfly.rb
ckeditor-4.0.4 lib/ckeditor/backend/dragonfly.rb