module AttacheClient::ViewHelper
Constants
- ATTACHE_DOWNLOAD_URL
- ATTACHE_UPLOAD_DURATION
- ATTACHE_UPLOAD_URL
Public Instance Methods
attache_options(geometry, current_value)
click to toggle source
# File lib/attache_client.rb, line 20 def attache_options(geometry, current_value) auth = if ENV['ATTACHE_SECRET_KEY'] uuid = SecureRandom.uuid expiration = (Time.now + ATTACHE_UPLOAD_DURATION).to_i hmac = OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new('sha1'), ENV['ATTACHE_SECRET_KEY'], "#{uuid}#{expiration}") { uuid: uuid, expiration: expiration, hmac: hmac } else {} end { class: 'enable-attache', data: { geometry: geometry, value: [*current_value], uploadurl: ATTACHE_UPLOAD_URL, downloadurl: ATTACHE_DOWNLOAD_URL, }.merge(auth), } end
attache_urls(json, geometry) { |url| ... }
click to toggle source
# File lib/attache_client.rb, line 9 def attache_urls(json, geometry) array = json.kind_of?(Array) ? json : [*json] array.collect do |path| download_url = ATTACHE_DOWNLOAD_URL prefix, basename = File.split(path) [download_url, prefix, CGI.escape(geometry), basename].join('/').tap do |url| yield url if block_given? end end end