Sha256: c9b67f17c86a838ba4eb0e6dd3ff96fabde4774345699df54d721379f73a3a65

Contents?: true

Size: 997 Bytes

Versions: 70

Compression:

Stored size: 997 Bytes

Contents

# frozen_string_literal: true

module Onebox
  module Engine
    class GooglePlayAppOnebox
      include Engine
      include LayoutSupport
      include HTML

      DEFAULTS = {
        MAX_DESCRIPTION_CHARS: 500
      }

      matches_regexp Regexp.new("^https?://play\\.(?:(?:\\w)+\\.)?(google)\\.com(?:/)?/store/apps/")
      always_https

      private

      def data
        price = raw.css("meta[itemprop=price]").first["content"] rescue "Free"
        result = {
          link: link,
          title: raw.css("meta[property='og:title']").first["content"].gsub(" - Apps on Google Play", ""),
          image: ::Onebox::Helpers.normalize_url_for_output(raw.css("meta[property='og:image']").first["content"]),
          description: raw.css("meta[name=description]").first["content"][0..DEFAULTS[:MAX_DESCRIPTION_CHARS]].chop + "...",
          price: price
        }
        if result[:price] == "0"
          result[:price] = "Free"
        end
        result
      end
    end
  end
end

Version data entries

70 entries across 70 versions & 1 rubygems

Version Path
onebox-2.1.0 lib/onebox/engine/google_play_app_onebox.rb
onebox-2.0.2 lib/onebox/engine/google_play_app_onebox.rb
onebox-2.0.1 lib/onebox/engine/google_play_app_onebox.rb
onebox-2.0.0 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.30 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.29 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.28.4 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.28.3 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.28.2 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.28.1 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.28 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.27.2 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.27.1 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.26 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.25 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.24 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.23 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.22 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.21 lib/onebox/engine/google_play_app_onebox.rb
onebox-1.9.20 lib/onebox/engine/google_play_app_onebox.rb