aboutyou-sdk 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +15 -0
  2. data/lib/aboutyou-sdk.rb +545 -0
  3. data/lib/aboutyou-sdk/Client.rb +125 -0
  4. data/lib/aboutyou-sdk/Constants.rb +48 -0
  5. data/lib/aboutyou-sdk/Criteria/ProductFields.rb +54 -0
  6. data/lib/aboutyou-sdk/Criteria/ProductSearchCriteria.rb +436 -0
  7. data/lib/aboutyou-sdk/Factory/DefaultModelFactory.rb +454 -0
  8. data/lib/aboutyou-sdk/Model/AbstractModel.rb +26 -0
  9. data/lib/aboutyou-sdk/Model/App.rb +35 -0
  10. data/lib/aboutyou-sdk/Model/Autocomplete.rb +92 -0
  11. data/lib/aboutyou-sdk/Model/Basket.rb +262 -0
  12. data/lib/aboutyou-sdk/Model/Basket/AbstractBasketItem.rb +76 -0
  13. data/lib/aboutyou-sdk/Model/Basket/BasketItem.rb +100 -0
  14. data/lib/aboutyou-sdk/Model/Basket/BasketSet.rb +192 -0
  15. data/lib/aboutyou-sdk/Model/Basket/BasketSetItem.rb +46 -0
  16. data/lib/aboutyou-sdk/Model/Basket/BasketVariantItem.rb +137 -0
  17. data/lib/aboutyou-sdk/Model/CategoriesResult.rb +15 -0
  18. data/lib/aboutyou-sdk/Model/Category.rb +126 -0
  19. data/lib/aboutyou-sdk/Model/CategoryManager/DefaultCategoryManager.rb +172 -0
  20. data/lib/aboutyou-sdk/Model/CategoryTree.rb +35 -0
  21. data/lib/aboutyou-sdk/Model/Facet.rb +105 -0
  22. data/lib/aboutyou-sdk/Model/FacetGroup.rb +110 -0
  23. data/lib/aboutyou-sdk/Model/FacetGroupSet.rb +247 -0
  24. data/lib/aboutyou-sdk/Model/FacetManager/DefaultFacetManager.rb +79 -0
  25. data/lib/aboutyou-sdk/Model/Image.rb +134 -0
  26. data/lib/aboutyou-sdk/Model/ImageSize.rb +21 -0
  27. data/lib/aboutyou-sdk/Model/InitiateOrder.rb +50 -0
  28. data/lib/aboutyou-sdk/Model/Order.rb +17 -0
  29. data/lib/aboutyou-sdk/Model/Product.rb +543 -0
  30. data/lib/aboutyou-sdk/Model/ProductSearchResult.rb +125 -0
  31. data/lib/aboutyou-sdk/Model/ProductSearchResult/FacetCount.rb +26 -0
  32. data/lib/aboutyou-sdk/Model/ProductSearchResult/FacetCounts.rb +38 -0
  33. data/lib/aboutyou-sdk/Model/ProductSearchResult/PriceRange.rb +49 -0
  34. data/lib/aboutyou-sdk/Model/ProductSearchResult/SaleCounts.rb +58 -0
  35. data/lib/aboutyou-sdk/Model/ProductSearchResult/TermsCount.rb +27 -0
  36. data/lib/aboutyou-sdk/Model/ProductsEansResult.rb +43 -0
  37. data/lib/aboutyou-sdk/Model/ProductsResult.rb +52 -0
  38. data/lib/aboutyou-sdk/Model/ResultError.rb +24 -0
  39. data/lib/aboutyou-sdk/Model/Variant.rb +255 -0
  40. data/lib/aboutyou-sdk/Model/VariantsResult.rb +102 -0
  41. data/lib/aboutyou-sdk/Query.rb +261 -0
  42. data/lib/aboutyou-sdk/QueryBuilder.rb +440 -0
  43. data/tests/Sinatra-test/Main.rb +5 -0
  44. data/tests/testApiClient.rb +35 -0
  45. data/tests/testAutocomplete.rb +40 -0
  46. data/tests/testCatFilter.rb +35 -0
  47. data/tests/testCatTree.rb +37 -0
  48. data/tests/testFacets.rb +36 -0
  49. data/tests/testProdCatLongestPath.rb +34 -0
  50. data/tests/testProductSearchResult.rb +35 -0
  51. data/tests/testProductsByIds.rb +34 -0
  52. data/tests/testVariantsByIds.rb +34 -0
  53. metadata +122 -0
