- @page_title = 'Order #' + @order.number
= content_for :header do
%p.buttons
= link_to "Edit", [:edit, @order], :class => 'button'
= link_to "Despatch Note", [:despatch_note, @order], :class => 'button', :rel => 'print'
= link_to "Back to orders", :orders, :class => 'button grey'
%h2.orders OrderĀ ##{@order.number}
#order
.details
.left
%dl
%dt Name
%dd= @order.first_name + ' ' + @order.last_name
%dt Company
%dd= @order.company.blank? ? '-' : @order.company
%dt Billing#{@order.separate_delivery_address? ? '' : '/Delivery'} Address
%dd= @order.billing_address1
%dd= @order.billing_address2
%dd= @order.billing_address3
%dd= @order.billing_address4
%dd= @order.billing_postcode
%dd= @order.billing_country.try(:name)
- if @order.separate_delivery_address?
%dt Delivery Address
%dd= @order.delivery_name
%dd= @order.delivery_address1
%dd= @order.delivery_address2
%dd= @order.delivery_address3
%dd= @order.delivery_address4
%dd= @order.delivery_postcode
%dd= @order.delivery_country.try(:name)
.right
%dl
%dt E-Mail Address
%dd= mail_to @order.email_address
%dt Telephone
%dd= @order.phone_number
%dt Weight
%dd= number_to_weight @order.total_weight
%dt Build Time
%dd= distance_of_time_in_words(@order.created_at, @order.received_at)
- if @order.invoiced?
%dt Invoice Number
%dd= @order.invoice_number
%dt Order Balance
%dd= boolean_tag @order.paid_in_full?, nil, :true_text => number_to_currency(@order.balance), :false_text => number_to_currency(@order.balance)
- if @order.accepted? && !@order.shipped?
= form_tag [:ship, @order] do
%dl.form
%dt.padding= label_tag 'consignment_number', 'Consignment Number'
%dd= text_field_tag 'consignment_number', '', :class => 'text'
%dl.form
%dd= submit_tag "Mark as shipped", :class => 'button green button-mini'
- unless @order.accepted? || @order.rejected?
%dl.form
%dd
= link_to "Accept", [:accept, @order], :method => :post, :class => 'button green'
= link_to "Reject", [:reject, @order], :method => :post, :class => 'button purple'
.status-bar
%ul
- if @order.received?
%li.received
%h4 Order Received
%p on #{@order.received_at.to_s(:short)} from #{@order.ip_address}
- if @order.accepted?
%li.accepted
%h4 Order Accepted
%p on #{@order.accepted_at.to_s(:short)} by #{@order.accepter.try(:short_name) || 'Unknown'}
- elsif @order.rejected?
%li.rejected
%h4 Order rejected
%p on #{@order.rejected_at.to_s(:short)} by #{@order.rejecter.try(:short_name) || 'Unknown'}
- if @order.shipped?
%li.shipped
%h4 Order Shipped
%p on #{@order.shipped_at.to_s(:short)} by #{@order.shipper.try(:short_name) || 'Unknown'}
- if @order.courier_tracking_url
%p= link_to "Tracking URL", @order.courier_tracking_url
- else
%p Consignment # #{@order.consignment_number}
= field_set_tag "Order Items", :class => 'padded' do
.order_items
.table
%table.data
%thead
%tr
%th.qty Qty
%th Item
%th SKU
%th.money Cost
%th.money Price
%th.money= Shoppe.settings.tax_name
%th.money Sub-Total
%tbody
- for item in @order.order_items
%tr
%td.qty= item.quantity
%td.product= item.ordered_item.full_name
%td.sku= item.ordered_item.sku
%td.money= number_to_currency item.total_cost
%td.money= number_to_currency item.sub_total
%td.money= number_to_currency item.tax_amount
%td.money= number_to_currency item.total
- if @order.delivery_service
%td.qty
%td.product= link_to @order.delivery_service.name, [:edit, @order.delivery_service]
%td.sku
%td.money= number_to_currency @order.delivery_cost_price
%td.money= number_to_currency @order.delivery_price
%td.money= number_to_currency @order.delivery_tax_amount
%td.money= number_to_currency @order.delivery_price + @order.delivery_tax_amount
%tfoot
%tr
%td.qty= @order.total_items
%td{:colspan => 2}
%td.money= number_to_currency @order.total_cost
%td.money= number_to_currency @order.total_before_tax
%td.money= number_to_currency @order.tax
%td.money= number_to_currency @order.total
= field_set_tag "Payments", :class => 'padded orderPayments' do
- unless @payments.empty?
.table
%table.data
%thead
%tr
%th ID
%th Type
%th Method
%th Reference
%th Amount
%th Refunded?
%th
%tbody
- for payment in @payments
%tr
%td= payment.id
%td
= payment.refund? ? 'Refund' : 'Payment'
%span.float-right= boolean_tag payment.confirmed?
%td= payment.method
%td= link_to_if payment.transaction_url, payment.reference, payment.transaction_url
- if payment.refund?
%td{:colspan => 2}
%b= number_to_currency payment.amount
from payment ##{payment.parent_payment_id}
- else
%td= number_to_currency payment.amount
%td= boolean_tag payment.refunded?, nil, :true_text => number_to_currency(payment.amount_refunded)
%td.refund
- if payment.refundable?
= link_to "Refund", [:refund, @order, payment], :class => 'button purple button-mini', :rel => 'dialog'
- else
= link_to "Delete", [@order, payment], :class => 'button purple button-mini', :data => {:confirm => "Are you sure you wish to remove this payment?"}, :method => :delete
- else
%p.notice There are no payments recorded for this order...
= form_for [@order, Shoppe::Payment.new(:amount => @order.balance)] do |f|
%dl.text
%dt= f.label :method
%dd= f.text_field :method, :class => 'text'
%dl.text
%dt= f.label :reference
%dd= f.text_field :reference, :class => 'text'
%dl.amount
%dt= f.label :amount
%dd
.moneyInput
.currency= Shoppe.settings.currency_unit.html_safe
= f.text_field :amount, :class => 'text'
%dl.submit
%dd= f.submit "Add Payment", :class => 'button green'