Sha256: f3acc77f1a59201818f186f42d74d680b1b5cfcc22746b67d00c192a6d29734c

Contents?: true

Size: 742 Bytes

Versions: 8

Compression:

Stored size: 742 Bytes

Contents

# frozen_string_literal: true

module BrowseEverythingHelper
  # Extracted from Rack::Mime 1.5.2 for use with earlier versions of Rack/Rails
  # @param [String] value
  # @param [String] matcher
  # @return [TrueClass,FalseClass]
  def mime_match?(value, matcher)
    v1, v2 = value.split('/', 2)
    m1, m2 = matcher.split('/', 2)
    return false if m1 != '*' && v1 != m1
    m2.nil? || m2 == '*' || m2 == v2
  end

  # @param [BrowseEverything::FileEntry] file
  # @return [TrueClass,FalseClass]
  def is_acceptable?(file)
    acceptable = params[:accept] || '*/*'
    acceptable_types = acceptable.split(/,\s*/)
    acceptable_types << 'application/x-directory'
    acceptable_types.any? { |type| mime_match?(file.type, type) }
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
browse-everything-1.1.0 app/helpers/browse_everything_helper.rb
browse-everything-1.0.2 app/helpers/browse_everything_helper.rb
browse-everything-1.0.1 app/helpers/browse_everything_helper.rb
browse-everything-1.0.0 app/helpers/browse_everything_helper.rb
browse-everything-1.0.0.rc2 app/helpers/browse_everything_helper.rb
browse-everything-1.0.0.rc1 app/helpers/browse_everything_helper.rb
browse-everything-0.16.1 app/helpers/browse_everything_helper.rb
browse-everything-0.16.0 app/helpers/browse_everything_helper.rb