5.4 (Teil 5): page-header in roles/* + footer-codes/* + presets/*
Neun weitere Standard-Header (md) auf <x-portal.page-header>: - roles/index (bedingter Anlegen-Button), roles/create (Guard-Badge via :meta), roles/edit (ID + Guard + bedingte Systemrolle via :meta) - footer-codes/index, footer-codes/create, footer-codes/edit (ID + Global + Aktiv/Inaktiv via :meta, Titel als Beschreibung) - presets/index, presets/create, presets/edit (ID via :meta) Roles-/FooterCode-/Preset-Tests (23) gruen. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
1eb2243959
commit
27a77bfc50
9 changed files with 103 additions and 161 deletions
|
|
@ -77,26 +77,18 @@ new #[Layout('components.layouts.app'), Title('Footer-Code anlegen')] class exte
|
|||
|
||||
<div class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Footer-Codes') }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Footer-Code anlegen') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Snippet, das unter Pressemitteilungen ausgespielt wird.') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Footer-Codes')"
|
||||
:title="__('Footer-Code anlegen')"
|
||||
:description="__('Snippet, das unter Pressemitteilungen ausgespielt wird.')"
|
||||
>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" :href="route('admin.footer-codes.index')" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
<form wire:submit="save" class="space-y-6">
|
||||
<article class="panel">
|
||||
|
|
|
|||
|
|
@ -108,33 +108,29 @@ new #[Layout('components.layouts.app'), Title('Footer-Code bearbeiten')] class e
|
|||
|
||||
<div class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-wrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Footer-Codes') }}</span>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
@if ($isGlobal)
|
||||
<span class="badge hub dot">{{ __('Global') }}</span>
|
||||
@endif
|
||||
@if ($isActive)
|
||||
<span class="badge ok dot">{{ __('Aktiv') }}</span>
|
||||
@else
|
||||
<span class="badge dot">{{ __('Inaktiv') }}</span>
|
||||
@endif
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)] break-words">
|
||||
{{ __('Footer-Code bearbeiten') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">{{ $title }}</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Footer-Codes')"
|
||||
:title="__('Footer-Code bearbeiten')"
|
||||
:description="$title"
|
||||
>
|
||||
<x-slot:meta>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
@if ($isGlobal)
|
||||
<span class="badge hub dot">{{ __('Global') }}</span>
|
||||
@endif
|
||||
@if ($isActive)
|
||||
<span class="badge ok dot">{{ __('Aktiv') }}</span>
|
||||
@else
|
||||
<span class="badge dot">{{ __('Inaktiv') }}</span>
|
||||
@endif
|
||||
</x-slot:meta>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" :href="route('admin.footer-codes.index')" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
<form wire:submit="save" class="space-y-6">
|
||||
<article class="panel">
|
||||
|
|
|
|||
|
|
@ -78,26 +78,18 @@ new #[Layout('components.layouts.app'), Title('Footer-Codes')] class extends Com
|
|||
|
||||
<div class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Operations') }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Footer-Codes') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Snippets, die unter Pressemitteilungen ausgespielt werden.') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Operations')"
|
||||
:title="__('Footer-Codes')"
|
||||
:description="__('Snippets, die unter Pressemitteilungen ausgespielt werden.')"
|
||||
>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="primary" icon="plus" :href="route('admin.footer-codes.create')" wire:navigate>
|
||||
{{ __('Footer-Code anlegen') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
@if (session('success'))
|
||||
<div class="px-4 py-3 rounded-[5px] border text-[12.5px] flex items-center gap-2
|
||||
|
|
|
|||
|
|
@ -52,26 +52,18 @@ new #[Layout('components.layouts.app'), Title('Neue Voreinstellung')] class exte
|
|||
|
||||
<form wire:submit="save" class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Voreinstellungen') }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Neue Voreinstellung') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Texte, Zahlen oder JSON-Werte zentral fuer Admin-Funktionen pflegen.') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Voreinstellungen')"
|
||||
:title="__('Neue Voreinstellung')"
|
||||
:description="__('Texte, Zahlen oder JSON-Werte zentral fuer Admin-Funktionen pflegen.')"
|
||||
>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" href="{{ route('admin.presets.index') }}" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
@include('livewire.admin.presets.partials.form-fields')
|
||||
|
||||
|
|
|
|||
|
|
@ -73,27 +73,21 @@ new #[Layout('components.layouts.app'), Title('Voreinstellung bearbeiten')] clas
|
|||
|
||||
<form wire:submit="save" class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Voreinstellungen') }}</span>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Voreinstellung bearbeiten') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Texte, Zahlen oder JSON-Werte zentral fuer Admin-Funktionen pflegen.') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Voreinstellungen')"
|
||||
:title="__('Voreinstellung bearbeiten')"
|
||||
:description="__('Texte, Zahlen oder JSON-Werte zentral fuer Admin-Funktionen pflegen.')"
|
||||
>
|
||||
<x-slot:meta>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
</x-slot:meta>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" href="{{ route('admin.presets.index') }}" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
@include('livewire.admin.presets.partials.form-fields')
|
||||
|
||||
|
|
|
|||
|
|
@ -78,26 +78,18 @@ new #[Layout('components.layouts.app'), Title('Voreinstellungen')] class extends
|
|||
|
||||
<div class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Stammdaten') }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Voreinstellungen') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Zentrale Admin-Presets fuer Texte, Zahlen und weitere Werte.') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Stammdaten')"
|
||||
:title="__('Voreinstellungen')"
|
||||
:description="__('Zentrale Admin-Presets fuer Texte, Zahlen und weitere Werte.')"
|
||||
>
|
||||
<x-slot:actions>
|
||||
<flux:button icon="plus" variant="primary" href="{{ route('admin.presets.create') }}" wire:navigate>
|
||||
{{ __('Neue Voreinstellung') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
@if (session('success'))
|
||||
<div class="px-4 py-3 rounded-[5px] border text-[12.5px] flex items-center gap-2
|
||||
|
|
|
|||
|
|
@ -77,24 +77,20 @@ new #[Layout('components.layouts.app'), Title('Neue Rolle')] class extends Compo
|
|||
|
||||
<form wire:submit="save" class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-wrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Sicherheit · Rollen') }}</span>
|
||||
<span class="badge hub">{{ __('Guard') }}: {{ $guardName }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Neue Rolle') }}
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Sicherheit · Rollen')"
|
||||
:title="__('Neue Rolle')"
|
||||
>
|
||||
<x-slot:meta>
|
||||
<span class="badge hub">{{ __('Guard') }}: {{ $guardName }}</span>
|
||||
</x-slot:meta>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" href="{{ route('admin.roles.index') }}" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
<article class="panel">
|
||||
<div class="panel-head">
|
||||
|
|
|
|||
|
|
@ -99,28 +99,24 @@ new #[Layout('components.layouts.app'), Title('Rolle bearbeiten')] class extends
|
|||
|
||||
<form wire:submit="save" class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-wrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Sicherheit · Rollen') }}</span>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
<span class="badge hub">{{ __('Guard') }}: {{ $guardName }}</span>
|
||||
@if ($isSystemRole)
|
||||
<span class="badge hub dot">{{ __('Systemrolle') }}</span>
|
||||
@endif
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Rolle bearbeiten') }}
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Sicherheit · Rollen')"
|
||||
:title="__('Rolle bearbeiten')"
|
||||
>
|
||||
<x-slot:meta>
|
||||
<span class="badge hub">ID #{{ $id }}</span>
|
||||
<span class="badge hub">{{ __('Guard') }}: {{ $guardName }}</span>
|
||||
@if ($isSystemRole)
|
||||
<span class="badge hub dot">{{ __('Systemrolle') }}</span>
|
||||
@endif
|
||||
</x-slot:meta>
|
||||
<x-slot:actions>
|
||||
<flux:button variant="filled" icon="arrow-left" href="{{ route('admin.roles.index') }}" wire:navigate>
|
||||
{{ __('Zurück') }}
|
||||
</flux:button>
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
@if ($isSystemRole)
|
||||
<div class="px-4 py-3 rounded-[5px] border text-[12.5px] flex items-start gap-3
|
||||
|
|
|
|||
|
|
@ -20,28 +20,20 @@ new #[Layout('components.layouts.app'), Title('Rollen & Rechte')] class extends
|
|||
|
||||
<div class="space-y-8">
|
||||
{{-- ============== PAGE HEADER ============== --}}
|
||||
<header class="page-header">
|
||||
<div class="min-w-0">
|
||||
<div class="flex items-center gap-3 mb-3 flex-nowrap whitespace-nowrap">
|
||||
<span class="badge hub dot">{{ __('Admin Backend') }}</span>
|
||||
<span class="eyebrow muted">{{ __('Administration · Sicherheit') }}</span>
|
||||
</div>
|
||||
<h1 class="text-[30px] font-bold tracking-[-0.6px] leading-[1.15] m-0 text-[color:var(--color-ink)]">
|
||||
{{ __('Rollen') }}
|
||||
</h1>
|
||||
<p class="text-[13px] leading-[1.55] mt-2 m-0 max-w-[640px] text-[color:var(--color-ink-2)]">
|
||||
{{ __('Verwaltung von Rollen und Berechtigungen') }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 flex-shrink-0">
|
||||
<x-portal.page-header
|
||||
:badge="__('Admin Backend')"
|
||||
:eyebrow="__('Administration · Sicherheit')"
|
||||
:title="__('Rollen')"
|
||||
:description="__('Verwaltung von Rollen und Berechtigungen')"
|
||||
>
|
||||
<x-slot:actions>
|
||||
@if (\Illuminate\Support\Facades\Route::has('admin.roles.create'))
|
||||
<flux:button variant="primary" icon="plus" href="{{ route('admin.roles.create') }}" wire:navigate>
|
||||
{{ __('Neue Rolle') }}
|
||||
</flux:button>
|
||||
@endif
|
||||
</div>
|
||||
</header>
|
||||
</x-slot:actions>
|
||||
</x-portal.page-header>
|
||||
|
||||
<article class="panel overflow-hidden">
|
||||
<div class="panel-head">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue