aboutyou-sdk 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YTEwMDcyMDkyOGNjMzRjMTBjZjgyOWYzMTY2ODkwMWY1NjFiODI2NQ==
4
+ MzNjMzMyNDQzNWNiMWVkNDgxZTYxNTI4NTc3YWY2ZGY3Njk0YjVhNA==
5
5
  data.tar.gz: !binary |-
6
- YmQ3ZWQxOWI1MDk1NDlhOTVkNjdiMWNmZDQzYzRkOGZjMzA3NDcxMw==
6
+ ZTEyOTg3OGIwN2NjZWNkYTI0MTMwMDFkOTZiNjI0OGU3ZDE2Y2M0Mg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YTBjMDJmYzdkYjE1MmE0ZTZiMzRhN2VlMjIyYmNlYjBkOTExNmYzOTc3YTg4
10
- N2Y1ZTQwMjZiZTZjZmRkZDVjM2JiODE4MDk5Nzk2M2M3NmI5YzQ1MzEwODRj
11
- NzA4YzRiYTBkM2RiYzRjOWRlMTQ1ZDA1YzcxYjFlZTJkMDc5OWU=
9
+ NzFkNDBlMDViMWY3NjFmMWE3ZWFhNjY0ZWFlODBlMTcxMzVjM2E2YWVhMTFh
10
+ NGMyN2Y3NmMxM2I1NjhlMjY2OWU5MDE5ZGE3MTFkN2I0NjYyNjEwMjRkYTUw
11
+ MTIyMzVjNjc1ZjFjMDI2YWQ2Y2EzYTZlN2VhYzgwYjEwNDI0YWU=
12
12
  data.tar.gz: !binary |-
13
- ODY2NmI4MTYxYmE1ZjdkYzg2YTQ1NGM3ZTUxMTRlYjk1YTBjYTk1Y2RhZDVl
14
- M2FjZDcyMDA0OTUwM2JmM2EyOWFmNDE3M2JmMGIwZDFlMGU2MzMxNDBmZDJm
15
- YmI5ODY4Y2NjZTg3YmEyMzQ5NmYzNWU5MTlmOTA2ZjQwMTYyNTY=
13
+ NDEzMDE2NDgxMWRlZDczZmE3MzBmNzU1ZjU0Njk0ZTI2Njc3ZWNlY2FiMzBm
14
+ ZWIxZTJiZmU3YTc4NzlmZjljODIyNjdhNGNlZGI3MzRjZDc0NDljNzI2ZDA2
15
+ MTM5OWE1MjhhYmMxNWExNjUwOTgwMDE1ZmY1MGE3OGNjY2VlZGY=
data/lib/aboutyou-sdk.rb CHANGED
@@ -36,7 +36,7 @@ class AY
36
36
  # @param LoggerInterface $logger
37
37
  # @param \Aboutyou\Common\Cache\CacheMultiGet|\Doctrine\Common\Cache\CacheMultiGet $facetManagerCache
38
38
  ###
39
- def initialize(appId,appPassword,apiEndPoint = AboutYou::SDK::Constants::API_ENVIRONMENT_LIVE, resultFactory = nil, logger = nil,facetManagerCache = nil, sessionId = 'SESSION_ID')
39
+ def initialize(appId,appPassword,sessionId = 'SESSION_ID', apiEndPoint = AboutYou::SDK::Constants::API_ENVIRONMENT_LIVE, resultFactory = nil, logger = nil,facetManagerCache = nil)
40
40
  aboutYouClient = AboutYou::SDK::Client.new(appId, appPassword, apiEndPoint, logger)
41
41
 
42
42
  if (apiEndPoint === AboutYou::SDK::Constants::API_ENVIRONMENT_STAGE)
@@ -340,7 +340,7 @@ class AY
340
340
  # @throws ShopApi\Exception\MalformedJsonException
341
341
  #@throws ShopApi\Exception\UnexpectedResultException
342
342
  ###
343
- def fetchFacets(groupIds=nil)
343
+ def fetchFacets(groupIds=Array(nil))
344
344
 
345
345
  query = query().fetchFacets(groupIds)
346
346
 
@@ -385,7 +385,7 @@ class AY
385
385
  # @throws ShopApi\Exception\UnexpectedResultException
386
386
  ###
387
387
  def fetchFacet(params)
388
-
388
+
389
389
  query = query().fetchFacet(params)
390
390
 
391
391
  query.executeSingle()
@@ -114,7 +114,7 @@ module AboutYou
114
114
  #
