Sha256: d4e7c43f2a00259a73901f549cce60c07c74c5857deae8abc9d78f9dca8fd441

Contents?: true

Size: 964 Bytes

Versions: 1

Compression:

Stored size: 964 Bytes

Contents

require 'digest'
require 'mime/types'

module Reustyle

  def self.production?
    ENV['RACK_ENV'] == 'production' || ENV['RAILS_ENV'] == 'production' || ENV['NODE_ENV'] == 'production' || false
  end

  def self.cloudfront_url path, type, versioned = true, digest = true
    File.join "https://assets0.uswitch.com/s3/uswitch-assets-eu/ustyle/",
              (versioned ? Reustyle::VERSION : ""),
              folder_by_type(type),
              (digest ? asset_digest(path) : path)
  end

  def self.asset_digest path
    path.sub(/\.(\w+)$/) { |ext| "-#{digest}#{ext}" }
  end

  def self.mime_type_for asset
    MIME::Types.type_for( asset ).first.content_type
  end

  def self.versioned_path file
    File.join "ustyle", Reustyle::VERSION, file
  end

  def self.digest
    Digest::SHA1.hexdigest Reustyle::VERSION
  end

  def self.folder_by_type type
    case type
    when :image
      "images"
    when :font
      "fonts"
    else ""
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
reustyle-2.0.10 lib/ustyle/utils.rb