magerecord 0.4.0 → 0.5.0

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: f0a65840b693a038d434aaac51847d65730b0cfc
4
- data.tar.gz: 22708fa2c00d23c49ecc866f4d48c49b05bf473c
3
+ metadata.gz: 72a8236850d5a3e4690c2dbc0798ad81943da3eb
4
+ data.tar.gz: 02503a7773e829640cf02c282d59ade8a36f1c6f
5
5
  SHA512:
6
- metadata.gz: ec23ceae27ed5aa8974a1765f8c24bb876b08aef7862c5c12fa7eb6b5be489e384470ec5282004e68bee260a8fc262fa1a69f597257649e5eb605ea4a89cccec
7
- data.tar.gz: 9a19fc6698dc2ce49a9465f9d4a20c6e5f40a603dd117ae3476a0ed227a6c10de18d2d69e3e29981ad0c4002bc2503930753bb38ae65f0e1d1907a35baa561f0
6
+ metadata.gz: 65baef82744f05ddca38b30b014e088599224ffe92e431289226e5be6e3a3a0c04d49773ca5428c140c4665bfbaa185c0db72c4884575e90dbb06f0f45ded593
7
+ data.tar.gz: f9d0808da055fbf1ab18b127c2ae3afd0b7f8caa0452c32b39e32e2be2416217691823569d99efd56982b8d62a66b4d89f14d3fdfc3c20c4353bdd83f1bacda6
data/Gemfile CHANGED
@@ -7,8 +7,8 @@ gem 'mysql2', '>= 0.4.0'
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
9
  gem "shoulda", ">= 0"
10
- gem "rdoc", "~> 3.12"
11
- gem "bundler", "~> 1.0"
12
- gem "jeweler", "~> 2.0", ">= 2.0.1"
13
- gem "simplecov", "~> 0"
10
+ gem "rdoc", ">= 3.0"
11
+ gem "bundler", "~> 1.13"
12
+ gem "jeweler", ">= 2.0.1"
13
+ gem "simplecov", ">= 0"
14
14
  end
data/Gemfile.lock CHANGED
@@ -1,107 +1,96 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- activemodel (5.0.0.1)
5
- activesupport (= 5.0.0.1)
6
- activerecord (5.0.0.1)
7
- activemodel (= 5.0.0.1)
8
- activesupport (= 5.0.0.1)
9
- arel (~> 7.0)
10
- activesupport (5.0.0.1)
4
+ activemodel (5.1.4)
5
+ activesupport (= 5.1.4)
6
+ activerecord (5.1.4)
7
+ activemodel (= 5.1.4)
8
+ activesupport (= 5.1.4)
9
+ arel (~> 8.0)
10
+ activesupport (5.1.4)
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
12
  i18n (~> 0.7)
13
13
  minitest (~> 5.1)
14
14
  tzinfo (~> 1.1)
15
- addressable (2.5.0)
16
- public_suffix (~> 2.0, >= 2.0.2)
17
- arel (7.1.4)
18
- builder (3.2.2)
19
- concurrent-ruby (1.0.2)
20
- concurrent-ruby (1.0.2-java)
15
+ addressable (2.4.0)
16
+ arel (8.0.0)
17
+ builder (3.2.3)
18
+ concurrent-ruby (1.0.5)
21
19
  descendants_tracker (0.0.4)
22
20
  thread_safe (~> 0.3, >= 0.3.1)
23
21
  docile (1.1.5)
24
22
  faraday (0.9.2)
25
23
  multipart-post (>= 1.2, < 3)
26
24
  git (1.3.0)
27
- github_api (0.11.3)
28
- addressable (~> 2.3)
29
- descendants_tracker (~> 0.0.1)
25
+ github_api (0.16.0)
26
+ addressable (~> 2.4.0)
27
+ descendants_tracker (~> 0.0.4)
30
28
  faraday (~> 0.8, < 0.10)
31
- hashie (>= 1.2)
32
- multi_json (>= 1.7.5, < 2.0)
33
- nokogiri (~> 1.6.0)
34
- oauth2
35
- hashie (3.4.6)
29
+ hashie (>= 3.4)
30
+ mime-types (>= 1.16, < 3.0)
31
+ oauth2 (~> 1.0)
32
+ hashie (3.5.6)
36
33
  highline (1.7.8)
37
- i18n (0.7.0)
38
- jar-dependencies (0.3.7)
39
- jeweler (2.2.1)
34
+ i18n (0.8.6)
35
+ jeweler (2.3.7)
40
36
  builder
