aboutyou-sdk 0.0.17 → 0.0.18

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MDZjYTljYjAzN2FkZGIwNWQ5MTYyM2Q5N2FiN2U0MGRiOGQ4ZDE3Ng==
4
+ YjIwODhmODg5MDU3ZTU5YTYwMTZjMTU2ZGUyOGMxMjEwNDYxZmQ1NQ==
5
5
  data.tar.gz: !binary |-
6
- MmQ2MTc4YTc3N2UwNjM2NjYwMjcwYjM1YzcwY2JkMTliMGNjMDA1Mw==
6
+ YzBkNjZiNzZlODM0ZDljYjc3YzIwMTJlNDk3ZDU3YmRiNTMzYWQ0YQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OTUxNjQwYzRhN2IwZjI1ZWVlZDAzMWU1NzI3YTY0NWI1NWJhYzE0OTExY2Jh
10
- OTM5MzUyZTVjZjhkZGEwNWEzYWVkNGVkZjUxYTI4MDU4NmMyNGYxNDY3NTgz
11
- ZDZkYjFhY2JhY2YzYzU5MjUwMTkwNzE0M2YwMTUyODY0YWZlMzA=
9
+ ZTM5Nzg4OTI0YTNkMzE3ZTQ4MmEzYzNkMmYxYjY5ODIzODFmN2M4OWZmYmM4
10
+ MTJlNWQwN2Q4ZjZhNGQ4MjIxOGU2N2I0N2IxYjBlOTcyNjMxZmE4NWRmZDc0
11
+ ZTAyNWM2NDZjMDBlNGMwZmIzZjQwMThlMTBhNzUwYjFhNDA0YjI=
12
12
  data.tar.gz: !binary |-
13
- NDc1MTU2Mzc4YTk1NWNkYzU5ZDg5MTcxOWQzY2RlMGE0MmRmYTAxZWZmMjhm
14
- YzRhMWM0YTFlZDRhZjBlMzYwMDZmZTk0NzFlZmM0YjVkZTUyYjE5Y2U5ZDE0
15
- YzFjYTQ1N2UwNzJiYjM0ZWQxNGU4Njc2YmJiMDJjNjY1ZTZlYjI=
13
+ YzY2ZGEwMmU4NTI1MmUwNjgwOTU5YWQ2OTBlN2Q0MTgzNTI5ZTFhOWFkMzE4
14
+ NzcwMDAzOTI3NGFmYjBlNDcwMDY5Yzc5YjlmYzRhNmEyNThkMTZlN2JmODk0
15
+ YTllYzNjNzBiODNjODU3ZjA3Y2RhODdlYTlhNTliNTZkNmU4ZDA=
@@ -33,8 +33,8 @@ module AboutYou
33
33
  attr_accessor :activeLeafCategories
34
34
 
35
35
 
36
- def createFromJson(jsonObject, factory, appId)
37
- product = self.new(jsonObject, factory)
36
+ def self.createFromJson(jsonObject, factory, appId)
37
+ product = self.new
38
38
 
39
39
  # these are required fields
40
40
  raise 'MalformedJsonException!' unless jsonObject["id"] || jsonObject["name"]
@@ -56,8 +56,8 @@ module AboutYou
56
56
  product.maxSavingsPrice = jsonObject["max_savings"] ? jsonObject["max_savings"] : nil
57
57
  product.maxSavingsPercentage = jsonObject["max_savings_percentage"] ? jsonObject["max_savings_percentage"] : nil
58
58
 
59
- product.defaultImage = jsonObject["default_image"] ? jsonObject["default_image"] : nil
60
- product.defaultVariant = jsonObject["default_variant"] ? jsonObject["default_variant"] : nil
59
+ product.defaultImage = jsonObject["default_image"] ? factory.createImage(jsonObject["default_image"]) : nil
60
+ product.defaultVariant = jsonObject["default_variant"] ? factory.createVariant(jsonObject["default_variant"]) : nil
61
61
 
62
62
  product.variants = product.parseVariants(jsonObject, factory, product)
63
63
  product.inactiveVariants = product.parseVariants(jsonObject, factory, product, 'inactive_variants')
@@ -66,15 +66,15 @@ module AboutYou
66
66
  key = 'categories.' + String(appId)
67
67
  product.categoryIdPaths = jsonObject["key"] ? jsonObject["key"] : []
68
68
 
69
- product.facetIds = product.parseFacetIds(jsonObject)
69
+ product.facetIds = product.parseFacetIds(jsonObject)
70
70
 
71
71
  product
72
72
  end
73
73
 
74
74
  def parseVariants(jsonObject, factory, product, attributeName = 'variants')
75
75
  variants = {}
76
- unless jsonObject[attributeName].empty?
77
- jsonObject["attributeName"].each do |jsonVariant|
76
+ if jsonObject.key?(attributeName) && !jsonObject[attributeName].empty?
77
+ jsonObject[attributeName].each do |jsonVariant|
78
78
  variants[jsonVariant["id"]] = factory.createVariant(jsonVariant, product)
79
79
  end
80
80
  end
@@ -84,7 +84,7 @@ module AboutYou
84
84
 
85
85
  def parseStyles(jsonObject, factory)
86
86
  styles = []
87
- unless jsonObject["styles"].empty?
87
+ if jsonObject.key?("styles") && !jsonObject["styles"].empty?
88
88
  jsonObject["styles"].each do |style|
89
89
  styles.push(factory.createProduct(style))
90
90
  end
@@ -109,15 +109,15 @@ module AboutYou
109
109
  def parseFacetIds(jsonObject)
110
110
  ids = self.parseFacetIdsInAttributesMerged(jsonObject)
111
111
 
112
- ids = self.parseFacetIdsInVariants(jsonObject) if ids === null
112
+ ids = self.parseFacetIdsInVariants(jsonObject) if ids === nil
113
113
 
114
- ids = self.parseFacetIdsInBrand(jsonObject) if $ids === null
114
+ ids = self.parseFacetIdsInBrand(jsonObject) if $ids === nil
115
115
 
116
116
  ids != nil ? ids : []
117
117
  end
118
118
 
119
119
  def parseFacetIdsInAttributesMerged(jsonObject)
120
- return nil if jsonObject["attributes_merged"].empty?
120
+ return nil unless jsonObject["attributes_merged"]
121
121
 
122
122
  self.parseAttributesJson(jsonObject["attributes_merged"])
123
123
  end
@@ -1,5 +1,6 @@
1
1
  require 'sinatra'
2
- require 'aboutyou-sdk'
2
+ require 'pry_debug'
3
+ require_relative '../lib/aboutyou-sdk.rb'
3
4
 
4
5
  class AY
5
6
  attr_accessor :result
@@ -26,8 +27,8 @@ shop.result = ""
26
27
  productsResult = shop.fetchProductsByIds([661132, 660971, 661367, 661361, 661350, 661345],["default_image", "variants"])
27
28
  productsResult.products.each do |key, prod|
28
29
  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>'
30
+ prod.variants.each do |key, var|
31
+ shop.result = shop.result + '<ul>' + '<li>' + 'Variante: ' + String(var.id) + '</ul>'
31
32
  end
32
33
  shop.result = shop.result + '</li>' + '</ul>'
33
34
  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.17
4
+ version: 0.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ferenc Beutel