@extends('web.layouts.web-master') @php use Illuminate\Support\Str; \Carbon\Carbon::setLocale('de'); $company = $release->company; $categoryTranslation = $release->category?->translations?->firstWhere('locale', 'de') ?? $release->category?->translations?->first(); $categoryName = $categoryTranslation?->name; $categorySlug = $categoryTranslation?->slug; $categoryHref = $categorySlug ? route('kategorie', ['slug' => $categorySlug]) : route('web.home'); $parentTranslation = $release->category?->parent?->translations?->firstWhere('locale', 'de') ?? $release->category?->parent?->translations?->first(); $parentName = $parentTranslation?->name; $parentSlug = $parentTranslation?->slug; $parentHref = $parentSlug ? route('kategorie', ['slug' => $parentSlug]) : route('web.home'); $publishedAt = $release->published_at; $embargoAt = $release->embargoAtLocal(); $bodyHtml = $release->renderedText(); $wordCount = str_word_count(strip_tags((string) $release->text)); $readTime = max(1, (int) round($wordCount / 200)); $teaser = (string) Str::of(strip_tags((string) $release->text))->squish()->limit(180); $lead = filled($release->subtitle) ? $release->subtitle : $teaser; $image = $release->images->first(); $imageUrl = $image?->variantUrl('detail') ?? $image?->variantUrl('card') ?? $image?->url(); $imageCaption = $image?->description ?: $image?->title; $imageCredit = $image?->copyright ?: $image?->author; $companyName = $company?->name; $companyInitial = $companyName ? mb_strtoupper(mb_substr($companyName, 0, 1)) : '·'; $companyHref = $company?->slug ? route('newsrooms').'#'.$company->slug : route('newsrooms'); $countryNames = ['DE' => 'Deutschland', 'AT' => 'Österreich', 'CH' => 'Schweiz']; $companyCountry = $company?->country_code ? ($countryNames[strtoupper($company->country_code)] ?? null) : null; $boilerplate = filled($release->boilerplate_override) ? $release->boilerplate_override : $company?->boilerplate; $keywords = collect(preg_split('/[,;\n]+/', (string) $release->keywords)) ->map(fn ($keyword) => trim($keyword)) ->filter() ->unique() ->take(8); $contact = $release->contacts->first(); $contactName = $contact ? trim(implode(' ', array_filter([$contact->title, $contact->first_name, $contact->last_name]))) : null; $publisherVerified = (bool) ($company?->is_active && filled($company?->website)); $isRecommended = $release->content_score !== null && $release->content_score >= 80; $shareUrl = route('release.detail', ['slug' => $release->slug]); $brandLabel = config('app.theme') === 'presseecho' ? 'presseecho' : 'businessportal24'; @endphp @section('title', $release->title.' – '.$brandLabel) @section('meta_description', $lead) @section('og_type', 'article') @if ($imageUrl) @section('og_image', $imageUrl) @endif @section('canonical', $shareUrl) @section('content') {{-- Lese-Fortschrittsbalken --}}
{{-- Breadcrumbs --}}
{{-- Hero Meta Block --}}
@if ($embargoAt)
● Embargo aufgehoben {{ $embargoAt->translatedFormat('j. F Y, H:i') }}
@endif
@if ($categoryName) {{ $categoryName }} @endif Für Wirtschaftsjournalisten

{{ $release->title }}

@if (filled($lead))

{{ $lead }}

@endif
@if ($companyName) {{ $companyInitial }} {{ $companyName }} @endif @if ($publishedAt) @endif {{ $readTime }} Min. Lesezeit · {{ number_format($wordCount, 0, ',', '.') }} Wörter @if ($companyCountry) {{ $companyCountry }} @endif @if ($isRecommended) Redaktionsempfehlung @endif
{{-- Hero Image --}}
@if ($imageUrl) {{ $imageCaption ?: $release->title }} @else {{ $companyName ? 'Bild · Pressefoto '.$companyName : 'Bild · Pressefoto' }} (16:9) @endif
@if ($imageCaption || $imageCredit)
{{ $imageCaption }}@if ($imageCaption && $imageCredit) · @endif@if ($imageCredit)Foto: {{ $imageCredit }}@endif
@endif
{{-- Body + Sidebar --}}
{{-- Body --}}
{!! $bodyHtml !!}
@if (filled($boilerplate))
Über das Unternehmen

{{ $boilerplate }}

@endif {{-- Inline Ad --}} {{-- Pressekontakt --}} @if ($contact)
Pressekontakt
{{ $contactName ?: $companyName }} @if ($publisherVerified) @endif
@if ($contact->responsibility || $companyName)
@if ($contact->responsibility){{ $contact->responsibility }}
@endif {{ $companyName }}
@endif
@if ($company?->address) {{ $company->address }} @endif @if ($contact->phone) {{ $contact->phone }} @endif @if ($contact->email) {{ $contact->email }} @endif @if ($company?->website) {{ Str::of($company->website)->after('//')->rtrim('/') }} @endif
@endif
{{-- Sidebar --}}
{{-- Empfehlungen --}} @if ($companyReleases->isNotEmpty() || $relatedReleases->isNotEmpty())
@if ($companyReleases->isNotEmpty())

Mehr von {{ $companyName }}

Aktuelle Mitteilungen aus diesem Newsroom

@foreach ($companyReleases as $companyRelease) @endforeach Alle Mitteilungen von {{ $companyName }} →
@endif @if ($relatedReleases->isNotEmpty())

Verwandte Meldungen

Reaktionen, ähnliche Themen, Branchenkontext

@foreach ($relatedReleases as $relatedRelease) @endforeach @if ($categoryName) Alle Meldungen aus {{ $categoryName }} → @endif
@endif
@endif
@endsection