41
- bundler (>= 1.0)
37
+ bundler (>= 1)
42
38
  git (>= 1.2.5)
43
- github_api (~> 0.11.0)
39
+ github_api (~> 0.16.0)
44
40
  highline (>= 1.6.15)
45
41
  nokogiri (>= 1.5.10)
46
42
  psych (~> 2.2)
47
43
  rake
48
44
  rdoc
49
- semver
50
- json (1.8.3)
51
- json (1.8.3-java)
45
+ semver2
46
+ json (2.1.0)
52
47
  jwt (1.5.6)
53
- mini_portile2 (2.1.0)
54
- minitest (5.10.1)
55
- multi_json (1.12.1)
48
+ mime-types (2.99.3)
49
+ mini_portile2 (2.3.0)
50
+ minitest (5.10.3)
51
+ multi_json (1.12.2)
56
52
  multi_xml (0.6.0)
57
53
  multipart-post (2.0.0)
58
- mysql2 (0.4.5)
59
- nokogiri (1.6.8.1)
60
- mini_portile2 (~> 2.1.0)
61
- nokogiri (1.6.8.1-java)
62
- oauth2 (1.2.0)
63
- faraday (>= 0.8, < 0.10)
54
+ mysql2 (0.4.9)
55
+ nokogiri (1.8.1)
56
+ mini_portile2 (~> 2.3.0)
57
+ oauth2 (1.4.0)
58
+ faraday (>= 0.8, < 0.13)
64
59
  jwt (~> 1.0)
65
60
  multi_json (~> 1.3)
66
61
  multi_xml (~> 0.5)
67
62
  rack (>= 1.2, < 3)
68
- psych (2.2.1)
69
- psych (2.2.1-java)
70
- jar-dependencies (>= 0.1.7)
71
- public_suffix (2.0.4)
72
- rack (2.0.1)
73
- rake (12.0.0)
74
- rdoc (3.12.2)
75
- json (~> 1.4)
76
- semver (1.0.1)
63
+ psych (2.2.4)
64
+ rack (2.0.3)
65
+ rake (12.1.0)
66
+ rdoc (5.1.0)
67
+ semver2 (3.4.2)
77
68
  shoulda (3.5.0)
78
69
  shoulda-context (~> 1.0, >= 1.0.1)
79
70
  shoulda-matchers (>= 1.4.1, < 3.0)
80
71
  shoulda-context (1.2.2)
81
72
  shoulda-matchers (2.8.0)
82
73
  activesupport (>= 3.0.0)
83
- simplecov (0.12.0)
74
+ simplecov (0.15.1)
84
75
  docile (~> 1.1.0)
85
76
  json (>= 1.8, < 3)
86
77
  simplecov-html (~> 0.10.0)
87
- simplecov-html (0.10.0)
88
- thread_safe (0.3.5)
89
- thread_safe (0.3.5-java)
90
- tzinfo (1.2.2)
78
+ simplecov-html (0.10.2)
79
+ thread_safe (0.3.6)
80
+ tzinfo (1.2.3)
91
81
  thread_safe (~> 0.1)
92
82
 
93
83
  PLATFORMS
94
- java
95
84
  ruby
96
85
 
97
86
  DEPENDENCIES
98
87
  activerecord (>= 4.1)
99
- bundler (~> 1.0)
100
- jeweler (~> 2.0, >= 2.0.1)
88
+ bundler (~> 1.13)
89
+ jeweler (>= 2.0.1)
101
90
  mysql2 (>= 0.4.0)
102
- rdoc (~> 3.12)
91
+ rdoc (>= 3.0)
103
92
  shoulda
104
- simplecov (~> 0)
93
+ simplecov
105
94
 
106
95
  BUNDLED WITH
107
- 1.13.6
96
+ 1.15.4
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.5.0
@@ -0,0 +1,6 @@
1
+ module MageRecord
2
+ class Coupon < ActiveRecord::Base
3
+ self.table_name = :salesrule_coupon
4
+ self.inheritance_column = :_type_disabled
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ module MageRecord
2
+ class Coupon
3
+ has_many :usage, class_name: 'CouponUsage'
4
+ end
5
+ end
@@ -0,0 +1,14 @@
1
+ require 'composite_primary_keys'
2
+
3
+ module MageRecord
4
+ class CouponUsage < ActiveRecord::Base
5
+ self.table_name = :salesrule_coupon_usage
6
+
7
+ # note: requires composite_primary_keys gem specific to installed version of ActiveRecord
8
+ # (see https://github.com/composite-primary-keys/composite_primary_keys)
9
+ self.primary_keys = :coupon_id, :customer_id
10
+
11
+ belongs_to :coupon
12
+ belongs_to :customer
13
+ end
14
+ end
@@ -5,32 +5,38 @@ module MageRecord
5
5
  "#{measurement} #{unit}"
