Sha256: 31c68c8657f737a0ba93afdb97544299cef95da1d562a714d472a6ad056d8d36

Contents?: true

Size: 835 Bytes

Versions: 2

Compression:

Stored size: 835 Bytes

Contents

# frozen_string_literal: true

module Onebox
  module Engine
    class TrelloOnebox
      include Engine
      include StandardEmbed

      matches_regexp(/^https:\/\/trello\.com\/[bc]\/\W*/)
      requires_iframe_origins "https://trello.com"
      always_https

      def to_html
        link = "https://trello.com/#{match[:type]}/#{match[:key]}.html"

        height = match[:type] == 'b' ? 400 : 200

        <<-HTML
          <iframe src="#{link}" width="100%" height="#{height}" frameborder="0" style="border:0"></iframe>
        HTML
      end

      def placeholder_html
        ::Onebox::Helpers.generic_placeholder_html
      end

      private
      def match
        return @match if defined?(@match)

        @match = @url.match(%{trello\.com/(?<type>[^/]+)/(?<key>[^/]+)/?\W*})

        @match
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
onebox-2.2.14 lib/onebox/engine/trello_onebox.rb
onebox-2.2.13 lib/onebox/engine/trello_onebox.rb