mercadolibre 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
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