115
115
  # @return ShopApi\Model\Facet[]
116
116
  ###
117
- def createFacetList(jsonArray)
117
+ def createFacetList(jsonArray, query)
118
118
 
119
119
  facets = Hash.new
120
120
  jsonArray.each do |jsonFacet|
@@ -183,7 +183,7 @@ module AboutYou
183
183
  #
184
184
  # @return integer[]
185
185
  ###
186
- def createFacetTypes(jsonArray)
186
+ def createFacetTypes(jsonArray, query)
187
187
 
188
188
  return jsonArray;
189
189
  end
@@ -279,7 +279,7 @@ module AboutYou
279
279
  #
280
280
  # @return ShopApi\Model\ProductsEansResult
281
281
  ###
282
- def createProductsEansResult(jsonObject)
282
+ def createProductsEansResult(jsonObject, query)
283
283
 
284
284
  return AboutYou::SDK::Model::ProductsEansResult.createFromJson(jsonObject, self)
285
285
  end
@@ -308,7 +308,7 @@ module AboutYou
308
308
  #
309
309
  # @return string[]
310
310
  ###
311
- def createSuggest(jsonArray)
311
+ def createSuggest(jsonArray, query)
312
312
 
313
313
  return jsonArray;
314
314
  end
@@ -7,6 +7,7 @@ module AboutYou
7
7
  attr_accessor :eansNotFound
8
8
  attr_accessor :pageHash
9
9
  attr_accessor :errors
10
+ attr_accessor :products
10
11
 
11
12
  ###
12
13
  # @param \stdClass $jsonObject
@@ -17,6 +18,9 @@ module AboutYou
17
18
  def self.createFromJson(jsonObject, factory)
18
19
 
19
20
  productsEansResult = self.new
21
+ productsEansResult.products = Array(nil)
22
+ productsEansResult.eansNotFound = Array(nil)
23
+ productsEansResult.errors = Array(nil)
20
24
 
21
25
  if jsonObject["pageHash"]
22
26
  productsEansResult.pageHash = jsonObject["pageHash"]
@@ -31,7 +35,7 @@ module AboutYou
31
35
  productsEansResult.eansNotFound = productsEansResult.eansNotFound + jsonProduct["ean"]
32
36
  next;
33
37
  end
34
- productsEansResult.products.push = factory.createProduct(jsonProduct);
38
+ productsEansResult.products.push(factory.createProduct(jsonProduct));
35
39
  end
36
40
  end
37
41
 
@@ -234,11 +234,13 @@ module AboutYou
234
234
  jsonObject = responseObject[resultKey]
235
235
  queryKey = currentQuery.keys[0]
236
236
  factory = self.factory
237
- if (jsonObject['error_code'])
238
- result = factory.preHandleError(jsonObject, resultKey, isMultiRequest);
239
- if (result != false)
240
- results.push(Hash[resultKey=> result])
241
- next
237
+ if !(queryKey == "facet_types" || queryKey == "suggest" || queryKey == "facet")
238
+ if (jsonObject['error_code'])
239
+ result = factory.preHandleError(jsonObject, resultKey, isMultiRequest);
240
+ if (result != false)
241
+ results.push(Hash[resultKey=> result])
242
+ next
243
+ end
242
244
  end
243
245
  end
244
246
  query = currentQuery[queryKey];
@@ -216,7 +216,7 @@ module AboutYou
216
216
  ids = Array(ids)
217
217
 
218
218
  ids.each do |id|
219
- id = id.to_i
219
+ id = Integer(id)
220
220
  if (id < 1)
221
221
  raise 'InvalidArgumentException! A single category ID must be greater than 0'
222
222
  end
@@ -258,7 +258,7 @@ module AboutYou
258
258
  ids = Array(ids)
259
259
  ids = ids.map{|id| Integer(id)}
260
260
 
261
- self.query.push(Hash['products' => Hash['ids' => ids,'fields' => AboutYou::SDK::Criteria::ProductFields::filterFields(fields)]])
261
+ self.query.push(Hash['products' => Hash['ids' => ids,'fields' => AboutYou::SDK::Criteria::ProductFields.filterFields(fields)]])
262
262
 
263
263
  return self;
264
264
  end
@@ -274,7 +274,7 @@ module AboutYou
274
274
 
275
275
  ids = ids.map{|id| Integer(id)}
276
276
 
277
- self.query.push(Hash['live_variant' => Hash['ids' => ids]])
277
+ self.query.push(Hash['live_variant' => Hash['ids' => ids]])
278
278
 
