Sha256: 828434095d877c325455bc39e7400a50289ea6cf3c1f857c8d24013f48d32315

Contents?: true

Size: 958 Bytes

Versions: 17

Compression:

Stored size: 958 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: 200_000)
      request.on_complete(&block) if block
      request
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
maglove-2.0.11 lib/magloft/typeloft_template.rb
maglove-2.0.10 lib/magloft/typeloft_template.rb
maglove-2.0.9 lib/magloft/typeloft_template.rb
maglove-2.0.8 lib/magloft/typeloft_template.rb
maglove-2.0.7 lib/magloft/typeloft_template.rb
maglove-1.1.5 lib/magloft/typeloft_template.rb
maglove-1.1.4 lib/magloft/typeloft_template.rb
maglove-1.1.3 lib/magloft/typeloft_template.rb
maglove-2.0.4 lib/magloft/typeloft_template.rb
maglove-2.0.2 lib/magloft/typeloft_template.rb
maglove-2.0.1 lib/magloft/typeloft_template.rb
maglove-1.1.2 lib/magloft/typeloft_template.rb
maglove-2.0.0 lib/magloft/typeloft_template.rb
maglove-1.1.1 lib/magloft/typeloft_template.rb
maglove-1.1.0 lib/magloft/typeloft_template.rb
maglove-1.0.9 lib/magloft/typeloft_template.rb
maglove-1.0.8 lib/magloft/typeloft_template.rb