mercadolibre 3.2.0 → 4.0.0

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
- SHA1:
3
- metadata.gz: fb8e949045938ccaffe74f5939e304aad40d4efc
4
- data.tar.gz: ccc1b85bfba5101405b5cd24c42ed784cfede3b0
2
+ SHA256:
3
+ metadata.gz: 8b7172d05776640f44fee6df02f292bbecb3719d095255fb1327b36490e1267c
4
+ data.tar.gz: c196631620293bb4f9bdd2c94714cc53d922e7716562435afeafd4b6ad48e2af
5
5
  SHA512:
6
- metadata.gz: 54002ae2ce9df8e29e5febd68cffbb07180ea004b441923ad28628080337dc1653c709323ef68b3b8d20dc950844bc30b0fb88e8207f131297dfb8d57d42c9b1
7
- data.tar.gz: fa8bbd5fbcea3aebe485c9bd47e0d42ddbe45fa249820ab8cd5f666489bf885e86f159841c73a36d8d58b3d968478a84dd7ead62ef5a7de90cd1785e54e68368
6
+ metadata.gz: db3617503f9160acec73f7bcbba8351adcdf54caddc24910b72cc21dbaf4839f62c0d8d9c62adb581e07782886b34c56d5a4eeb388a18c18531f44e7b03d8cc3
7
+ data.tar.gz: 3f48b84cbe52a483c7440f985fe49e4f9ed9da2221db5dab10edd30598425df569ff27a1028deffc172c69f616bd170675c16e380fdfe873c4207be752b3975a
data/CHANGELOG.md CHANGED
@@ -317,3 +317,7 @@
317
317
  ## v3.2.0
318
318
 
319
319
  * Added method to get items by ids
320
+
321
+ ## v4.0.0
322
+
323
+ * Added methods for handling pickup stores
data/lib/mercadolibre.rb CHANGED
@@ -18,6 +18,7 @@ require "mercadolibre/core/oauth"
18
18
  require "mercadolibre/core/order_blacklist"
19
19
  require "mercadolibre/core/order_notes"
20
20
  require "mercadolibre/core/orders"
21
+ require "mercadolibre/core/pickup_stores"
21
22
  require "mercadolibre/core/pictures"
22
23
  require "mercadolibre/core/projects"
23
24
  require "mercadolibre/core/question_blacklist"
@@ -40,6 +40,7 @@ module Mercadolibre
40
40
  include Mercadolibre::Core::OrderBlacklist
41
41
  include Mercadolibre::Core::OrderNotes
42
42
  include Mercadolibre::Core::Orders
43
+ include Mercadolibre::Core::PickupStore
43
44
  include Mercadolibre::Core::Pictures
44
45
  include Mercadolibre::Core::Projects
45
46
  include Mercadolibre::Core::QuestionBlacklist
@@ -56,24 +57,6 @@ module Mercadolibre
56
57
  @last_result
57
58
  end
58
59
 
59
- def send_custom_request(http_method, action, params={}, headers={})
60
- if http_method.to_s.downcase == 'get'
61
- get_request(action, params, headers)
62
- elsif http_method.to_s.downcase == 'post'
63
- post_request(action, params, headers)
64
- elsif http_method.to_s.downcase == 'put'
65
- put_request(action, params, headers)
66
- elsif http_method.to_s.downcase == 'patch'
67
- patch_request(action, params, headers)
68
- elsif http_method.to_s.downcase == 'head'
69
- head_request(action, params, headers)
70
- elsif http_method.to_s.downcase == 'delete'
71
- delete_request(action, params, headers)
72
- else
73
- raise 'invalid http method!'
74
- end
75
- end
76
-
77
60
  private
78
61
 
79
62
  def get_request(action, params={}, headers={})
