10-04-2026
This commit is contained in:
parent
4d6b4930b2
commit
4bb89aad8c
836 changed files with 52961 additions and 5950 deletions
31
dev/27-02-2026/backup-before-relaunch/about.blade.php
Normal file
31
dev/27-02-2026/backup-before-relaunch/about.blade.php
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'Über B2IN - Unser Team & Geschichte')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.sections.about-hero />
|
||||
<livewire:web.components.sections.our-story />
|
||||
<livewire:web.components.sections.leadership-team />
|
||||
<livewire:web.components.sections.our-values />
|
||||
<livewire:web.components.sections.partner-c-t-a />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
34
dev/27-02-2026/backup-before-relaunch/b2in.blade.php
Normal file
34
dev/27-02-2026/backup-before-relaunch/b2in.blade.php
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'B2IN - Connecting Design and Property')
|
||||
|
||||
@section('content')
|
||||
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main>
|
||||
<livewire:web.components.sections.hero />
|
||||
<livewire:web.components.sections.ecosystem-core />
|
||||
<livewire:web.components.sections.vision-section bg="bg-accent" />
|
||||
<livewire:web.components.sections.brand-worlds />
|
||||
<livewire:web.components.sections.content-section layout="right" bg="bg-accent"
|
||||
section="integriertes_modell_b2in" />
|
||||
<livewire:web.components.sections.c-t-a-section />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
27
dev/27-02-2026/backup-before-relaunch/contact.blade.php
Normal file
27
dev/27-02-2026/backup-before-relaunch/contact.blade.php
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'Kontakt - B2in')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.ui.contact-form />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
2316
dev/27-02-2026/backup-before-relaunch/content.php
Normal file
2316
dev/27-02-2026/backup-before-relaunch/content.php
Normal file
File diff suppressed because it is too large
Load diff
36
dev/27-02-2026/backup-before-relaunch/ecosystem.blade.php
Normal file
36
dev/27-02-2026/backup-before-relaunch/ecosystem.blade.php
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'B2in Ecosystem - Intelligentes Netzwerk')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.sections.partner-hero section="ecosystem_hero" />
|
||||
<livewire:web.components.sections.ecosystem-stats />
|
||||
<livewire:web.components.sections.content-section layout="right" bg="bg-accent"
|
||||
section="ecosystem_start" />
|
||||
<livewire:web.components.sections.content-section layout="left" bg=""
|
||||
section="ecosystem_hub" />
|
||||
<livewire:web.components.sections.content-section layout="right" bg="bg-accent"
|
||||
section="ecosystem_result" />
|
||||
<livewire:web.components.sections.digital-core />
|
||||
<livewire:web.components.sections.partner-c-t-a />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
74
dev/27-02-2026/backup-before-relaunch/footer.blade.php
Normal file
74
dev/27-02-2026/backup-before-relaunch/footer.blade.php
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
<footer class="section-dark section-padding">
|
||||
<div class="container-padding">
|
||||
{{-- Main Content --}}
|
||||
<div class="text-center spacing-section">
|
||||
<div class="spacing-section">
|
||||
<div class="flex items-center justify-center">
|
||||
<img src="{{ asset(\App\Helpers\ThemeHelper::getLogoPath('negative')) }}"
|
||||
alt="{{ $domainName ?? 'B2in' }} Logo" class="h-14 w-auto" />
|
||||
</div>
|
||||
|
||||
<div class="container-narrow spacing-content">
|
||||
<h2 class="text-section-title text-dark-text leading-tight">
|
||||
Connecting Design and <span class="text-secondary">Property</span>
|
||||
|
||||
</h2>
|
||||
</div>
|
||||
|
||||
<hr class="border-t border-dark-muted/30 mt-12 pt-4">
|
||||
</div>
|
||||
|
||||
{{-- Links --}}
|
||||
<div class="grid grid-cols-2 md:grid-cols-4 gap-8 text-left max-w-4xl mx-auto">
|
||||
<div class="spacing-small text-center">
|
||||
<a href="#" class="block hover-text-secondary transition-colors">Privacy Policy</a>
|
||||
</div>
|
||||
|
||||
<div class="spacing-small text-center">
|
||||
<a href="#" class="block hover-text-secondary transition-colors">Terms of Service</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="spacing-small text-center">
|
||||
<a href="#" class="block hover-text-secondary transition-colors">Cookie Policy</a>
|
||||
</div>
|
||||
|
||||
<div class="spacing-small text-center">
|
||||
<a href="#" class="block hover-text-secondary transition-colors">Impressum</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- Bottom Bar --}}
|
||||
<div class="border-t border-dark-muted/30 mt-12 pt-8">
|
||||
<div class="flex flex-col md:flex-row justify-between items-center spacing-small md:space-y-0">
|
||||
<div class="text-dark-muted text-sm">
|
||||
© {{ date('Y') }} B2in. All rights reserved.
|
||||
</div>
|
||||
<div class="flex items-center space-x-6 text-dark-muted text-sm">
|
||||
<div class="flex space-x-4">
|
||||
<a href="#" class="hover-text-secondary transition-colors" aria-label="Facebook">
|
||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
|
||||
<path
|
||||
d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="#" class="hover-text-secondary transition-colors" aria-label="Instagram">
|
||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
|
||||
<path
|
||||
d="M12.017 0C5.396 0 .029 5.367.029 11.987c0 6.62 5.367 11.987 11.988 11.987s11.987-5.367 11.987-11.987C24.004 5.367 18.637.001 12.017.001zM8.449 16.988c-1.297 0-2.448-.49-3.323-1.297C4.198 14.895 3.708 13.744 3.708 12.447s.49-2.448 1.418-3.323c.875-.807 2.026-1.297 3.323-1.297s2.448.49 3.323 1.297c.928.875 1.418 2.026 1.418 3.323s-.49 2.448-1.418 3.244c-.875.807-2.026 1.297-3.323 1.297zm7.83-9.281c-.49 0-.928-.175-1.297-.49-.368-.315-.49-.753-.49-1.243s.122-.928.49-1.243c.369-.315.807-.49 1.297-.49s.928.175 1.297.49c.368.315.49.753.49 1.243s-.122.928-.49 1.243c-.369.315-.807.49-1.297.49z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="#" class="hover-text-secondary transition-colors" aria-label="LinkedIn">
|
||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
|
||||
<path
|
||||
d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
54
dev/27-02-2026/backup-before-relaunch/hero.blade.php
Normal file
54
dev/27-02-2026/backup-before-relaunch/hero.blade.php
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<section class="section-padding flex items-center relative border-b border-border/30">
|
||||
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20 bg-hero-container rounded-[20px] w-[95%]">
|
||||
<div class="grid lg:grid-cols-2 gap-12 lg:gap-16 items-center">
|
||||
{{-- Left Content --}}
|
||||
<div class="space-y-8">
|
||||
<div class="space-y-6 slide-right delay-200">
|
||||
<h1 class="text-hero-alt">
|
||||
{!! $content['title'] !!}
|
||||
</h1>
|
||||
<p class="text-xl text-muted-foreground max-w-md leading-relaxed">
|
||||
{!! $content['subtitle'] !!}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col sm:flex-row gap-4 slide-right delay-300">
|
||||
<a href="{{ $content['cta1_link'] }}" class="btn-primary-accent">
|
||||
{{ $content['cta1_text'] }}
|
||||
</a>
|
||||
<a href="{{ $content['cta2_link'] }}" class="btn-secondary-accent">
|
||||
{{ $content['cta2_text'] }}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@if(isset($content['stats']))
|
||||
<div class="flex flex-wrap items-center gap-6 pt-10 mt-10 border-t border-border/80 slide-right delay-300">
|
||||
@foreach ($content['stats'] as $stat)
|
||||
<div class="flex items-center gap-2 text-md text-muted-foreground font-light">
|
||||
@svg('heroicon-o-check-circle', 'w-6 h-6 text-secondary')
|
||||
<span>{{ $stat }}</span>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
|
||||
</div>
|
||||
|
||||
{{-- Right Image --}}
|
||||
<div class="relative">
|
||||
<div class="relative rounded-3xl overflow-hidden shadow-elevated slide-left delay-300">
|
||||
<img src="{{ asset('img/assets/' . $content['image']) }}" alt="{{ $content['image_alt'] }}"
|
||||
class="w-full h-[600px] object-cover" />
|
||||
<div class="absolute inset-0 bg-gradient-to-t from-black/20 to-transparent"></div>
|
||||
</div>
|
||||
|
||||
{{-- Floating info card --}}
|
||||
<div
|
||||
class="absolute bottom-6 left-6 bg-card/95 backdrop-blur-sm rounded-xl p-4 shadow-lg border border-border/50 slide-left delay-400">
|
||||
<div class="text-xl font-medium text-muted-foreground">{{ $content['card_title'] }}</div>
|
||||
<div class="text-lg font-medium font-secondary">{!! $content['card_text'] !!}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
34
dev/27-02-2026/backup-before-relaunch/home.blade.php
Normal file
34
dev/27-02-2026/backup-before-relaunch/home.blade.php
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'B2IN - Connecting Design and Property')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.sections.hero />
|
||||
<livewire:web.components.sections.vision-section />
|
||||
|
||||
<livewire:web.components.sections.ecosystem-core bg="bg-accent" />
|
||||
<livewire:web.components.sections.brand-worlds />
|
||||
<livewire:web.components.sections.content-section layout="left" bg="bg-accent"
|
||||
section="integriertes_modell_b2in" />
|
||||
<livewire:web.components.sections.c-t-a-section />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
29
dev/27-02-2026/backup-before-relaunch/magazin.blade.php
Normal file
29
dev/27-02-2026/backup-before-relaunch/magazin.blade.php
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'B2in Magazin - Insights & Trends')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.sections.magazin-list />
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
35
dev/27-02-2026/backup-before-relaunch/partner.blade.php
Normal file
35
dev/27-02-2026/backup-before-relaunch/partner.blade.php
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
@extends('web.layouts.web-master')
|
||||
|
||||
@section('title', 'Partner werden - B2in Ecosystem')
|
||||
|
||||
@section('content')
|
||||
<div class="bg-background">
|
||||
<livewire:web.components.ui.header />
|
||||
|
||||
<main class="variante-glass-flow">
|
||||
<livewire:web.components.sections.partner-hero />
|
||||
<livewire:web.components.sections.card-section bg="bg-accent" section="partner_card_section" />
|
||||
<livewire:web.components.sections.benefits-section section="partner_benefits_retailer" />
|
||||
<livewire:web.components.sections.benefits-section section="partner_benefits_supplier" layout="right" bg="bg-accent" />
|
||||
<livewire:web.components.sections.benefits-section section="partner_benefits_broker" />
|
||||
<livewire:web.components.sections.partner-process />
|
||||
<livewire:web.components.sections.commitment-section />
|
||||
<livewire:web.components.sections.partner-c-t-a />
|
||||
|
||||
</main>
|
||||
|
||||
<livewire:web.components.ui.footer />
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('styles')
|
||||
<style>
|
||||
[x-cloak] {
|
||||
display: none !important;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
{{-- Alpine.js wird zentral im Layout geladen --}}
|
||||
@endpush
|
||||
103
dev/27-02-2026/backup-before-relaunch/web.php
Normal file
103
dev/27-02-2026/backup-before-relaunch/web.php
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Livewire\Volt\Volt;
|
||||
|
||||
// Gemeinsame Web-Routes für alle Pages)
|
||||
// Jede Landing-Page hat das gleiche Gerüst, aber unterschiedliches Styling
|
||||
|
||||
// Hauptseite - lädt automatisch das richtige Theme basierend auf der Domain
|
||||
Route::get('/', function () {
|
||||
$theme = config('app.theme', 'b2in');
|
||||
|
||||
// Use theme-specific view if it exists (e.g., web.b2a, web.stileigentum)
|
||||
// The view name for b2in theme is 'web.b2in' and not 'web.home'
|
||||
if ($theme === 'b2in') {
|
||||
return view('web.home');
|
||||
}
|
||||
if (view()->exists('web.'.$theme)) {
|
||||
return view('web.'.$theme);
|
||||
}
|
||||
|
||||
// Fallback to the default home view
|
||||
return view('web.home');
|
||||
})->name('home');
|
||||
|
||||
// Willkommensseite
|
||||
Route::get('/welcome', function () {
|
||||
return view('web.welcome');
|
||||
})->name('welcome');
|
||||
|
||||
// Weitere gemeinsame Webseiten hier...
|
||||
Route::get('/about', function () {
|
||||
return view('web.about');
|
||||
})->name('about');
|
||||
Route::get('/ecosystem', function () {
|
||||
return view('web.ecosystem');
|
||||
})->name('ecosystem');
|
||||
Route::get('/partner', function () {
|
||||
return view('web.partner');
|
||||
})->name('partner');
|
||||
Route::get('/magazin', function () {
|
||||
return view('web.magazin');
|
||||
})->name('magazin');
|
||||
Route::get('/magazin/{id}', function ($id) {
|
||||
return view('web.magazin-detail', compact('id'));
|
||||
})->name('magazin.detail');
|
||||
Route::get('/contact', function () {
|
||||
return view('web.contact');
|
||||
})->name('contact');
|
||||
|
||||
Route::get('/service', function () {
|
||||
return view('web.service');
|
||||
})->name('service');
|
||||
|
||||
Route::get('/portfolio', function () {
|
||||
return view('web.portfolio');
|
||||
})->name('portfolio');
|
||||
|
||||
Route::get('/faq', function () {
|
||||
return view('web.faq');
|
||||
})->name('faq');
|
||||
|
||||
// Theme Demo Route
|
||||
Route::get('/theme-demo', function () {
|
||||
return view('web.theme-demo');
|
||||
})->name('theme-demo');
|
||||
|
||||
// Pfad-basierte Theme-Routen für lokale Entwicklung wurden entfernt
|
||||
// Die Themensauswahl wird nun über den ThemeServiceProvider gesteuert (Domain oder ?theme=... GET-Parameter)
|
||||
|
||||
Route::get('/partner/invitation/expired/{token}', function (string $token) {
|
||||
$invitation = \App\Models\PartnerInvitation::with('role')->where('token', $token)->firstOrFail();
|
||||
|
||||
return view('partner.invitation-expired', compact('invitation'));
|
||||
})->name('partner.invitation.expired');
|
||||
|
||||
Route::get('/partner/invitation/used/{token}', function (string $token) {
|
||||
$invitation = \App\Models\PartnerInvitation::with('role')->where('token', $token)->firstOrFail();
|
||||
|
||||
return view('partner.invitation-used', compact('invitation'));
|
||||
})->name('partner.invitation.used');
|
||||
|
||||
Volt::route('/partner/invitation/{token}', 'partner.invitation-accept')
|
||||
->name('partner.invitation.accept');
|
||||
|
||||
Volt::route('/partner/create-account', 'partner.create-account')
|
||||
->name('partner.create.account');
|
||||
|
||||
// Öffentliche Registrierung per QR-/Code (Landing, code-check)
|
||||
Volt::route('/reg/{role}', 'reg.landing')
|
||||
->name('registration.landing');
|
||||
|
||||
Volt::route('/registration/thank-you', 'reg.thank-you')
|
||||
->name('registration.thank-you');
|
||||
|
||||
// Partner Setup Wizard & Daten
|
||||
Route::middleware('auth')->group(function () {
|
||||
Volt::route('/partner/setup', 'partner.setup-wizard')
|
||||
->name('partner.setup.wizard');
|
||||
});
|
||||
|
||||
// Authentifizierungs-Routen werden in domains.php eingebunden
|
||||
// require __DIR__ . '/auth.php';
|
||||
Loading…
Add table
Add a link
Reference in a new issue