ifd_tools 0.2.6 → 0.2.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -26,6 +26,14 @@ class ApiController < ApplicationController
26
26
  # Just make sure that :account_level is outside of the params[:request][:customer] hash
27
27
  #
28
28
  # customer.account_level = CustomerAccountLevel.find_by_abbreviation(params[:account_level])
29
+
30
+ # Customizing the JSON/XML responses on success
31
+ #
32
+ # You have no control over what the response is when there is a failure (that's provided via ActiveRecord validations)
33
+ # However, you can customize the response on a successfuly registration (no validation errors)
34
+ #
35
+ # @response = { first_name: customer.first_name, auth_token: customer.authentication_token }
36
+ # The @response object will be used in generating a response, if provided
29
37
 
30
38
  customer
31
39
  end
@@ -8,11 +8,12 @@ module IfdTools
8
8
  if params[:request][:customer]
9
9
  @customer = Customer.new params[:request][:customer]
10
10
  @customer = instance_exec @customer, &self.class.create_customer_block
11
- if @customer.valid?
12
- @customer.save
11
+ if @customer.save
13
12
  respond_to do |format|
14
- format.json { render json: { success: "Registered" }, status: :ok }
15
- format.xml { render xml: { success: "Registered" }, status: :ok }
13
+ response = { success: "Registered" }
14
+ response.merge! @response if @response
15
+ format.json { render json: response, status: :ok }
16
+ format.xml { render xml: response, status: :ok }
16
17
  end
17
18
  else
18
19
  respond_to do |format|
@@ -1,3 +1,3 @@
1
1
  module IfdTools
2
- VERSION = "0.2.6"
2
+ VERSION = "0.2.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ifd_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-30 00:00:00.000000000 Z
12
+ date: 2013-01-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -460,7 +460,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
460
460
  version: '0'
461
461
  segments:
462
462
  - 0
463
- hash: 3754776286233667365
463
+ hash: 2521405696788137394
464
464
  required_rubygems_version: !ruby/object:Gem::Requirement
465
465
  none: false
466
466
  requirements:
@@ -469,7 +469,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
469
469
  version: '0'
470
470
  segments:
471
471
  - 0
472
- hash: 3754776286233667365
472
+ hash: 2521405696788137394
473
473
  requirements: []
474
474
  rubyforge_project:
475
475
  rubygems_version: 1.8.24