From fdf768b35220b494cf032499183467974845428a Mon Sep 17 00:00:00 2001 From: Niek Rabelink Date: Sat, 31 Oct 2026 15:52:08 +0100 Subject: [PATCH] Fix HTTPS asset loading behind proxy and redesign layout to playful toy-like 3D print webshop --- app/Providers/AppServiceProvider.php | 5 +- bootstrap/app.php | 2 +- resources/css/app.css | 43 +++- resources/views/cart/index.blade.php | 100 +++++----- resources/views/layouts/app.blade.php | 253 +++++++++++++----------- resources/views/shop/catalog.blade.php | 106 +++++----- resources/views/shop/index.blade.php | 263 +++++++++++++------------ resources/views/shop/show.blade.php | 194 +++++++++--------- 8 files changed, 533 insertions(+), 433 deletions(-) diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 452e6b6..1ea0978 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -2,6 +2,7 @@ namespace App\Providers; +use Illuminate\Support\Facades\URL; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -19,6 +20,8 @@ class AppServiceProvider extends ServiceProvider */ public function boot(): void { - // + if (app()->environment('production') || str_starts_with(config('app.url', ''), 'https://')) { + URL::forceScheme('https'); + } } } diff --git a/bootstrap/app.php b/bootstrap/app.php index 1085719..3c8f740 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -12,7 +12,7 @@ return Application::configure(basePath: dirname(__DIR__)) health: '/up', ) ->withMiddleware(function (Middleware $middleware): void { - // + $middleware->trustProxies(at: '*'); }) ->withExceptions(function (Exceptions $exceptions): void { $exceptions->shouldRenderJsonWhen( diff --git a/resources/css/app.css b/resources/css/app.css index 54b247e..29f2186 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -4,6 +4,45 @@ @source '../../storage/framework/views/*.php'; @theme { - --font-sans: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', - 'Segoe UI Symbol', 'Noto Color Emoji'; + --font-heading: 'Fredoka', ui-rounded, 'Nunito', system-ui, sans-serif; + --font-sans: 'Nunito', system-ui, sans-serif; +} + +@layer utilities { + .font-heading { + font-family: var(--font-heading); + } + + /* Chunky playful toy block shadows */ + .toy-shadow-sm { + box-shadow: 2px 2px 0px 0px #0f172a; + } + .toy-shadow { + box-shadow: 4px 4px 0px 0px #0f172a; + } + .toy-shadow-lg { + box-shadow: 6px 6px 0px 0px #0f172a; + } + .toy-shadow-amber { + box-shadow: 4px 4px 0px 0px #b45309; + } + .toy-shadow-rose { + box-shadow: 4px 4px 0px 0px #be123c; + } + .toy-shadow-indigo { + box-shadow: 4px 4px 0px 0px #3730a3; + } + + /* Chunky pressable button effect */ + .toy-btn { + transition: all 0.12s cubic-bezier(0.4, 0, 0.2, 1); + } + .toy-btn:hover { + transform: translate(-2px, -2px); + box-shadow: 6px 6px 0px 0px #0f172a; + } + .toy-btn:active { + transform: translate(2px, 2px); + box-shadow: 2px 2px 0px 0px #0f172a; + } } diff --git a/resources/views/cart/index.blade.php b/resources/views/cart/index.blade.php index 4860761..0147119 100644 --- a/resources/views/cart/index.blade.php +++ b/resources/views/cart/index.blade.php @@ -1,27 +1,30 @@ @extends('layouts.app') -@section('title', 'Winkelwagen | Jouwdriedee.nl') +@section('title', 'Winkelwagen 🛒 | Jouwdriedee.nl') @section('content') -
+
-

Winkelwagen

-

Controleer jouw geselecteerde 3D prints, materialen en kleuren.

+

+ 🛒 + Jouw Winkelwagen +

+

Controleer jouw geselecteerde 3D prints, vrolijke kleuren en aantallen.

@if(empty($cart)) -
-
- +
+
+ 🧸
-

Je winkelwagen is leeg

-

Ontdek onze collectie 3D geprinte designs of vraag een custom print aan.

- @@ -31,21 +34,21 @@
@foreach($cart as $key => $item) -
+
-
+
{{ $item['name'] }}
-

{{ $item['name'] }}

-
- {{ $item['material'] }} +

{{ $item['name'] }}

+
+ {{ $item['material'] }} • - Kleur: {{ $item['color'] }} + Kleur: {{ $item['color'] }} • - Schaal: {{ $item['scale'] }} + {{ $item['scale'] }}
-
+
€ {{ number_format($item['price'], 2, ',', '.') }} per stuk
@@ -57,13 +60,13 @@
@csrf - -
- + € {{ number_format($item['price'] * $item['quantity'], 2, ',', '.') }} @@ -71,8 +74,8 @@
@csrf @method('DELETE') -
@@ -80,45 +83,47 @@ @endforeach
- +
-
-

Overzicht Bestelling

+
+

+ 🧾 + Overzicht Bestelling +

-
-
+
+
Subtotaal - € {{ number_format($subtotal, 2, ',', '.') }} + € {{ number_format($subtotal, 2, ',', '.') }}
-
+
Verzendkosten @if($shipping == 0) - GRATIS + GRATIS 🎉 @else - € {{ number_format($shipping, 2, ',', '.') }} + € {{ number_format($shipping, 2, ',', '.') }} @endif
@if($subtotal < 50) -

- Tip: Voeg nog € {{ number_format(50 - $subtotal, 2, ',', '.') }} toe voor gratis verzending! +

+ 💡 Tip: Bestel nog voor € {{ number_format(50 - $subtotal, 2, ',', '.') }} en profiteer van gratis verzending!

@endif
-
- Totaal (incl. btw) - € {{ number_format($total, 2, ',', '.') }} +
+ Totaal (incl. btw) + € {{ number_format($total, 2, ',', '.') }}
- - Doorgaan Naar Afrekenen - + + Doorgaan Naar Afrekenen 🚀 -
- 🔒 Veilig afrekenen +
+ 🔒 Veilig betalen • - PostNL Bezorging + 📦 PostNL Track & Trace
@@ -127,4 +132,3 @@ @endif
@endsection - diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 6f64843..e659c97 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -1,78 +1,91 @@ - + - @yield('title', 'Jouwdriedee.nl | Dé 3D Print Webshop & Printservice') - + @yield('title', 'Jouwdriedee.nl 🎨 Dé Speelse 3D Print Webshop') + - + - + @vite(['resources/css/app.css', 'resources/js/app.js']) - + - -
+ +
- - ✨ Gratis verzending vanaf € 50,- -
-
+
- + @if(session('success')) -
-
+
+
-
- -
+ 🎉 {{ session('success') }}
- Naar winkelwagen → + Naar winkelwagen →
@endif @if(session('error')) -
-
-
- -
+
+
+ ⚠️ {{ session('error') }}
@@ -173,75 +182,90 @@ @yield('content') - -