Class: Pipl::Image

Inherits:
Field
  • Object
show all
Defined in:
lib/pipl/fields.rb

Instance Attribute Summary collapse

Attributes inherited from Field

#current, #inferred, #last_seen, #valid_since

Instance Method Summary collapse

Methods inherited from Field

base_params_from_hash, extra_metadata, from_hash, #is_searchable?, #to_hash

Methods included from Utils

alnum_chars, alpha_chars, date_to_str, extract_rate_limits, is_valid_url?, str_to_date, titleize, to_utf8

Constructor Details

#initialize(params = {}) ⇒ Image

Returns a new instance of Image.



398
399
400
401
402
# File 'lib/pipl/fields.rb', line 398

def initialize(params={})
  super params
  @url = params[:url]
  @thumbnail_token = params[:thumbnail_token]
end

Instance Attribute Details

#thumbnail_tokenObject

Returns the value of attribute thumbnail_token.



396
397
398
# File 'lib/pipl/fields.rb', line 396

def thumbnail_token
  @thumbnail_token
end

#urlObject

Returns the value of attribute url.



396
397
398
# File 'lib/pipl/fields.rb', line 396

def url
  @url
end

Instance Method Details

#thumbnail_url(params = {}) ⇒ Object



404
405
406
407
408
409
410
411
412
413
# File 'lib/pipl/fields.rb', line 404

def thumbnail_url(params={})
  return unless @thumbnail_token

  opts = {width: 100, height: 100, favicon: true, zoom_face: true, use_https: false}.merge(params)
  schema = opts.delete(:use_https) ? 'https': 'http'
  tokens = @thumbnail_token.gsub(/&dsid=.*/,'')
  tokens += ',' + opts.delete(:fallback).thumbnail_token.gsub(/&dsid=.*/,'') if opts[:fallback]
  query_params = ["tokens=#{tokens}"] + opts.map { |k, v| "#{k}=#{v}" unless v.nil? }
  "#{schema}://thumb.pipl.com/image?#{query_params.compact.join('&')}"
end