cheddargetter_client_rails 0.1.26 → 0.1.27
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.
- data/README.rdoc +108 -108
- data/VERSION +1 -1
- data/cheddargetter_client_rails.gemspec +8 -9
- data/lib/cheddargetter_client_rails.rb +1 -1
- metadata +92 -104
data/README.rdoc
CHANGED
@@ -36,24 +36,24 @@ These are the only required columns however you can change their names locally v
|
|
36
36
|
has_subscription :customerCode => :customer_code,
|
37
37
|
:firstName => :name,
|
38
38
|
:lastName => :l_name,
|
39
|
-
:email
|
40
|
-
:planCode => "FREE_PLAN"
|
39
|
+
:email => :business_email,
|
40
|
+
:planCode => "FREE_PLAN"
|
41
41
|
end
|
42
42
|
|
43
43
|
Note that the plan code can also take a string.
|
44
44
|
|
45
45
|
The has_subscription will also takes additional key/values of items that appear both in your records for the user and CheddarGetter's records. For instance zip code is a common one. Here are others:
|
46
46
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
47
|
+
:ccFirstName
|
48
|
+
:ccLastName
|
49
|
+
:ccExpiration
|
50
|
+
:ccNumber
|
51
|
+
:ccCountry
|
52
|
+
:ccAddress
|
53
|
+
:ccCity
|
54
|
+
:ccState
|
55
|
+
:company
|
56
|
+
:zip
|
57
57
|
|
58
58
|
When the save is called on the subscription object or the user it grabs all shared attributes from your ActiveRecord record.
|
59
59
|
|
@@ -61,21 +61,21 @@ When the save is called on the subscription object or the user it grabs all shar
|
|
61
61
|
|
62
62
|
Make sure the subscription is always set on the user as some data may only exist there.
|
63
63
|
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
64
|
+
class SubscriptionController < ApplicationController
|
65
|
+
def edit
|
66
|
+
@user = current_user
|
67
|
+
end
|
68
68
|
|
69
|
-
|
70
|
-
|
69
|
+
def update
|
70
|
+
@user = current_user
|
71
71
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
72
|
+
if @user.update_attributes(params[:user])
|
73
|
+
redirect_to edit_credit_card_path, :flash => {:success => 'Billing information updated'}
|
74
|
+
else
|
75
|
+
render 'edit'
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
79
|
|
80
80
|
Or in a user controller
|
81
81
|
|
@@ -113,89 +113,89 @@ The user save will take care of saving the subscription to CheddarGetter.
|
|
113
113
|
In order to save through the user param it is important to nest the subscription params
|
114
114
|
in the user params with fields for. This is an example of how to set up the form properly.
|
115
115
|
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
116
|
+
<%= form_for(@user) do |f| %>
|
117
|
+
<%= @user.errors.full_messages.each do |message|%>
|
118
|
+
<%= message %>
|
119
|
+
<% end %>
|
120
|
+
<% if @user.errors.any? %>
|
121
|
+
<div id="error_explanation">
|
122
|
+
<h2><%= pluralize(@user.errors.count, "error") %> prohibited this user from being saved:</h2>
|
123
|
+
|
124
|
+
<ul>
|
125
|
+
<% @user.errors.full_messages.each do |msg| %>
|
126
|
+
<li><%= msg %></li>
|
127
|
+
<% end %>
|
128
|
+
</ul>
|
129
|
+
</div>
|
130
|
+
<% end %>
|
131
|
+
|
132
|
+
<div class="field">
|
133
|
+
<%= f.label :email %><br />
|
134
|
+
<%= f.text_field :email %>
|
135
|
+
</div>
|
136
|
+
<div class="field">
|
137
|
+
<%= f.label :first_name %><br />
|
138
|
+
<%= f.text_field :first_name %>
|
139
|
+
</div>
|
140
|
+
<div class="field">
|
141
|
+
<%= f.label :last_name %><br />
|
142
|
+
<%= f.text_field :last_name %>
|
143
|
+
</div>
|
144
|
+
<div class="field">
|
145
|
+
<%= f.label :plan_code, "User Plan" %><br />
|
146
|
+
<%= f.select :plan_code, User::Plans #This is a collection of my plans, ie, [['Free Plan', 'FREE_PLAN'], ['Paid Plan'], ['PAID_PLAN']]. You will need to use your own plans here.
|
147
|
+
%>
|
148
|
+
</div>
|
149
|
+
|
150
|
+
The following fields are only required if selecting a paid plan.
|
151
|
+
<%= fields_for(:'user[subscription]') do |s| %> #THIS IS THE TRICKY WAY TO NEST THE SUBSCRIPTION PROPERLY.
|
152
|
+
<dl>
|
153
|
+
<dt>First Name:</dt>
|
154
|
+
<dd>
|
155
|
+
<%= s.text_field :ccFirstName,:autocomplete => "off" %>
|
156
|
+
</dd>
|
157
|
+
|
158
|
+
<dt>Last Name:</dt>
|
159
|
+
<dd>
|
160
|
+
<%= s.text_field :ccLastName, :autocomplete => "off" %>
|
161
|
+
</dd>
|
162
|
+
|
163
|
+
<dt>Card Number:</dt>
|
164
|
+
<dd>
|
165
|
+
<%= s.text_field :ccNumber,:autocomplete => "off" %>
|
166
|
+
</dd>
|
167
|
+
<dt>Expiration Date:</dt>
|
168
|
+
<dd>
|
169
|
+
<%= s.text_field :ccExpiration, :autocomplete => 'off' %>
|
170
|
+
</dd>
|
171
|
+
<dt>Address:</dt>
|
172
|
+
<dd>
|
173
|
+
<%= s.text_field :ccAddress, :autocomplete => 'off' %>
|
174
|
+
</dd>
|
175
|
+
<dt>City:</dt>
|
176
|
+
<dd>
|
177
|
+
<%= s.text_field :ccCity, :autocomplete => 'off' %>
|
178
|
+
</dd>
|
179
|
+
<dt>State:</dt>
|
180
|
+
<dd>
|
181
|
+
<%= s.text_field :ccState, :autocomplete => 'off' %>
|
182
|
+
</dd>
|
183
|
+
<dt>Zip Code:</dt>
|
184
|
+
<dd>
|
185
|
+
<%= s.text_field :zip, :autocomplete => 'off' %>
|
186
|
+
</dd>
|
187
|
+
<dt>Country:</dt>
|
188
|
+
<dd>
|
189
|
+
<%= s.text_field :ccCountry, :autocomplete => 'off' %>
|
190
|
+
</dd>
|
191
|
+
</dl>
|
192
|
+
<% end %>
|
193
|
+
|
194
|
+
<div class="actions">
|
195
|
+
<%= f.submit %>
|
196
|
+
</div>
|
197
|
+
<% end %>
|
198
|
+
|
199
199
|
You'll want to user the current_subscription method to get a subscription object with current data.
|
200
200
|
CheddarGetter only stores the last 4 of the credit card. This data is gotten by calling ccLastFour
|
201
201
|
on the subscription object gotten through the current_subscription call.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.27
|
@@ -4,14 +4,14 @@
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
|
-
s.name =
|
8
|
-
s.version = "0.1.
|
7
|
+
s.name = "cheddargetter_client_rails"
|
8
|
+
s.version = "0.1.27"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Brent Wooden"]
|
12
|
-
s.date =
|
13
|
-
s.description =
|
14
|
-
s.email =
|
12
|
+
s.date = "2013-01-25"
|
13
|
+
s.description = "Integrates CheddarGetter api with Active Record. Uses cheddargetter_client_ruby."
|
14
|
+
s.email = "brent.wooden@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"LICENSE.txt",
|
17
17
|
"README.rdoc"
|
@@ -45,14 +45,13 @@ Gem::Specification.new do |s|
|
|
45
45
|
"spec/record_identifier_spec.rb",
|
46
46
|
"spec/spec_helper.rb"
|
47
47
|
]
|
48
|
-
s.homepage =
|
48
|
+
s.homepage = "http://github.com/BrentW/cheddargetter_client_rails"
|
49
49
|
s.licenses = ["MIT"]
|
50
50
|
s.require_paths = ["lib"]
|
51
|
-
s.rubygems_version =
|
52
|
-
s.summary =
|
51
|
+
s.rubygems_version = "1.8.24"
|
52
|
+
s.summary = "Integrates CheddarGetter api with Active Record"
|
53
53
|
|
54
54
|
if s.respond_to? :specification_version then
|
55
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
56
55
|
s.specification_version = 3
|
57
56
|
|
58
57
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
metadata
CHANGED
@@ -1,125 +1,120 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: cheddargetter_client_rails
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 1
|
9
|
-
- 26
|
10
|
-
version: 0.1.26
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.27
|
5
|
+
prerelease:
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Brent Wooden
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
12
|
+
date: 2013-01-25 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
24
15
|
name: activesupport
|
25
|
-
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
26
17
|
none: false
|
27
|
-
requirements:
|
28
|
-
- -
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
hash: 9
|
31
|
-
segments:
|
32
|
-
- 2
|
33
|
-
- 3
|
34
|
-
- 5
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
35
21
|
version: 2.3.5
|
36
|
-
requirement: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
22
|
type: :runtime
|
39
23
|
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 2.3.5
|
30
|
+
- !ruby/object:Gem::Dependency
|
40
31
|
name: cheddargetter_client_ruby
|
41
|
-
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
42
33
|
none: false
|
43
|
-
requirements:
|
44
|
-
- -
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
|
47
|
-
|
48
|
-
- 0
|
49
|
-
version: "0"
|
50
|
-
requirement: *id002
|
51
|
-
- !ruby/object:Gem::Dependency
|
52
|
-
type: :development
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
53
39
|
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
54
47
|
name: rspec
|
55
|
-
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
56
49
|
none: false
|
57
|
-
requirements:
|
50
|
+
requirements:
|
58
51
|
- - ~>
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
hash: 3
|
61
|
-
segments:
|
62
|
-
- 2
|
63
|
-
- 3
|
64
|
-
- 0
|
52
|
+
- !ruby/object:Gem::Version
|
65
53
|
version: 2.3.0
|
66
|
-
requirement: *id003
|
67
|
-
- !ruby/object:Gem::Dependency
|
68
54
|
type: :development
|
69
55
|
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 2.3.0
|
62
|
+
- !ruby/object:Gem::Dependency
|
70
63
|
name: bundler
|
71
|
-
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
72
65
|
none: false
|
73
|
-
requirements:
|
66
|
+
requirements:
|
74
67
|
- - ~>
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
hash: 23
|
77
|
-
segments:
|
78
|
-
- 1
|
79
|
-
- 0
|
80
|
-
- 0
|
68
|
+
- !ruby/object:Gem::Version
|
81
69
|
version: 1.0.0
|
82
|
-
requirement: *id004
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
70
|
type: :development
|
85
71
|
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 1.0.0
|
78
|
+
- !ruby/object:Gem::Dependency
|
86
79
|
name: jeweler
|
87
|
-
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
88
81
|
none: false
|
89
|
-
requirements:
|
82
|
+
requirements:
|
90
83
|
- - ~>
|
91
|
-
- !ruby/object:Gem::Version
|
92
|
-
hash: 15
|
93
|
-
segments:
|
94
|
-
- 1
|
95
|
-
- 6
|
96
|
-
- 0
|
84
|
+
- !ruby/object:Gem::Version
|
97
85
|
version: 1.6.0
|
98
|
-
requirement: *id005
|
99
|
-
- !ruby/object:Gem::Dependency
|
100
86
|
type: :development
|
101
87
|
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 1.6.0
|
94
|
+
- !ruby/object:Gem::Dependency
|
102
95
|
name: rcov
|
103
|
-
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
104
97
|
none: false
|
105
|
-
requirements:
|
106
|
-
- -
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
113
110
|
description: Integrates CheddarGetter api with Active Record. Uses cheddargetter_client_ruby.
|
114
111
|
email: brent.wooden@gmail.com
|
115
112
|
executables: []
|
116
|
-
|
117
113
|
extensions: []
|
118
|
-
|
119
|
-
extra_rdoc_files:
|
114
|
+
extra_rdoc_files:
|
120
115
|
- LICENSE.txt
|
121
116
|
- README.rdoc
|
122
|
-
files:
|
117
|
+
files:
|
123
118
|
- .document
|
124
119
|
- .rspec
|
125
120
|
- Gemfile
|
@@ -147,39 +142,32 @@ files:
|
|
147
142
|
- spec/naming_spec.rb
|
148
143
|
- spec/record_identifier_spec.rb
|
149
144
|
- spec/spec_helper.rb
|
150
|
-
has_rdoc: true
|
151
145
|
homepage: http://github.com/BrentW/cheddargetter_client_rails
|
152
|
-
licenses:
|
146
|
+
licenses:
|
153
147
|
- MIT
|
154
148
|
post_install_message:
|
155
149
|
rdoc_options: []
|
156
|
-
|
157
|
-
require_paths:
|
150
|
+
require_paths:
|
158
151
|
- lib
|
159
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
152
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
160
153
|
none: false
|
161
|
-
requirements:
|
162
|
-
- -
|
163
|
-
- !ruby/object:Gem::Version
|
164
|
-
|
165
|
-
segments:
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
158
|
+
segments:
|
166
159
|
- 0
|
167
|
-
|
168
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
|
+
hash: 3234761378258639115
|
161
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
169
162
|
none: false
|
170
|
-
requirements:
|
171
|
-
- -
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
|
174
|
-
segments:
|
175
|
-
- 0
|
176
|
-
version: "0"
|
163
|
+
requirements:
|
164
|
+
- - ! '>='
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
177
167
|
requirements: []
|
178
|
-
|
179
168
|
rubyforge_project:
|
180
|
-
rubygems_version: 1.
|
169
|
+
rubygems_version: 1.8.24
|
181
170
|
signing_key:
|
182
171
|
specification_version: 3
|
183
172
|
summary: Integrates CheddarGetter api with Active Record
|
184
173
|
test_files: []
|
185
|
-
|