Sha256: 12cc1235d4285085f515da9cefeefbefef781ab9ef3040c10f2edced3b295dc5

Contents?: true

Size: 1.3 KB

Versions: 22

Compression:

Stored size: 1.3 KB

Contents

module MagLoft
  class TypeloftTheme < RemoteResource
    endpoint "api/maglove/v1/typeloft_themes"
    remote_attribute :identifier, :name, :description, :base_version, :widgets, :fonts, :user_id, :screenshots, :active
    attr_accessor :stylesheet_policy, :javascript_policy

    def typeloft_templates
      RemoteCollection.new(TypeloftTemplate, { typeloft_theme_id: self.id })
    end

    def typeloft_images
      RemoteCollection.new(TypeloftImage, { typeloft_theme_id: self.id })
    end

    def typeloft_blocks
      RemoteCollection.new(TypeloftBlock, { typeloft_theme_id: self.id })
    end

    def upload_javascript(file_path)
      return false if javascript_policy.nil?
      conn = Faraday.new(url: javascript_policy["url"]) do |f|
        f.ssl.verify = false
        f.headers = javascript_policy["headers"]
        f.adapter :net_http
      end
      response = conn.put(nil, File.read(file_path))
      return (response.status == 200)
    end

    def upload_stylesheet(file_path)
      return false if stylesheet_policy.nil?
      conn = Faraday.new(url: stylesheet_policy["url"]) do |f|
        f.ssl.verify = false
        f.headers = stylesheet_policy["headers"]
        f.adapter :net_http
      end
      response = conn.put(nil, File.read(file_path))
      return (response.status == 200)
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

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