mercadolibre 0.1.4 → 0.1.5

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: 1cc3bd551155e1b28cf1242d45e6e10c4471ad7f
4
- data.tar.gz: 226d07beb5beefc8c9eaaf668e865537848103ca
3
+ metadata.gz: 4b7ce86894418ee07e208995ac78488f9b862c28
4
+ data.tar.gz: 5b6f461e60a6abb456f4a737c38fd7d64213cd00
5
5
  SHA512:
6
- metadata.gz: 77dd5b72e4a95374aaac1b83b8828a86bc53af41594b42665654ad2bd621f3b11b555ed99561cfe5fef252a4cc46b0045411e5ff467d34694ada453f888bf856
7
- data.tar.gz: 313093e85910b129c49a5de34cf044773c039c811a7731511586eb5276e11d2ff948405b237d4b7c988d8eafe86a942d6adde24b6ca01ec02ae11da92869be5f
6
+ metadata.gz: 292ea0a42bea74be2a5927bc052cca47e46ae2b94d410950d36af690c1842b3eb4c32e1c0752f929c57e42b10520923012587ff2c9e10ff53018aa60aa0fdcfb
7
+ data.tar.gz: fb3046728c95cb207e5798de7b711d607e40d206afb9fc5ab59e1f1e83fa8381747a3c46c775e968a9fb713b4a9302f882b50aaa1a14f9cfd3de9cfa18d20075
data/CHANGELOG.md CHANGED
@@ -53,3 +53,7 @@
53
53
  ## v0.1.4
54
54
 
55
55
  * Fixed site trends param
56
+
57
+ ## v0.1.5
58
+
59
+ * Splitted question methods
@@ -1,21 +1,53 @@
1
1
  module Mercadolibre
2
2
  module Core
3
3
  module Questions
4
- def get_all_questions(filters={})
4
+ def get_all_my_questions(filters={})
5
5
  filters.merge!({ access_token: @access_token, limit: 50, offset: 0 })
6
6
 
7
- if filters[:seller_id]
8
- action = '/questions/search'
9
- else
10
- action = '/my/received_questions/search'
7
+ results = []
8
+ has_results = true
9
+ pages_remaining = filters[:pages_count] || -1
10
+
11
+ while (has_results && (pages_remaining != 0)) do
12
+ partial_results = get_request('/my/received_questions/search', filters)[:body]['questions']
13
+
14
+ results += partial_results.map { |q| Mercadolibre::Entity::Question.new(q) }
15
+
16
+ has_results = partial_results.any?
17
+ filters[:offset] += 50
18
+ pages_remaining -= 1
11
19
  end
12
20
 
21
+ results
22
+ end
23
+
24
+ def get_my_questions(filters={})
25
+ filters.merge!({ access_token: @access_token })
26
+
27
+ response = get_request('/my/received_questions/search', filters)[:body]
28
+
29
+ {
30
+ results: response['questions'].map { |r| Mercadolibre::Entity::Question.new(r) },
31
+ paging: { total: response['total'], limit: response['limit'] }
32
+ }
33
+ end
34
+
35
+ def get_my_questions_count(filters={})
36
+ filters.merge!({ access_token: @access_token, limit: 1, offset: 0 })
37
+
38
+ get_request('/my/received_questions/search', filters)[:body]['total'].to_i
39
+ end
40
+
41
+
42
+ def get_all_questions(filters={})
43
+ filters.merge!({ access_token: @access_token, limit: 50, offset: 0 })
44
+
13
45
  results = []
14
46
  has_results = true
15
47
  pages_remaining = filters[:pages_count] || -1
16
48
 
17
49
  while (has_results && (pages_remaining != 0)) do
18
- partial_results = get_request(action, filters)[:body]['questions']
50
+ partial_results = get_request('/questions/search', filters)[:body]['questions']
19
51
 
20
52
  results += partial_results.map { |q| Mercadolibre::Entity::Question.new(q) }
21
53
 
@@ -30,13 +62,7 @@ module Mercadolibre
30
62
  def get_questions(filters={})
31
63
  filters.merge!({ access_token: @access_token })
32
64
 
33
- if filters[:seller_id]
34
- url = '/questions/search'
35
- else
36
- url = '/my/received_questions/search'
37
- end
38
-
39
- response = get_request(url, filters)[:body]
65
+ response = get_request('/questions/search', filters)[:body]
40
66
 
41
67
  {
42
68
  results: response['questions'].map { |r| Mercadolibre::Entity::Question.new(r) },
@@ -47,13 +73,7 @@ module Mercadolibre
47
73
  def get_questions_count(filters={})
48
74
  filters.merge!({ access_token: @access_token, limit: 1, offset: 0 })
49
75
 
50
- if filters[:seller_id]
51
- url = '/questions/search'
52
- else
53
- url = '/my/received_questions/search'
54
- end
55
-
56
- get_request(url, filters)[:body]['total'].to_i
76
+ get_request('/questions/search', filters)[:body]['total'].to_i
57
77
  end
58
78
 
59
79
  def get_question(question_id)
@@ -1,3 +1,3 @@
1
1
  module Mercadolibre
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
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: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matias Hick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-22 00:00:00.000000000 Z
11
+ date: 2014-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler