Module: Goodreads::Reviews
- Included in:
- Client
- Defined in:
- lib/goodreads/client/reviews.rb
Instance Method Summary collapse
-
#recent_reviews(params = {}) ⇒ Object
Recent reviews from all members.
-
#review(id) ⇒ Object
Get review details.
-
#reviews(params = {}) ⇒ Object
Get list of reviews.
Instance Method Details
#recent_reviews(params = {}) ⇒ Object
Recent reviews from all members.
params - Select only non-cropped reviews
7 8 9 10 11 12 13 14 |
# File 'lib/goodreads/client/reviews.rb', line 7 def recent_reviews(params = {}) skip_cropped = params.delete(:skip_cropped) || false data = request("/review/recent_reviews", params) return unless data["reviews"] && data["reviews"].key?("review") reviews = data["reviews"]["review"].map { |r| Hashie::Mash.new(r) } reviews = reviews.select { |r| !r.body.include?(r.url) } if skip_cropped reviews end |
#review(id) ⇒ Object
Get review details
18 19 20 21 |
# File 'lib/goodreads/client/reviews.rb', line 18 def review(id) data = request("/review/show", id: id) Hashie::Mash.new(data["review"]) end |
#reviews(params = {}) ⇒ Object
Get list of reviews
25 26 27 28 29 30 31 32 33 |
# File 'lib/goodreads/client/reviews.rb', line 25 def reviews(params = {}) data = request("/review/list", params.merge(v: "2")) reviews = data["reviews"]["review"] if reviews.present? reviews.map { |review| Hashie::Mash.new(review) } else [] end end |