@@ -0,0 +1,40 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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
+ autocompleteResult = shop.fetchAutocomplete("ho", 15)
29
+ autocompleteResult.products.each do |prod|
30
+ shop.result = shop.result + prod.name + '</br>'
31
+ end
32
+
33
+ shop.result = shop.result + '</br>'
34
+
35
+ autocompleteResult.categories.each do |cat|
36
+ shop.result = shop.result + cat.name + '</br>'
37
+ end
38
+
39
+ return shop.result
40
+ end
@@ -0,0 +1,35 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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
+ shop = AY.new(281, 'e6068c4ca020262613d06122663cb300')
24
+ shop.result = ""
25
+
26
+ criteria = shop.productSearchCriteria().selectFacetsByGroupId(0, 10)
27
+ result = shop.fetchProductSearch(criteria)
28
+ result.facets.each do |key, facet|
29
+ facet.facetCountList.each do |facetCount|
30
+ shop.result = shop.result + facetCount.facet.name + '</br>'
31
+ end
32
+ end
33
+ get "/" do
34
+ return shop.result
35
+ end
@@ -0,0 +1,37 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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
+ catTree = shop.fetchCategoriesByIds()
28
+ catTree.categories.each do |key, cate|
29
+ shop.result = shop.result + cate.name + '</br>'
30
+ cate.subcategories(false).each do |key, subcat|
31
+ shop.result = shop.result + '-------------' + subcat.name + '</br>'
32
+ end
33
+ end
34
+
35
+ get "/" do
36
+ return shop.result
37
+ end
@@ -0,0 +1,36 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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
+ criteria = shop.productSearchCriteria().selectFacetsByGroupId(0, 10)
28
+ result = shop.fetchProductSearch(criteria)
29
+ result.facets.each do |key, facet|
30
+ facet.facetCountList.each do |facetCount|
31
+ shop.result = shop.result + facetCount.facet.name + '</br>'
32
+ end
33
+ end
34
+ get "/" do
35
+ return shop.result
36
+ end
@@ -0,0 +1,34 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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.fetchProductsByIds([661132],["categories"])
28
+ productsResult.products.each do |prod|
29
+ shop.result = shop.result + 'aktiv: ' + String(prod.categoryWithLongestActivePath.isPathActive) + ' '
30
+ shop.result = shop.result + String(prod.categoryWithLongestActivePath.id) + ' : ' + String(prod.categoryWithLongestActivePath.name)
31
+ end
32
+ get "/" do
33
+ return shop.result
34
+ end
@@ -0,0 +1,35 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require 'AboutYou-Ruby-SDK'
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
+ criteria = shop.productSearchCriteria.selectPriceRanges
27
+
28
+ productSearchResult = shop.fetchProductSearch(criteria)
29
+ binding.pry
30
+ productsResult.products.each do |prod|
31
+ shop.result = shop.result + prod.inspect + '</br>'
32
+ end
33
+ get "/" do
34
+ return shop.result
35
+ end
@@ -0,0 +1,34 @@
1
+ require 'sinatra'
2
+ require 'pry_debug'
3
+ require '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.fetchProductsByIds([661132], ["variants"])
28
+ binding.pry
29
+ productsResult.products.each do |prod|
30
+ shop.result = shop.result + prod.variants.inspect + '</br>'
31
+ end
32
+ get "/" do
33
+ return shop.result
34
+ end
@@ -0,0 +1,34 @@
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
+ variantResult = shop.fetchVariantsByIds([7832543])
28
+ variantResult.variants.each do |key, variant|
29
+ binding.pry
30
+ shop.result = shop.result + String(variant.id) + '<img src="' + variant.image.url + '">' + '</br>'
31
+ end
32
+ get "/" do
33
+ return shop.result
34
+ end
metadata ADDED
@@ -0,0 +1,122 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aboutyou-sdk
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Ferenc Beutel
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-11-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: httparty
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ! '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: Use the Ruby SDK to build apps for the ABOUT YOU platform.
42
+ email: ferenc1993beutel@gmx.de
43
+ executables: []
44
+ extensions: []
45
+ extra_rdoc_files: []
46
+ files:
47
+ - lib/aboutyou-sdk.rb
48
+ - lib/aboutyou-sdk/Client.rb
49
+ - lib/aboutyou-sdk/Constants.rb
50
+ - lib/aboutyou-sdk/Criteria/ProductFields.rb
51
+ - lib/aboutyou-sdk/Criteria/ProductSearchCriteria.rb
52
+ - lib/aboutyou-sdk/Factory/DefaultModelFactory.rb
53
+ - lib/aboutyou-sdk/Model/AbstractModel.rb
54
+ - lib/aboutyou-sdk/Model/App.rb
55
+ - lib/aboutyou-sdk/Model/Autocomplete.rb
56
+ - lib/aboutyou-sdk/Model/Basket.rb
57
+ - lib/aboutyou-sdk/Model/Basket/AbstractBasketItem.rb
58
+ - lib/aboutyou-sdk/Model/Basket/BasketItem.rb
59
+ - lib/aboutyou-sdk/Model/Basket/BasketSet.rb
60
+ - lib/aboutyou-sdk/Model/Basket/BasketSetItem.rb
61
+ - lib/aboutyou-sdk/Model/Basket/BasketVariantItem.rb
62
+ - lib/aboutyou-sdk/Model/CategoriesResult.rb
63
+ - lib/aboutyou-sdk/Model/Category.rb
64
+ - lib/aboutyou-sdk/Model/CategoryManager/DefaultCategoryManager.rb
65
+ - lib/aboutyou-sdk/Model/CategoryTree.rb
66
+ - lib/aboutyou-sdk/Model/Facet.rb
67
+ - lib/aboutyou-sdk/Model/FacetGroup.rb
68
+ - lib/aboutyou-sdk/Model/FacetGroupSet.rb
69
+ - lib/aboutyou-sdk/Model/FacetManager/DefaultFacetManager.rb
70
+ - lib/aboutyou-sdk/Model/Image.rb
71
+ - lib/aboutyou-sdk/Model/ImageSize.rb
72
+ - lib/aboutyou-sdk/Model/InitiateOrder.rb
73
+ - lib/aboutyou-sdk/Model/Order.rb
74
+ - lib/aboutyou-sdk/Model/Product.rb
75
+ - lib/aboutyou-sdk/Model/ProductSearchResult.rb
76
+ - lib/aboutyou-sdk/Model/ProductSearchResult/FacetCount.rb
77
+ - lib/aboutyou-sdk/Model/ProductSearchResult/FacetCounts.rb
78
+ - lib/aboutyou-sdk/Model/ProductSearchResult/PriceRange.rb
79
+ - lib/aboutyou-sdk/Model/ProductSearchResult/SaleCounts.rb
80
+ - lib/aboutyou-sdk/Model/ProductSearchResult/TermsCount.rb
81
+ - lib/aboutyou-sdk/Model/ProductsEansResult.rb
82
+ - lib/aboutyou-sdk/Model/ProductsResult.rb
83
+ - lib/aboutyou-sdk/Model/ResultError.rb
84
+ - lib/aboutyou-sdk/Model/Variant.rb
85
+ - lib/aboutyou-sdk/Model/VariantsResult.rb
86
+ - lib/aboutyou-sdk/Query.rb
87
+ - lib/aboutyou-sdk/QueryBuilder.rb
88
+ - tests/Sinatra-test/Main.rb
89
+ - tests/testApiClient.rb
90
+ - tests/testAutocomplete.rb
91
+ - tests/testCatFilter.rb
92
+ - tests/testCatTree.rb
93
+ - tests/testFacets.rb
94
+ - tests/testProdCatLongestPath.rb
95
+ - tests/testProductSearchResult.rb
96
+ - tests/testProductsByIds.rb
97
+ - tests/testVariantsByIds.rb
98
+ homepage: http://rubygems.org/gems/AboutYou-Ruby-SDK
99
+ licenses:
100
+ - MIT
101
+ metadata: {}
102
+ post_install_message:
103
+ rdoc_options: []
104
+ require_paths:
105
+ - lib
106
+ required_ruby_version: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: 1.9.3
111
+ required_rubygems_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ! '>='
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ requirements: []
117
+ rubyforge_project:
118
+ rubygems_version: 2.4.2
119
+ signing_key:
120
+ specification_version: 4
121
+ summary: Ruby-SDK for the ABOUT YOU platform.
122
+ test_files: []