class Pexels::Client::Photos
Public Class Methods
new(client)
click to toggle source
# File lib/pexels/client/photos.rb, line 6 def initialize(client) @client = client end
Public Instance Methods
[](id)
click to toggle source
# File lib/pexels/client/photos.rb, line 10 def [](id) response = @client.request("#{Pexels.api_version}/photos/#{id}") Pexels::Photo.new(response.body) end
Also aliased as: find
curated(per_page: 15, page: 1)
click to toggle source
# File lib/pexels/client/photos.rb, line 35 def curated(per_page: 15, page: 1) response = @client.request( "#{Pexels.api_version}/curated", params: { per_page: per_page, page: page } ) Pexels::PhotoSet.new(response) end
search(query, per_page: 15, page: 1, locale: 'en-US', orientation: nil, size: nil, color: nil)
click to toggle source
# File lib/pexels/client/photos.rb, line 16 def search(query, per_page: 15, page: 1, locale: 'en-US', orientation: nil, size: nil, color: nil) validate_search_params(orientation, size, color) response = @client.request( "#{Pexels.api_version}/search", params: { query: query, per_page: per_page, page: page, locale: locale, orientation: orientation, size: size, color: color }.compact ) Pexels::PhotoSet.new(response) end
Private Instance Methods
validate_search_params(orientation, size, color)
click to toggle source
# File lib/pexels/client/photos.rb, line 49 def validate_search_params(orientation, size, color) validate_orientation(orientation) && validate_size(size) && validate_color(color) end