diff --git a/app/controllers/partner_requests_controller.rb b/app/controllers/partner_requests_controller.rb index 293159cf..0bd12435 100644 --- a/app/controllers/partner_requests_controller.rb +++ b/app/controllers/partner_requests_controller.rb @@ -15,9 +15,12 @@ def new @partner_request.item_requests.build # required to render the empty items form end + def confirm + @partner_request = build_partner_request + end + def create - @partner_request = PartnerRequest.new(partner_request_params.merge(partner_id: current_partner.id)) - @partner_request.item_requests << create_item_requests + @partner_request = build_partner_request respond_to do |format| if @partner_request.save # NOTE(chaserx): send request to diaper app. @@ -40,12 +43,17 @@ def show private + def build_partner_request + partner_request = PartnerRequest.new(partner_request_params.merge(partner_id: current_partner.id)) + partner_request.item_requests << create_item_requests + partner_request + end + def partner_request_params params.require(:partner_request).permit(:comments, :item_requests_attributes) end def get_full_item_values(id) - valid_items = DiaperBankClient.get_available_items(current_partner.diaper_bank_id) valid_items.find { |item| item["id"] == id.to_i } end diff --git a/app/views/partner_requests/_form.html.erb b/app/views/partner_requests/_form.html.erb new file mode 100644 index 00000000..a03daed2 --- /dev/null +++ b/app/views/partner_requests/_form.html.erb @@ -0,0 +1,19 @@ +<%= form.input :comments, label: "Comments:", as: :text, class: "form-control", wrapper: :input_group %> + + + + + + + + + + + <%= render 'item_request', form: form %> + +
Item RequestedQuantity
+
+ <%= add_item_button('Add Another Item') do %> + <%= render 'item_request', form: form, object: partner_request.item_requests.build %> + <% end %> +
diff --git a/app/views/partner_requests/confirm.html.erb b/app/views/partner_requests/confirm.html.erb new file mode 100644 index 00000000..82507bdd --- /dev/null +++ b/app/views/partner_requests/confirm.html.erb @@ -0,0 +1,61 @@ +
+
+
+
+ <% content_for :title, "New Request - #{current_partner.name}" %> +

   + Confirm Request + for <%= current_partner.name %> +

+
+ +
+
+
+ +
+
+
+
+ +
+
+

Please double check the values that you inputted.

+
+
+
+
+
+
+ +
+
+
+
+ +
+
+ + <%= simple_form_for @partner_request, html: {role: 'form', class: 'form-horizontal'} do |form| %> + + <%= render "form", form: form, partner_request: @partner_request %> + +
+ +
+ + <% end %> +
+
+
+
+
diff --git a/app/views/partner_requests/new.html.erb b/app/views/partner_requests/new.html.erb index 41ed2934..6290be19 100644 --- a/app/views/partner_requests/new.html.erb +++ b/app/views/partner_requests/new.html.erb @@ -27,27 +27,9 @@
- <%= simple_form_for @partner_request, html: {role: 'form', class: 'form-horizontal'} do |form| %> + <%= simple_form_for @partner_request, url: confirm_partner_requests_path, html: {role: 'form', class: 'form-horizontal'} do |form| %> - <%= form.input :comments, label: "Comments:", as: :text, class: "form-control", wrapper: :input_group %> - - - - - - - - - - - <%= render 'item_request', form: form %> - -
Item RequestedQuantity
-
- <%= add_item_button('Add Another Item') do %> - <%= render 'item_request', form: form, object: @partner_request.item_requests.build %> - <% end %> -
+ <%= render "form", form: form, partner_request: @partner_request %>
diff --git a/config/routes.rb b/config/routes.rb index 653e6b04..d1922bb9 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -36,7 +36,11 @@ end resources :users, only: [:index] - resources :partner_requests, only: [:new, :create, :show, :index] + resources :partner_requests, only: [:new, :create, :show, :index] do + collection do + post :confirm + end + end resources :individuals_requests, only: [:new, :create] resources :family_requests, only: [:new, :create] do resource :pickup_sheets, only: :show