app/views/piggybak/orders/submit.html.erb in piggybak-0.5.5 vs app/views/piggybak/orders/submit.html.erb in piggybak-0.6.0
- old
+ new
@@ -4,11 +4,11 @@
<%= form_for @order, :url => piggybak.orders_url, :method => "POST" do |f| %>
<% if @order.errors.any? -%>
<div id="checkout_error">
<b>You have errors with your submission:</b><br />
-<%= raw @order.errors.full_messages.join("<br />") %>
+<%= raw @order.errors.full_messages.collect { |b| b.gsub(/^Line items payment/, 'Payment').gsub(/^Line items shipment shipping/, 'Shipping') }.join("<br />") %>
</div>
<% end -%>
<div class="clear"></div>
<div id="user_details">
@@ -48,62 +48,68 @@
</div>
<div id="add_details">
<div id="shipping">
<h3>Shipping Option</h3>
- <%= f.fields_for :shipments, f.object.shipments.build do |shipment| %>
- <div class="item">
- <%= shipment.label :shipping_method_id %>
- <%= shipment.select :shipping_method_id, [] %>
- <div id="shipping_spinner" style="display:none;">
- <%= image_tag "ajax-loader.gif" %>
- </div>
- <div id="shipping_default" style="display:none;">
- Please enter a shipping address.
- </div>
- <div id="shipping_empty" style="display:none;">
- No shipping methods found.
- </div>
- </div>
+ <%= f.fields_for :line_items, @order.line_items.detect { |li| li.line_item_type == "shipment" } do |line_item_f| %>
+ <%= line_item_f.hidden_field :line_item_type, { :value => "shipment" } %>
+ <%= line_item_f.fields_for :shipment do |shipment| %>
+ <div class="item">
+ <%= shipment.label :shipping_method_id %>
+ <%= shipment.select :shipping_method_id, [] %>
+ <div id="shipping_spinner" style="display:none;">
+ <%= image_tag "ajax-loader.gif" %>
+ </div>
+ <div id="shipping_default" style="display:none;">
+ Please enter a shipping address.
+ </div>
+ <div id="shipping_empty" style="display:none;">
+ No shipping methods found.
+ </div>
+ </div>
+ <% end -%>
<% end -%>
</div>
<div id="payment">
<h3>Payment</h3>
- <%= f.fields_for :payments, f.object.payments.build do |payment| %>
- <div class="item">
- <%= payment.label :number %>
- <% if @order.errors.keys.include?("payments.number".to_sym) %>
- <span class="field_with_errors">
- <%= payment.text_field :number %>
- </span>
- <% else -%>
- <%= payment.text_field :number %>
+ <%= f.fields_for :line_items, @order.line_items.detect { |li| li.line_item_type == "payment" } do |line_item_f| %>
+ <%= line_item_f.hidden_field :line_item_type, { :value => "payment" } %>
+ <%= line_item_f.fields_for :payment do |payment| %>
+ <div class="item">
+ <%= payment.label :number %>
+ <% if @order.errors.keys.include?("payments.number".to_sym) %>
+ <span class="field_with_errors">
+ <%= payment.text_field :number %>
+ </span>
+ <% else -%>
+ <%= payment.text_field :number %>
+ <% end -%>
+ </div>
+
+ <div class="item">
+ <%= payment.label :verification_value %>
+ <% if @order.errors.keys.include?("payments.verification_value".to_sym) %>
+ <span class="field_with_errors">
+ <%= payment.text_field :verification_value %>
+ </span>
+ <% else -%>
+ <%= payment.text_field :verification_value %>
+ <% end -%>
+ </div>
+
+ <div class="item">
+ <%= payment.label :month %>
+ <% if @order.errors.keys.include?("payments.verification_value".to_sym) %>
+ <span class="field_with_errors">
+ <%= payment.select :month, 1.upto(12).to_a %> /
+ <%= payment.select :year, Time.now.year.upto(Time.now.year + 10).to_a %>
+ </span>
+ <% else -%>
+ <%= payment.select :month, 1.upto(12).to_a %> /
+ <%= payment.select :year, Time.now.year.upto(Time.now.year + 10).to_a %>
+ <% end -%>
+ </div>
<% end -%>
- </div>
-
- <div class="item">
- <%= payment.label :verification_value %>
- <% if @order.errors.keys.include?("payments.verification_value".to_sym) %>
- <span class="field_with_errors">
- <%= payment.text_field :verification_value %>
- </span>
- <% else -%>
- <%= payment.text_field :verification_value %>
- <% end -%>
- </div>
-
- <div class="item">
- <%= payment.label :month %>
- <% if @order.errors.keys.include?("payments.verification_value".to_sym) %>
- <span class="field_with_errors">
- <%= payment.select :month, 1.upto(12).to_a %> /
- <%= payment.select :year, Time.now.year.upto(Time.now.year + 10).to_a %>
- </span>
- <% else -%>
- <%= payment.select :month, 1.upto(12).to_a %> /
- <%= payment.select :year, Time.now.year.upto(Time.now.year + 10).to_a %>
- <% end -%>
- </div>
<% end -%>
</div>
<div id="submit">
<%= f.submit %>
</div>