diff --git a/front-api/controllers/cart.rb b/front-api/controllers/cart.rb
index 88d0af2..791de1c 100644
--- a/front-api/controllers/cart.rb
+++ b/front-api/controllers/cart.rb
@@ -53,6 +53,21 @@ update_delivery_destination = ->() {
put '/cart/delivery_destination', &update_delivery_destination
post '/cart/delivery_destination', &update_delivery_destination
+get '/cart/recipient_destination' do
+ cart = Cart.just_find(anonymous_id, logged_in_user_id)
+ cart.recipient.to_json(:except => [:created_at, :email_verification_code, :phone_verification_code])
+end
+
+update_recipient_destination = ->() {
+ cart = Cart.just_find(anonymous_id, logged_in_user_id)
+ allowed_keys = ["name", "address", "place", "postal_code", "phone", "email"]
+ params = @json_params.reject { |key,_| !allowed_keys.include?(key) }
+ cart.recipient_destination.update_attributes(params)
+ cart.recipient_destination.save!
+ cart.recipient_destination.to_json(:except => [:created_at, :email_verification_code, :phone_verification_code])
+}
+put '/cart/recipient_destination', &update_delivery_destination
+post '/cart/recipient_destination', &update_delivery_destination
def report_to_trello(cart)
Thread.new do
diff --git a/front-ui/app/actions/cartActions.js b/front-ui/app/actions/cartActions.js
index 68c6f85..aec5b04 100644
--- a/front-ui/app/actions/cartActions.js
+++ b/front-ui/app/actions/cartActions.js
@@ -47,6 +47,13 @@ var CartActions = {
value: value
});
},
+ changeRecipientDestinationProperty: function(property, value) {
+ AppDispatcher.handleAction({
+ actionType: CartConstants.CHANGE_RECIPIENT_DESTINATION_PROPERTY,
+ propertyName: property,
+ value: value
+ });
+ },
confirmDelivery: function() {
AppDispatcher.handleAction({
actionType: CartConstants.CONFIRM_DELIVERY,
@@ -75,4 +82,4 @@ var CartActions = {
}
};
-module.exports = CartActions;
\ No newline at end of file
+module.exports = CartActions;
diff --git a/front-ui/app/components/cart/checkoutPage.js b/front-ui/app/components/cart/checkoutPage.js
index 4e78c0c..90a47d4 100644
--- a/front-ui/app/components/cart/checkoutPage.js
+++ b/front-ui/app/components/cart/checkoutPage.js
@@ -24,7 +24,7 @@ var CheckoutPage = React.createClass({
amount={CartStore.getAmount()}
deliveryCost={CartStore.getDeliveryCost(false)}
disabled={!this.state.isDeliveryDestinationValid}
- cashOnDeliveryDisabled={!this.state.isDeliveryDestinationValid || this.state.deliveryDestination.get('gift')}
+ cashOnDeliveryDisabled={!this.state.isDeliveryDestinationValid}
onCashClick={this._onOrderClick}
/>
@@ -115,7 +115,7 @@ var CheckoutPage = React.createClass({