Files
Additional/resources/views/order-success.blade.php
T
twotalesanimation e8e9b1f03c relocating
2025-12-30 20:59:58 +02:00

259 lines
8.3 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@extends('layouts.app')
@section('title', 'Order Confirmed')
@section('styles')
<style>
.success-container {
text-align: center;
margin: 3rem 0;
}
.success-icon {
font-size: 4rem;
margin-bottom: 1.5rem;
}
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--primary-color);
margin-bottom: 1rem;
}
.subtitle {
color: #666;
font-size: 1.1rem;
margin-bottom: 2rem;
}
.order-details {
margin: 2rem 0;
text-align: left;
}
.order-details-inner {
padding: 2rem;
border-radius: 20px;
}
.detail-row {
display: flex;
justify-content: space-between;
padding: 1rem 0;
border-bottom: 1px solid #eee;
}
.detail-row:last-child {
border-bottom: none;
}
.detail-label {
font-weight: 600;
color: var(--primary-color);
}
.detail-value {
color: #666;
}
margin: 2rem 0;
text-align: left;
}
.order-items-inner {
padding: 2rem;
border-radius: 20pxpx;
margin: 2rem 0;
text-align: left;
}
.order-items h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.3rem;
color: var(--primary-color);
margin-bottom: 1.5rem;
}
.item-row {
display: flex;
justify-content: space-between;
padding: 1rem 0;
border-bottom: 1px solid #e0e0e0;
}
.item-row:last-child {
border-bottom: none;
}
.item-info {
flex: 1;
}
.item-name {
font-weight: 600;
color: var(--primary-color);
}
.item-qty {
font-size: 0.9rem;
color: #666;
}
.item-price {
font-weight: 600;
color: var(--primary-color);
}
.total-row {
display: flex;
justify-content: space-between;
padding-top: 1.5rem;
margin-top: 1rem;
border-top: 2px solid var(--primary-color);
font-weight: 600;
font-size: 1.2rem;
color: var(--primary-color);
}
.actions {
margin-top: 2rem;
text-align: center;
}
.note {
background: #d4e8d4;
color: var(--primary-color);
padding: 1rem;
border-radius: 4px;
margin: 2rem 0;
border-left: 4px solid var(--primary-color);
}
.next-steps-title {
font-family: 'Abril Fatface', cursive;
font-size: 1.3rem;
color: var(--primary-color);
margin-bottom: 1.5rem;
text-align: left;
}
</style>
@endsection
@section('content')
<main class="container">
<div class="success-container">
<div class="success-icon"></div>
<h1>Order Confirmed!</h1>
<p class="subtitle">Thank you for your purchase. Your order has been successfully received.</p>
<!-- Order Details -->
<div class="order-details card">
<div class="order-details-inner">
<span class="detail-label">Order Number:</span>
<span class="detail-value"><strong>{{ $order->order_number }}</strong></span>
</div>
<div class="detail-row">
<span class="detail-label">Customer Name:</span>
<span class="detail-value">{{ $order->customer_name }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Email:</span>
<span class="detail-value">{{ $order->customer_email }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Shipping Address:</span>
<span class="detail-value">{{ $order->shipping_address }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Order Status:</span>
<span class="detail-value">
<strong style="color: var(--accent-primary); text-transform: capitalize;">{{ $order->status }}</strong>
</span>
</div>
</div>
</div>
<!-- Order Items -->
<div class="order-items card">
<div class="order-items-inner">
<h2>Order Items</h2>
@foreach($order->items as $item)
<div class="item-row">
<div class="item-info">
<div class="item-name">{{ $item->product->name }}{{ $item->is_sample ? ' - Sample' : '' }}</div>
<div class="item-qty">
@php
$stock = $item->printStock;
$stockText = $stock ? "{$stock->name}" : "Standard";
$stockCost = 0;
if (!$item->is_sample && $stock) {
$stockCost = $item->type === 'wallpaper' ? $stock->cost_per_meter : $stock->cost_per_m2;
}
@endphp
@if($item->is_sample)
Sample - Fixed Price: R{{ number_format(\App\Services\ShippingService::getSampleCost(), 2) }}
@elseif($item->type === 'wallpaper')
Length: {{ $item->length }}m | Finish: {{ $stockText }}<br>
<small>Stock Cost: R{{ number_format($stockCost, 2) }}/m</small>
@elseif($item->type === 'mural')
Dimensions: {{ $item->width }}m × {{ $item->height }}m ({{ number_format($item->width * $item->height, 2) }}) | Finish: {{ $stockText }}<br>
<small>Stock Cost: R{{ number_format($stockCost, 2) }}/</small>
@else
<small>Price: R{{ number_format($stockCost, 2) }} per unit</small>
@endif
</div>
</div>
<div class="item-price">
R{{ number_format(
$item->is_sample
? \App\Services\ShippingService::getSampleCost() * $item->quantity
: $item->quantity * (
$item->type === 'wallpaper'
? $stockCost * $item->length
: ($item->type === 'mural'
? $stockCost * $item->width * $item->height
: $stockCost
)
),
2
) }}
</div>
</div>
@endforeach
</div>
<div class="total-row" style="justify-content: space-between; border-top: 1px solid #eee; padding-top: 1rem; margin-top: 1rem; font-size: 0.95rem; color: #666;">
<span>Subtotal:</span>
<span>R{{ number_format($order->total, 2) }}</span>
</div>
@if($order->shipping_fee)
<div class="total-row" style="justify-content: space-between; border-top: none; padding-top: 0.5rem; margin-top: 0; font-size: 0.95rem; color: #666;">
<span>Shipping:</span>
<span>R{{ number_format($order->shipping_fee, 2) }}</span>
</div>
@endif
<div class="total-row">
<span>Order Total:</span>
<span>R{{ number_format($order->total + ($order->shipping_fee ?? 0), 2) }}</span>
</div>
</div>
<div class="card--pink">
<h2 class="next-steps-title" style="text-align: center;">What Happens Next?</h2>
<p>A confirmation email has been sent to <strong>{{ $order->customer_email }}</strong>. You'll receive updates about your order status and shipping information shortly.</p>
<p style="margin-bottom: 0; text-align: center; margin-top: 1rem; font-size: 0.9rem;">
💡 You can also <a href="{{ route('track-order-form') }}" style="color: inherit; font-weight: 600; text-decoration: underline;">track your order anytime</a> using your order number and email address.
</p>
</div>
</div>
<!-- Actions -->
<div class="actions">
<a href="{{ route('wallpapers') }}" class="btn">Continue Shopping</a>
<a href="{{ route('home') }}" class="btn btn--secondary">Back to Home</a>
</div>
</div>
</main>
@endsection