6
6
  end
7
7
 
8
-
9
- def full_name
10
- if @fname.nil?
11
- @fname = "#{name} (#{uom})"
12
-
13
- # note: most bundles are not associated with any brand
14
- if brand
15
- @fname = "(#{brand}) #{@fname}"
16
- end
8
+ def attributes
9
+ if @attribs.nil?
10
+ @attribs = {}
17
11
 
18
12
  # only simple/virtual products will have custom attributes
19
13
  if %w{simple virtual}.include?(type_id)
20
- # get all custom product attributes specific to attribute set
14
+ # get all custom product attributes specific to attribute set (except "brand")
21
15
  attribs = set.downcase.gsub(/.*\((.+)\)/, "\\1").gsub(/ only/, '').split(' + ') - ['brand']
22
16
 
23
- attribs.each do |attr|
24
- @fname += " (#{send(attr.split(' ').join('_'))})"
17
+ attribs.map{ |a| a.split(' ').join('_') }.each do |attrib|
18
+ @attribs[attrib] = send(attrib)
25
19
  end
26
20
  end
27
21
  end
28
22
 
23
+ @attribs
24
+ end
25
+
26
+ def full_name(with_brand = true)
27
+ if @fname.nil?
28
+ @fname = "#{name} (#{uom})"
29
+
30
+ # note: most bundles are not associated with any brand
31
+ @fname = "(#{brand}) #{@fname}" if with_brand and brand
32
+
33
+ @fname = "#{@fname}#{attributes.values.map{ |a| " (#{a})" }.join}"
34
+ end
35
+
29
36
  # return cached full name
30
37
  @fname
31
38
  end
32
39
 
33
-
34
40
  def is_supplement?
35
41
  set.downcase.include? 'supplement'
36
42
  end
data/magerecord.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: magerecord 0.4.0 ruby lib
5
+ # stub: magerecord 0.5.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "magerecord".freeze
9
- s.version = "0.4.0"
9
+ s.version = "0.5.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Marc".freeze]
14
- s.date = "2016-12-07"
14
+ s.date = "2017-10-04"
15
15
  s.description = "A simple ActiveRecord wrapper for various Magento models".freeze
16
16
  s.email = "xerokill@gmail.com".freeze
17
17
  s.extra_rdoc_files = [
@@ -29,9 +29,12 @@ Gem::Specification.new do |s|
29
29
  "lib/magerecord.rb",
30
30
  "lib/magerecord/address.rb",
31
31
  "lib/magerecord/connection.rb",
32
+ "lib/magerecord/coupon.rb",
32
33
  "lib/magerecord/customer.rb",
33
34
  "lib/magerecord/eav_record.rb",
34
35
  "lib/magerecord/fitlion/club.rb",
36
+ "lib/magerecord/fitlion/coupon.rb",
37
+ "lib/magerecord/fitlion/coupon_usage.rb",
35
38
  "lib/magerecord/fitlion/ff_order.rb",
36
39
  "lib/magerecord/fitlion/order.rb",
37
40
  "lib/magerecord/fitlion/order_payment.rb",
@@ -54,7 +57,7 @@ Gem::Specification.new do |s|
54
57
  ]
55
58
  s.homepage = "http://github.com/mystix/magerecord".freeze
56
59
  s.licenses = ["MIT".freeze]
57
- s.rubygems_version = "2.5.2".freeze
60
+ s.rubygems_version = "2.6.13".freeze
58
61
  s.summary = "Simple ActiveRecord wrapper for Magento".freeze
59
62
 
60
63
  if s.respond_to? :specification_version then
@@ -64,27 +67,27 @@ Gem::Specification.new do |s|
64
67
  s.add_runtime_dependency(%q<activerecord>.freeze, [">= 4.1"])
65
68
  s.add_runtime_dependency(%q<mysql2>.freeze, [">= 0.4.0"])
66
69
  s.add_development_dependency(%q<shoulda>.freeze, [">= 0"])
