From 4704e927e3be68db4c8b3b79a6844a74d4c1f2c6 Mon Sep 17 00:00:00 2001 From: Will Marshall Date: Fri, 14 Feb 2014 11:31:27 +1100 Subject: [PATCH] Form toggling! Fuck yeah --- .../darkswarm/controllers/checkout_controller.js.coffee | 5 ++++- app/views/shop/checkout/_form.html.haml | 9 +++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/app/assets/javascripts/darkswarm/controllers/checkout_controller.js.coffee b/app/assets/javascripts/darkswarm/controllers/checkout_controller.js.coffee index b2df025a13..7bfef9d1e2 100644 --- a/app/assets/javascripts/darkswarm/controllers/checkout_controller.js.coffee +++ b/app/assets/javascripts/darkswarm/controllers/checkout_controller.js.coffee @@ -1,2 +1,5 @@ angular.module("Checkout").controller "CheckoutCtrl", ($scope, $rootScope) -> - $scope.require_ship_method = false + $scope.require_ship_address = false + $scope.shipping_method = -1 + $scope.shippingMethodChanged = -> + $scope.require_ship_address = $("#order_shipping_method_" + $scope.shipping_method).attr("data-require-ship-address") diff --git a/app/views/shop/checkout/_form.html.haml b/app/views/shop/checkout/_form.html.haml index e3b998d530..8a987be285 100644 --- a/app/views/shop/checkout/_form.html.haml +++ b/app/views/shop/checkout/_form.html.haml @@ -1,5 +1,5 @@ %checkout{"ng-app" => "Checkout", "ng-controller" => "CheckoutCtrl"} - = form_for @order, url: "test", html: { class: "custom" } do |f| + = form_for @order, url: "test" do |f| .large-8.columns %fieldset#details %legend Customer Details @@ -50,13 +50,14 @@ .row .large-12.columns %label - = f.radio_button :shipping_method, ship_method.id, + = f.radio_button :shipping_method, ship_method.id, + "ng-model" => "shipping_method", + "ng-change" => "shippingMethodChanged()", "data-require-ship-address" => ship_method.require_ship_address - %span.custom.radio = ship_method.name = fields_for @order.ship_address do |sa| - #ship_address{"ng-show" => "require_ship_method"} + #ship_address{"ng-show" => "require_ship_address"} .row .large-12.columns = sa.label :address1