@@ -0,0 +1,53 @@
1
+ module Mercadolibre
2
+ module Core
3
+ module PickupStores
4
+ def create_pickup_store(user_id, attrs)
5
+ payload = attrs.to_json
6
+ headers = { content_type: :json }
7
+
8
+ post_request("/users/#{user_id}/stores?access_token=#{@access_token}", payload, headers).body
9
+ end
10
+
11
+ def update_pickup_store(user_id, store_id, attrs)
12
+ payload = attrs.to_json
13
+ headers = { content_type: :json, accept: :json }
14
+
15
+ put_request("/users/#{user_id}/stores/#{store_id}?access_token=#{@access_token}", payload, headers).body
16
+ end
17
+
18
+ def delete_pickup_store(user_id, store_id)
19
+ result = delete_request("/users/#{user_id}/stores/#{store_id}?access_token=#{@access_token}")
20
+ result.status_code == 200
21
+ end
22
+
23
+ def create_item_pickup_store(item_id, store_id, attrs)
24
+ payload = attrs.to_json
25
+ headers = { content_type: :json }
26
+
27
+ post_request("/items/#{item_id}/stores/#{store_id}?access_token=#{@access_token}", payload, headers).body
28
+ end
29
+
30
+ def update_item_pickup_store(item_id, store_id, attrs)
31
+ payload = attrs.to_json
32
+ headers = { content_type: :json, accept: :json }
33
+
34
+ put_request("/items/#{item_id}/stores/#{store_id}?access_token=#{@access_token}", payload, headers).body
35
+ end
36
+
37
+ def delete_item_pickup_store_from(item_id, store_id)
38
+ result = delete_request("/items/#{item_id}/stores/#{store_id}?access_token=#{@access_token}")
39
+ result.status_code == 200
40
+ end
41
+
42
+ def get_item_pickup_stores(item_id)
43
+ filters = { access_token: @access_token }
44
+ get_request("/items/#{item_id}/stores", filters).body
45
+ end
46
+
47
+ def get_pickup(pickup_id)
48
+ filters = { access_token: @access_token }
49
+ get_request("/pickups/#{pickup_id}", filters).body
50
+ end
51
+ end
52
+ end
53
+ end
@@ -1,3 +1,3 @@
1
1
  module Mercadolibre
2
- VERSION = '3.2.0'
2
+ VERSION = '4.0.0'
3
3
  end
@@ -34,24 +34,6 @@ module Mercadopago
34
34
  @last_result
35
35
  end
36
36
 
37
- def send_custom_request(http_method, action, params={}, headers={})
38
- if http_method.to_s.downcase == 'get'
39
- get_request(action, params, headers)
40
- elsif http_method.to_s.downcase == 'post'
41
- post_request(action, params, headers)
42
- elsif http_method.to_s.downcase == 'put'
43
- put_request(action, params, headers)
44
- elsif http_method.to_s.downcase == 'patch'
45
- patch_request(action, params, headers)
46
- elsif http_method.to_s.downcase == 'head'
47
- head_request(action, params, headers)
48
- elsif http_method.to_s.downcase == 'delete'
49
- delete_request(action, params, headers)
50
- else
51
- raise 'invalid http method!'
52
- end
53
- end
54
-
55
37
  private
56
38
 
57
39
  def get_request(action, params={}, headers={})
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mercadolibre
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matias Hick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-20 00:00:00.000000000 Z
11
+ date: 2018-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -81,6 +81,7 @@ files:
81
81
  - lib/mercadolibre/core/order_blacklist.rb
82
82
  - lib/mercadolibre/core/order_notes.rb
83
83
  - lib/mercadolibre/core/orders.rb
84
+ - lib/mercadolibre/core/pickup_stores.rb
84
85
  - lib/mercadolibre/core/pictures.rb
85
86
  - lib/mercadolibre/core/projects.rb
86
87
  - lib/mercadolibre/core/question_blacklist.rb
@@ -112,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
113
  version: '0'
113
114
  requirements: []
114
115
  rubyforge_project:
115
- rubygems_version: 2.5.2
116
+ rubygems_version: 2.7.3
116
117
  signing_key:
117
118
  specification_version: 4
118
119
  summary: Connect to Mercadolibre through Meli API