67
- s.add_development_dependency(%q<rdoc>.freeze, ["~> 3.12"])
68
- s.add_development_dependency(%q<bundler>.freeze, ["~> 1.0"])
69
- s.add_development_dependency(%q<jeweler>.freeze, [">= 2.0.1", "~> 2.0"])
70
- s.add_development_dependency(%q<simplecov>.freeze, ["~> 0"])
70
+ s.add_development_dependency(%q<rdoc>.freeze, [">= 3.0"])
71
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 1.13"])
72
+ s.add_development_dependency(%q<jeweler>.freeze, [">= 2.0.1"])
73
+ s.add_development_dependency(%q<simplecov>.freeze, [">= 0"])
71
74
  else
72
75
  s.add_dependency(%q<activerecord>.freeze, [">= 4.1"])
73
76
  s.add_dependency(%q<mysql2>.freeze, [">= 0.4.0"])
74
77
  s.add_dependency(%q<shoulda>.freeze, [">= 0"])
75
- s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
76
- s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
77
- s.add_dependency(%q<jeweler>.freeze, [">= 2.0.1", "~> 2.0"])
78
- s.add_dependency(%q<simplecov>.freeze, ["~> 0"])
78
+ s.add_dependency(%q<rdoc>.freeze, [">= 3.0"])
79
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.13"])
80
+ s.add_dependency(%q<jeweler>.freeze, [">= 2.0.1"])
81
+ s.add_dependency(%q<simplecov>.freeze, [">= 0"])
79
82
  end
80
83
  else
81
84
  s.add_dependency(%q<activerecord>.freeze, [">= 4.1"])
82
85
  s.add_dependency(%q<mysql2>.freeze, [">= 0.4.0"])
83
86
  s.add_dependency(%q<shoulda>.freeze, [">= 0"])
84
- s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
85
- s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
86
- s.add_dependency(%q<jeweler>.freeze, [">= 2.0.1", "~> 2.0"])
87
- s.add_dependency(%q<simplecov>.freeze, ["~> 0"])
87
+ s.add_dependency(%q<rdoc>.freeze, [">= 3.0"])
88
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.13"])
89
+ s.add_dependency(%q<jeweler>.freeze, [">= 2.0.1"])
90
+ s.add_dependency(%q<simplecov>.freeze, [">= 0"])
88
91
  end
89
92
  end
90
93
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: magerecord
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-07 00:00:00.000000000 Z
11
+ date: 2017-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -56,30 +56,30 @@ dependencies:
56
56
  name: rdoc
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '3.12'
61
+ version: '3.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '3.12'
68
+ version: '3.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '1.0'
75
+ version: '1.13'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '1.0'
82
+ version: '1.13'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: jeweler
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -87,9 +87,6 @@ dependencies:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: 2.0.1
90
- - - "~>"
91
- - !ruby/object:Gem::Version
92
- version: '2.0'
93
90
  type: :development
94
91
  prerelease: false
95
92
  version_requirements: !ruby/object:Gem::Requirement
@@ -97,21 +94,18 @@ dependencies:
97
94
  - - ">="
98
95
  - !ruby/object:Gem::Version
99
96
  version: 2.0.1
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '2.0'
103
97
  - !ruby/object:Gem::Dependency
104
98
  name: simplecov
105
99
  requirement: !ruby/object:Gem::Requirement
106
100
  requirements:
107
- - - "~>"
101
+ - - ">="
108
102
  - !ruby/object:Gem::Version
109
103
  version: '0'
110
104
  type: :development
111
105
  prerelease: false
112
106
  version_requirements: !ruby/object:Gem::Requirement
113
107
  requirements:
114
- - - "~>"
108
+ - - ">="
115
109
  - !ruby/object:Gem::Version
116
110
  version: '0'
117
111
  description: A simple ActiveRecord wrapper for various Magento models
@@ -132,9 +126,12 @@ files:
132
126
  - lib/magerecord.rb
133
127
  - lib/magerecord/address.rb
134
128
  - lib/magerecord/connection.rb
129
+ - lib/magerecord/coupon.rb
135
130
  - lib/magerecord/customer.rb
136
131
  - lib/magerecord/eav_record.rb
137
132
  - lib/magerecord/fitlion/club.rb
133
+ - lib/magerecord/fitlion/coupon.rb
134
+ - lib/magerecord/fitlion/coupon_usage.rb
138
135
  - lib/magerecord/fitlion/ff_order.rb
139
136
  - lib/magerecord/fitlion/order.rb
140
137
  - lib/magerecord/fitlion/order_payment.rb
@@ -174,7 +171,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
171
  version: '0'
175
172
  requirements: []
176
173
  rubyforge_project:
177
- rubygems_version: 2.5.2
174
+ rubygems_version: 2.6.13
178
175
  signing_key:
179
176
  specification_version: 4
180
177
  summary: Simple ActiveRecord wrapper for Magento