From cbbcfbb68bf6e690483c6df9937621fa7a9f1430 Mon Sep 17 00:00:00 2001 From: isaacclad Date: Sun, 5 Jul 2026 21:11:45 +0000 Subject: [PATCH] Standardize settings pages on shared centered card layout. Co-authored-by: Cursor --- .../views/components/settings/card.blade.php | 15 +++ .../views/components/settings/page.blade.php | 11 ++ .../views/meet/settings/calendar.blade.php | 91 ++++++++-------- resources/views/meet/settings/edit.blade.php | 102 +++++++++++------- .../views/meet/settings/security.blade.php | 40 +++---- .../views/meet/settings/webhooks.blade.php | 73 ++++++------- 6 files changed, 190 insertions(+), 142 deletions(-) create mode 100644 resources/views/components/settings/card.blade.php create mode 100644 resources/views/components/settings/page.blade.php diff --git a/resources/views/components/settings/card.blade.php b/resources/views/components/settings/card.blade.php new file mode 100644 index 0000000..939f318 --- /dev/null +++ b/resources/views/components/settings/card.blade.php @@ -0,0 +1,15 @@ +@props(['title' => null, 'description' => null]) + +
merge(['class' => 'rounded-xl border border-slate-200 bg-white shadow-sm']) }}> + @if ($title) +
+

{{ $title }}

+ @if ($description) +

{{ $description }}

+ @endif +
+ @endif +
+ {{ $slot }} +
+
diff --git a/resources/views/components/settings/page.blade.php b/resources/views/components/settings/page.blade.php new file mode 100644 index 0000000..3bc11e8 --- /dev/null +++ b/resources/views/components/settings/page.blade.php @@ -0,0 +1,11 @@ +@props(['title' => 'Settings', 'description' => null]) + +
merge(['class' => 'mx-auto max-w-3xl space-y-6']) }}> +
+

{{ $title }}

+ @if ($description) +

{{ $description }}

+ @endif +
+ {{ $slot }} +
diff --git a/resources/views/meet/settings/calendar.blade.php b/resources/views/meet/settings/calendar.blade.php index 101becd..916ff2b 100644 --- a/resources/views/meet/settings/calendar.blade.php +++ b/resources/views/meet/settings/calendar.blade.php @@ -1,48 +1,47 @@ -
-

Calendar integration

-

Sync scheduled meetings to your calendar

- -
-
-
-

Ladill Mail

-

- @if ($mailConnected) - Connected — events sync to your mailbox calendar - @elseif (! $mailConfigured) - Not configured on this server - @else - Not connected - @endif -

-
- @if ($mailConfigured && ! $mailConnected) -
- @csrf - -
- @endif -
-
-
-

Google Calendar

-

{{ $googleConnected ? 'Connected' : 'Not connected' }}

-
- @if ($googleAuthUrl && ! $googleConnected) - Connect - @endif -
-
-
-

Microsoft 365

-

{{ $microsoftConnected ? 'Connected' : 'Not connected' }}

-
- @if ($microsoftAuthUrl && ! $microsoftConnected) - Connect - @endif -
-

Apple Calendar: use iCal download on each meeting detail page.

-
-
+ + +
    +
  • +
    +

    Ladill Mail

    +

    + @if ($mailConnected) + Connected — events sync to your mailbox calendar + @elseif (! $mailConfigured) + Not configured on this server + @else + Not connected + @endif +

    +
    + @if ($mailConfigured && ! $mailConnected) +
    + @csrf + +
    + @endif +
  • +
  • +
    +

    Google Calendar

    +

    {{ $googleConnected ? 'Connected' : 'Not connected' }}

    +
    + @if ($googleAuthUrl && ! $googleConnected) + Connect + @endif +
  • +
  • +
    +

    Microsoft 365

    +

    {{ $microsoftConnected ? 'Connected' : 'Not connected' }}

    +
    + @if ($microsoftAuthUrl && ! $microsoftConnected) + Connect + @endif +
  • +
+

Apple Calendar: use iCal download on each meeting detail page.

+
+
diff --git a/resources/views/meet/settings/edit.blade.php b/resources/views/meet/settings/edit.blade.php index 4198959..37d6d80 100644 --- a/resources/views/meet/settings/edit.blade.php +++ b/resources/views/meet/settings/edit.blade.php @@ -1,56 +1,76 @@ -
-

Organization settings

- -
+ + @csrf @method('PUT') -
- - -
+ +
+
+ + +
-
- - -
+
+ + +
-
- - -
+
+ + +
- @if ($canManage) -
- - - @if (\App\Support\OrganizationBranding::hasCustomLogo($organization)) - + @if ($canManage) +
+ + + @if (\App\Support\OrganizationBranding::hasCustomLogo($organization)) + + @endif +
+ + @endif
- - @endif + @if ($isAdmin ?? false) -
-

Advanced

-
    -
  • Security policy
  • -
  • Calendar connections
  • -
  • Webhooks
  • + +
      +
    • +
      +

      Security policy

      +

      Meeting access rules, recording defaults, and session timeouts.

      +
      + Configure +
    • +
    • +
      +

      Calendar connections

      +

      Sync scheduled meetings to Ladill Mail, Google Calendar, or Microsoft 365.

      +
      + Manage +
    • +
    • +
      +

      Webhooks

      +

      Notify sibling Ladill apps when meetings are created or updated.

      +
      + Manage +
    -
+ @endif -

{{ $branchCount }} branch(es) configured.

-
+

{{ $branchCount }} branch(es) configured.

+
diff --git a/resources/views/meet/settings/security.blade.php b/resources/views/meet/settings/security.blade.php index 6d5a0ac..cb03ef8 100644 --- a/resources/views/meet/settings/security.blade.php +++ b/resources/views/meet/settings/security.blade.php @@ -1,23 +1,25 @@ -
-

Meeting security

-

Organization-wide defaults for {{ $organization->name }}

- -
+ + @csrf @method('PUT') - - - - -
- - -
-
- - -
- + + +
+ + + + +
+ + +
+
+ + +
+ +
+
-
+
diff --git a/resources/views/meet/settings/webhooks.blade.php b/resources/views/meet/settings/webhooks.blade.php index 8cb6a64..146b71e 100644 --- a/resources/views/meet/settings/webhooks.blade.php +++ b/resources/views/meet/settings/webhooks.blade.php @@ -1,39 +1,40 @@ -
-

Webhooks

-

Notify sibling Ladill apps when meetings change

+ + +
+ @csrf +
+ + +
+
+ + +
+
+ Events + @foreach ($events as $event) + + @endforeach +
+ +
+
-
- @csrf -
- - -
-
- - -
-
- Events - @foreach ($events as $event) - - @endforeach -
- -
- -
    - @forelse ($endpoints as $endpoint) -
  • -
    -

    {{ $endpoint->url }}

    -

    {{ implode(', ', $endpoint->events ?? []) }}

    -
    -
    @csrf @method('DELETE')
    -
  • - @empty -
  • No webhook endpoints configured.
  • - @endforelse -
-
+ +
    + @forelse ($endpoints as $endpoint) +
  • +
    +

    {{ $endpoint->url }}

    +

    {{ implode(', ', $endpoint->events ?? []) }}

    +
    +
    @csrf @method('DELETE')
    +
  • + @empty +
  • No webhook endpoints configured.
  • + @endforelse +
+
+