mercadolibre 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b60ec4c7008916fec74f5ad3075b5b498d7ac5a8
4
- data.tar.gz: e353fdc23d5390b9b075b1a5fc9a0ed27182e359
3
+ metadata.gz: 641a6a1e64523c64444d1ca5780f2b58360dbcb0
4
+ data.tar.gz: 8f22a4eb77cdae2da5d4dee9fad31340057e6f6d
5
5
  SHA512:
6
- metadata.gz: 64223dc129fa6fd0e56099a8a2320c8e28182b49827a9a96eab9d55b33c8aea12c87606fc479434566db351b2e2e6a96ce306e735ef2c5a3a4bd578301c14ba7
7
- data.tar.gz: e52819ae03da6b4460a72220136d62168e73f076da5ccddd67d22cd43b598b871d07fc0d7e00a2518a3990395c8e0fb60cf0530ab76b2499369a20fbfdf58917
6
+ metadata.gz: 878ae487728958dfc3b11259dee604d1955149f1b71f5d889eda8bfc70f05676a8c99e0e3984578643dee289983e1363900bde1c882e209d1bd40245ac8150ae
7
+ data.tar.gz: bf1b9c3c8b96bde808804342673f34a61b2c10f49c79f6ecb26033f57e6c855e09e17af4036277f0f9e46667fc329912eb39c1d16ba0caa575b1b36aded14272
data/CHANGELOG.md CHANGED
@@ -21,3 +21,7 @@
21
21
  ## v0.0.6
22
22
 
23
23
  * Added listing kind methods
24
+
25
+ ## v0.0.7
26
+
27
+ * Added featured listings search
@@ -96,6 +96,24 @@ module Mercadolibre
96
96
  result[:body]['url']
97
97
  end
98
98
 
99
+ def get_hot_items(site_id, category_id, limit=15)
100
+ results = get_request("/sites/#{site_id}/hot_items/search?category=#{category_id}&limit=#{limit}")
101
+
102
+ results[:body].map { |r| Mercadolibre::Entity::Item.new(r) }
103
+ end
104
+
105
+ def get_featured_items(site_id, pool_id)
106
+ results = get_request("/sites/#{site_id}/featured_items/#{pool_id}")
107
+
108
+ results[:body].map { |r| Mercadolibre::Entity::FeaturedItem.new(r) }
109
+ end
110
+
111
+ def get_site_trends(site_id, category_id)
112
+ results = get_request("/sites/#{site_id}/trends/search", { category: category_id })
113
+
114
+ results[:body].map { |r| Mercadolibre::Entity::SiteTrend.new(r) }
115
+ end
116
+
99
117
  def create_item(attribs)
100
118
  payload = attribs.to_json
101
119
 
@@ -0,0 +1,28 @@
1
+ module Mercadolibre
2
+ module Entity
3
+ class FeaturedItem
4
+ def self.attr_list
5
+ [:item_id, :title, :price, :currency_id, :permalink, :picture,
6
+ :accepts_mercado_pago, :category_id, :pool_id, :seller_id]
7
+ end
8
+
9
+ attr_reader *attr_list
10
+
11
+ def initialize(attributes={})
12
+ attributes.each do |k, v|
13
+ if k.to_s == 'picture'
14
+ self.picture = ItemPicture.new(v)
15
+ else
16
+ self.send("#{k}=", v) if self.respond_to?(k)
17
+ end
18
+ end
19
+
20
+ self.last_updated = date_created if last_updated.nil?
21
+ end
22
+
23
+ private
24
+
25
+ attr_writer *attr_list
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,21 @@
1
+ module Mercadolibre
2
+ module Entity
3
+ class SiteTrend
4
+ def self.attr_list
5
+ [:keyword, :url]
6
+ end
7
+
8
+ attr_reader *attr_list
9
+
10
+ def initialize(attributes={})
11
+ attributes.each do |k, v|
12
+ self.send("#{k}=", v) if self.respond_to?(k)
13
+ end
14
+ end
15
+
16
+ private
17
+
18
+ attr_writer *attr_list
19
+ end
20
+ end
21
+ end
@@ -1,3 +1,3 @@
1
1
  module Mercadolibre
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
data/lib/mercadolibre.rb CHANGED
@@ -9,6 +9,7 @@ require "mercadolibre/entity/city"
9
9
  require "mercadolibre/entity/country"
10
10
  require "mercadolibre/entity/currency"
11
11
  require "mercadolibre/entity/currency_conversion_ratio"
12
+ require "mercadolibre/entity/featured_item"
12
13
  require "mercadolibre/entity/feedback"
13
14
  require "mercadolibre/entity/item"
14
15
  require "mercadolibre/entity/item_description"
@@ -24,6 +25,7 @@ require "mercadolibre/entity/phone"
24
25
  require "mercadolibre/entity/question"
25
26
  require "mercadolibre/entity/site"
26
27
  require "mercadolibre/entity/site_domain"
28
+ require "mercadolibre/entity/site_trend"
27
29
  require "mercadolibre/entity/state"
28
30
  require "mercadolibre/entity/user"
29
31
  require "mercadolibre/entity/zip_code"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mercadolibre
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matias Hick
@@ -79,6 +79,7 @@ files:
79
79
  - lib/mercadolibre/entity/country.rb
80
80
  - lib/mercadolibre/entity/currency.rb
81
81
  - lib/mercadolibre/entity/currency_conversion_ratio.rb
82
+ - lib/mercadolibre/entity/featured_item.rb
82
83
  - lib/mercadolibre/entity/feedback.rb
83
84
  - lib/mercadolibre/entity/item.rb
84
85
  - lib/mercadolibre/entity/item_description.rb
@@ -94,6 +95,7 @@ files:
94
95
  - lib/mercadolibre/entity/question.rb
95
96
  - lib/mercadolibre/entity/site.rb
96
97
  - lib/mercadolibre/entity/site_domain.rb
98
+ - lib/mercadolibre/entity/site_trend.rb
97
99
  - lib/mercadolibre/entity/state.rb
98
100
  - lib/mercadolibre/entity/user.rb
99
101
  - lib/mercadolibre/entity/zip_code.rb