279
279
  return self;
280
280
  end
@@ -289,7 +289,7 @@ module AboutYou
289
289
  self.query.push(Hash[
290
290
  'products_eans' => Hash[
291
291
  'eans' => eans,
292
- 'fields' => ProductFields::filterFields(fields),
292
+ 'fields' => AboutYou::SDK::Criteria::ProductFields.filterFields(fields),
293
293
  'version' => '2'
294
294
  ]
295
295
  ]
@@ -342,7 +342,7 @@ module AboutYou
342
342
  def fetchProductSearch(criteria)
343
343
 
344
344
  checkSessionId(criteria.sessionId());
345
- self.query.push(Hash['product_search' =>criteria.toArray])
345
+ self.query.push(Hash['product_search' =>Array(criteria)])
346
346
 
347
347
  return self;
348
348
  end
@@ -354,12 +354,14 @@ module AboutYou
354
354
  #
355
355
  # @throws \InvalidArgumentException
356
356
  ###
357
- def fetchFacets(groupIds = Array())
357
+ def fetchFacets(groupIds = Array(nil))
358
358
 
359
- groupIds = groupIds.map{|groupId| Integer(groupId)}
360
-
361
- self.query.push(Hash['facets' => Hash['group_ids' => groupIds]])
359
+ if(groupIds)
360
+ groupids = groupIds.map{|groupId| Integer(groupId)}
361
+ end
362
362
 
363
+ self.query.push(Hash['facets' => Hash['group_ids' => groupids]])
364
+ binding.pry
363
365
  return self;
364
366
  end
365
367
 
@@ -372,11 +374,11 @@ module AboutYou
372
374
  ###
373
375
  def fetchFacet(params)
374
376
 
375
- if (params.empty)
377
+ if (params.empty?)
376
378
  raise 'InvalidArgumentException! no params given'
377
379
  end
378
380
 
379
- self.query.push(Hash['facet' => params])
381
+ self.query.push(Hash['facet' => params])
380
382
 
381
383
  return self
382
384
  end
@@ -0,0 +1,33 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
+
5
+ class AY
6
+ attr_accessor :result
7
+
8
+ def putsCatName(category)
9
+ category = Array(category)
10
+ self.result = self.result + '<ul>'
11
+ category.each do |cat|
12
+ self.result = self.result + ('<li>'+cat.name+'</li>')
13
+ if (cat.subCategories(true))
14
+ putsCatName(cat.subCategories(true))
15
+ else
16
+ puts ""
17
+ end
18
+ end
19
+ self.result = self.result + '</ul>'
20
+ return result
21
+ end
22
+ end
23
+
24
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
25
+ shop.result = ""
26
+
27
+ result = shop.fetchFacetTypes
28
+ result.each do |facetId|
29
+ shop.result = shop.result + String(facetId) + '</br>'
30
+ end
31
+ get "/" do
32
+ return shop.result
33
+ end
data/tests/testFacets.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'sinatra'
2
2
  require 'pry_debug'
3
- require 'AboutYou-Ruby-SDK'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
4
 
5
5
  class AY
6
6
  attr_accessor :result
@@ -0,0 +1,33 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
+
5
+ class AY
6
+ attr_accessor :result
7
+
8
+ def putsCatName(category)
9
+ category = Array(category)
10
+ self.result = self.result + '<ul>'
11
+ category.each do |cat|
12
+ self.result = self.result + ('<li>'+cat.name+'</li>')
13
+ if (cat.subCategories(true))
14
+ putsCatName(cat.subCategories(true))
15
+ else
16
+ puts ""
17
+ end
18
+ end
19
+ self.result = self.result + '</ul>'
20
+ return result
21
+ end
22
+ end
23
+
24
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
25
+ shop.result = ""
26
+
27
+ result = shop.fetchFacet([Hash["id" => 426, "group_id" => 1]])
28
+ result.each do |key, facet|
29
+ shop.result = shop.result + facet.name + '</br>'
30
+ end
31
+ get "/" do
32
+ return shop.result
33
+ end
@@ -0,0 +1,17 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
+
5
+ class AY
6
+ attr_accessor :result
7
+
8
+ end
9
+
10
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
11
+ shop.result = ""
12
+
13
+ shop.result = shop.result + shop.javaScriptTag + '</br>'
14
+ shop.result = shop.result + shop.javaScriptURL
15
+ get '/' do
16
+ return shop.result
17
+ end
@@ -0,0 +1,37 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
+
5
+ class AY
6
+ attr_accessor :result
7
+
8
+ def putsCatName(category)
9
+ category = Array(category)
10
+ self.result = self.result + '<ul>'
11
+ category.each do |cat|
12
+ self.result = self.result + ('<li>'+cat.name+'</li>')
13
+ if (cat.subCategories(true))
14
+ putsCatName(cat.subCategories(true))
15
+ else
16
+ puts ""
17
+ end
18
+ end
19
+ self.result = self.result + '</ul>'
20
+ return result
21
+ end
22
+ end
23
+
24
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
25
+ shop.result = ""
26
+
27
+ productsResult = shop.fetchProductsByEans(["7323000051968"], ["variants", "default_image"])
28
+ productsResult.products.each do |prod|
29
+ shop.result = shop.result + '<ul>' + '<li>' + String(prod.id) + ' : ' + prod.name + '</br>' + '<img src="' + prod.defaultImage.url + '">'
30
+ prod.variants.each_with_index do |var, index|
31
+ shop.result = shop.result + '<ul>' + '<li>' + 'Variante: '+ String(index) + String(var.id) + '</ul>'
32
+ end
33
+ shop.result = shop.result + '</li>' + '</ul>'
34
+ end
35
+ get "/" do
36
+ return shop.result
37
+ end
@@ -1,6 +1,5 @@
1
1
  require 'sinatra'
2
- require 'pry_debug'
3
- require 'aboutyou-sdk.rb'
2
+ require_relative '../AboutYou.rb'
4
3
 
5
4
  class AY
6
5
  attr_accessor :result
@@ -24,10 +23,13 @@ end
24
23
  shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
25
24
  shop.result = ""
26
25
 
27
- productsResult = shop.fetchProductsByIds([661132], ["variants"])
28
- binding.pry
26
+ productsResult = shop.fetchProductsByIds([661132, 660971, 661367, 661361, 661350, 661345],["default_image", "variants"])
29
27
  productsResult.products.each do |prod|
30
- shop.result = shop.result + prod.variants.inspect + '</br>'
28
+ shop.result = shop.result + '<ul>' + '<li>' + String(prod.id) + ' : ' + prod.name + '</br>' + '<img src="' + prod.defaultImage.url + '">'
29
+ prod.variants.each_with_index do |var, index|
30
+ shop.result = shop.result + '<ul>' + '<li>' + 'Variante: '+ String(index) + String(var.id) + '</ul>'
31
+ end
32
+ shop.result = shop.result + '</li>' + '</ul>'
31
33
  end
32
34
  get "/" do
33
35
  return shop.result
@@ -0,0 +1,33 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
4
+
5
+ class AY
6
+ attr_accessor :result
7
+
8
+ def putsCatName(category)
9
+ category = Array(category)
10
+ self.result = self.result + '<ul>'
11
+ category.each do |cat|
12
+ self.result = self.result + ('<li>'+cat.name+'</li>')
13
+ if (cat.subCategories(true))
14
+ putsCatName(cat.subCategories(true))
15
+ else
16
+ puts ""
17
+ end
18
+ end
19
+ self.result = self.result + '</ul>'
20
+ return result
21
+ end
22
+ end
23
+
24
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
25
+
26
+ get "/" do
27
+ shop.result = ""
28
+ suggestResult = shop.fetchSuggest("Hose")
29
+ suggestResult.each do |suggest|
30
+ shop.result = shop.result + suggest + '</br>'
31
+ end
32
+ return shop.result
33
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aboutyou-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ferenc Beutel
@@ -104,12 +104,17 @@ files:
104
104
  - tests/testAutocomplete.rb
105
105
  - tests/testCatFilter.rb
106
106
  - tests/testCatTree.rb
107
+ - tests/testFacetTypes.rb
107
108
  - tests/testFacets.rb
109
+ - tests/testFetchFacet.rb
110
+ - tests/testJavaScript.rb
108
111
  - tests/testProdCatLongestPath.rb
109
112
  - tests/testProductSearchResult.rb
113
+ - tests/testProductsByEans.rb
110
114
  - tests/testProductsByIds.rb
115
+ - tests/testSuggest.rb
111
116
  - tests/testVariantsByIds.rb
112
- homepage: http://rubygems.org/gems/AboutYou-Ruby-SDK
117
+ homepage: https://developer.aboutyou.de
113
118
  licenses:
114
119
  - MIT
115
120
  metadata: {}