Sha256: a67367b760cc16db6b6b47416e2248077a127a89e1520176c618641cd877f423

Contents?: true

Size: 961 Bytes

Versions: 3

Compression:

Stored size: 961 Bytes

Contents

module MagLoft
  class TypeloftTemplate < RemoteResource
    endpoint "api/maglove/v1/typeloft_templates"
    remote_attribute :identifier, :title, :contents, :public, :position, :typeloft_theme_id, :user_id, :created_at, :updated_at
    attr_accessor :thumbnail_policy

    def upload_thumbnail(file_path)
      return false if thumbnail_policy.nil?
      conn = Faraday.new(url: thumbnail_policy["url"]) do |f|
        f.ssl.verify = false
        f.headers = thumbnail_policy["headers"]
        f.adapter :net_http
      end
      response = conn.put(nil, File.read(file_path))
      return (response.status == 200)
    end
    
    def queue_upload_thumbnail(file_path, &block)
      return false if thumbnail_policy.nil?
      request = Typhoeus::Request.new(thumbnail_policy["url"], method: :put, headers: thumbnail_policy["headers"], body: File.read(file_path), timeout: 200000)
      request.on_complete(&block) if block
      request
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
maglove-1.0.7 lib/magloft/typeloft_template.rb
maglove-1.0.5 lib/magloft/typeloft_template.rb
maglove-1.0.4 lib/magloft/typeloft_template.rb