{% extends "_market/_layouts/main" %} {% if orderId != null and order is not defined %} {% set order = craft.commerce.orders.getOrderById(orderId) %} {% endif %} {% if not order %} {% exit 404 %} {% endif %} {% set title = 'Order #{reference}'|t('market', {reference: order.reference}) %} {% set breadcrumbs = [ { url: url('market/orders'), label: 'Orders'|t('market') }, { url: craft.app.request.getUrl, label: title } ] %} {% set statusMap = { green: 'bg-green-200 text-green-800', blue: 'bg-blue-200 text-blue-800', pink: 'bg-pink-200 text-pink-800', default: 'bg-gray-200 text-gray-800', } %} {% set statusOptionMap = { green: 'text-green-700 hover:bg-green-100 hover:text-green-900', blue: 'text-blue-700 hover:bg-blue-100 hover:text-blue-900', pink: 'text-pink-700 hover:bg-pink-100 hover:text-pink-900', default: 'text-gray-700 hover:bg-gray-100 hover:text-gray-900' } %} {% block header %}

{{ title }}

{# Meta #}
{# Status #}
{{ order.orderStatus }}
{# Amount #}
{# Heroicon name: credit-card #} {{ order.storedTotalPrice|currency(order.currency, [], [], true) }}
{# Date #}
{# Heroicon name: calendar #} {{ order.dateOrdered|datetime('d M Y, g:i A') }}
{# Stripe payment #} {% set transaction = order.getLastTransaction() %} {% set stripePaymentId = null %} {% set refundChargeId = null %} {% set response = transaction.response|json_decode %} {% if response.object is defined and response.object == 'refund' %} {% set stripePaymentId = response.payment_intent %} {# TODO XXX #} {% set refundChargeId = response.charge %} {% elseif response.json is defined %} {% set stripePaymentId = response.json.charges.data[0].payment_intent %} {% set refundChargeId = response.json.charges.data[0].id %} {% elseif response[0] is defined %} {% set stripePaymentId = response[0].id %} {% set refundChargeId = response[0].id %} {% endif %} {% if stripePaymentId %} {# Heroicon name: external-link #} View in Stripe {% endif %}
{# Actions #}
{# Packing slip #} {# Heroicon name: document-download #} {{ 'Packing Slip'|t('market') }} {{ sprig('_market/_components/order-edit-actions', { _orderId: order.id, _chargeId: refundChargeId ? refundChargeId : null }) }}
{% endblock %} {% block main %}

Order Details

{{ 'Reference'|t('market') }}
#{{ order.reference }}
{{ 'Date'|t('market') }}
{{ order.dateOrdered|datetime('d M Y, g:i A') }}
{{ 'Customer'|t('market') }}
{{ order.email }}

{{ 'Shipping Address'|t('market') }}

{% include '_market/_includes/address' with { address : order.shippingAddress } %}

{{ 'Billing Address'|t('market') }}

{% include '_market/_includes/address' with { address : order.billingAddress } %}
{# Order table #}
{% for item in order.lineItems %} {% if item.note %} {% endif %} {% endfor %} {# Shipping #} {% set shippingAdjusters = order.getAdjustmentsByType('shipping') %} {# Handle old style adjusters #} {% set oldShippingAdjusterName = null %} {% if shippingAdjusters %} {% set sourceSnapshot = shippingAdjusters[0].getSourceSnapshot() %} {% if sourceSnapshot and sourceSnapshot['OldAdjustments'] is defined %} {% set oldShippingAdjusterName = sourceSnapshot['OldAdjustments'][0].name %} {% endif %} {% endif %} {% if oldShippingAdjusterName %} {% else %} {% for adjustment in shippingAdjusters %} {% endfor %} {% endif %}
{{ 'Item'|t('market') }} {{ 'SKU'|t('market') }} {{ 'Price'|t('market') }} {{ 'Qty'|t('market') }} {{ 'Total'|t('market') }}
{% if item.purchasable.product is defined %} {% set product = item.purchasable.product %} {{ product.title }} {% else %} {{ item.description }} {% endif %} {{ item.sku }} {{ item.salePrice|currency(order.currency, [], [], true) }} {{ item.qty }} {{ item.subTotal|currency(order.currency, [], [], true) }}

Customer Note

{{ item.note|nl2br }}
{{ 'Sub Total'|t('market') }} {{ order.itemSubtotal|currency(order.currency, [], [], true) }}
{{ 'Shipping'|t('market') }} {{ oldShippingAdjusterName }} {{ order.storedTotalShippingCost|currency(order.currency, [], [], true) }}
{{ 'Shipping'|t('market') }} {{ adjustment.name }} {{ adjustment.amount|currency(order.currency, [], [], true) }}
{{ 'Total'|t('market') }} {{ order.storedTotalPrice|currency(order.currency, [], [], true) }}
{# Next / prev links #} {% set allOrderIds = craft.orders .isCompleted(true) .limit(null) .orderBy('dateOrdered desc') .relatedTo({ 'targetElement': currentVendor, 'field': 'vendor' }) .ids() %} {% if allOrderIds|length > 1 %} {% endif %} {% endblock %}