🎨 style(navigation): reduce icon sizes in navigation components for better layout consistency

🔧 fix(ApplicationForm): change validation rule for reason to nullable string
📝 update(profile): simplify membership status messages and remove unnecessary fields
🎨 style(election): adjust import formatting for better readability
🎨 style(association): reduce icon sizes in association navigation links for consistency
This commit is contained in:
fsociety
2024-10-22 15:59:33 +02:00
parent f1e6be1dd8
commit ce1cffc66a
7 changed files with 25 additions and 34 deletions

View File

@@ -7,6 +7,6 @@ use Livewire\Form;
class ApplicationForm extends Form class ApplicationForm extends Form
{ {
#[Validate('required|min:5')] #[Validate('nullable|string')]
public $reason = ''; public $reason = '';
} }

View File

@@ -9,7 +9,7 @@
<li class="{{ $currentRoute === 'association.profile' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}"> <li class="{{ $currentRoute === 'association.profile' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.profile') }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.profile') }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-id-card-clip h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-id-card-clip h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Meine Mitgliedschaft</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Meine Mitgliedschaft</span>
</div> </div>
</a> </a>
@@ -17,7 +17,7 @@
<li class="{{ $currentRoute === 'association.election' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}"> <li class="{{ $currentRoute === 'association.election' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.election', ['election' => date('Y')]) }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.election', ['election' => date('Y')]) }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-check-to-slot h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-check-to-slot h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Vorstands-Wahlen</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Vorstands-Wahlen</span>
</div> </div>
</a> </a>
@@ -25,7 +25,7 @@
<li class="{{ $currentRoute === 'association.elections' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}"> <li class="{{ $currentRoute === 'association.elections' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.elections') }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.elections') }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-booth-curtain h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-booth-curtain h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Einstellungen</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Einstellungen</span>
</div> </div>
</a> </a>
@@ -33,7 +33,7 @@
<li class="{{ $currentRoute === 'association.members.admin' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}"> <li class="{{ $currentRoute === 'association.members.admin' ? $isCurrentRouteClass : $isNotCurrentRouteClass }}">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.members.admin') }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('association.members.admin') }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-users h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-users h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Mitglieder</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Mitglieder</span>
</div> </div>
</a> </a>

View File

@@ -13,7 +13,7 @@
@click.prevent="open = !open; sidebarExpanded = true"> @click.prevent="open = !open; sidebarExpanded = true">
<div class="flex items-center justify-between"> <div class="flex items-center justify-between">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-graduation-cap h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-graduation-cap h-4 w-4"></i>
<span <span
class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Browse</span> class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Browse</span>
</div> </div>
@@ -58,7 +58,7 @@
href="#0" @click.prevent="open = !open; sidebarExpanded = true"> href="#0" @click.prevent="open = !open; sidebarExpanded = true">
<div class="flex items-center justify-between"> <div class="flex items-center justify-between">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-pencil h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-pencil h-4 w-4"></i>
<span <span
class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Manage</span> class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Manage</span>
</div> </div>

View File

@@ -13,7 +13,7 @@
@click.prevent="open = !open; sidebarExpanded = true"> @click.prevent="open = !open; sidebarExpanded = true">
<div class="flex items-center justify-between"> <div class="flex items-center justify-between">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-calendar h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-calendar h-4 w-4"></i>
<span <span
class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Browse</span> class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Browse</span>
</div> </div>
@@ -58,7 +58,7 @@
href="#0" @click.prevent="open = !open; sidebarExpanded = true"> href="#0" @click.prevent="open = !open; sidebarExpanded = true">
<div class="flex items-center justify-between"> <div class="flex items-center justify-between">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-pencil h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-pencil h-4 w-4"></i>
<span <span
class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Manage</span> class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Manage</span>
</div> </div>

View File

@@ -9,7 +9,7 @@
<li class="pl-4 pr-3 py-2 rounded-lg mb-0.5 last:mb-0"> <li class="pl-4 pr-3 py-2 rounded-lg mb-0.5 last:mb-0">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('meetups.worldmap') }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('meetups.worldmap') }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-map h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-map h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">World Map</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">World Map</span>
</div> </div>
</a> </a>
@@ -17,7 +17,7 @@
<li class="pl-4 pr-3 py-2 rounded-lg mb-0.5 last:mb-0"> <li class="pl-4 pr-3 py-2 rounded-lg mb-0.5 last:mb-0">
<a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('meetups.grid') }}"> <a class="block text-gray-800 dark:text-gray-100 hover:text-gray-900 dark:hover:text-white truncate transition" href="{{ route('meetups.grid') }}">
<div class="flex items-center"> <div class="flex items-center">
<i class="fa-sharp-duotone fa-solid fa-handshake-angle h-6 w-6"></i> <i class="fa-sharp-duotone fa-solid fa-handshake-angle h-4 w-4"></i>
<span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Alle Meetups</span> <span class="text-sm font-medium ml-4 lg:opacity-0 lg:sidebar-expanded:opacity-100 2xl:opacity-100 duration-200">Alle Meetups</span>
</div> </div>
</a> </a>

View File

@@ -1,7 +1,8 @@
<?php <?php
use Livewire\Volt\Component; use Livewire\Volt\Component;
use swentel\nostr\{Filter\Filter, use swentel\nostr\{
Filter\Filter,
Key\Key, Key\Key,
Message\EventMessage, Message\EventMessage,
Message\RequestMessage, Message\RequestMessage,

View File

@@ -158,8 +158,7 @@ $save = function ($type) {
$this->form->validate(); $this->form->validate();
$this->currentPleb $this->currentPleb
->update([ ->update([
'application_for' => $type, 'association_status' => $type,
'application_text' => $this->form->reason,
]); ]);
}; };
@@ -334,7 +333,7 @@ $loadEvents = function () {
<path <path
d="M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z"></path> d="M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z"></path>
</svg> </svg>
<div>Profil in der Datenbank vorhanden. Bewerbung kann erfolgen.</div> <div>Profil in der Datenbank vorhanden.</div>
</div> </div>
</div> </div>
</div> </div>
@@ -381,26 +380,17 @@ $loadEvents = function () {
<section> <section>
@if($currentPubkey && !$currentPleb->application_for && $currentPleb->association_status->value < 2) @if($currentPubkey && !$currentPleb->application_for && $currentPleb->association_status->value < 2)
<h3 class="text-xl leading-snug text-[#1B1B1B] dark:text-gray-100 font-bold mb-1"> <h3 class="text-xl leading-snug text-[#1B1B1B] dark:text-gray-100 font-bold mb-1">
aktives Mitglied werden Einundzwanzig Mitglied werden
</h3> </h3>
<h4 class="text-xs leading-snug text-[#1B1B1B] dark:text-gray-100 font-italic mb-1"> <h4 class="text-xs leading-snug text-[#1B1B1B] dark:text-gray-100 font-italic mb-1">
Aktivmitglieder arbeiten ehrenamtlich für den Verein, z.B. als Podcast-Moderator Nur Personen können Mitglied werden und zahlen 21.000 Satoshis im Jahr (Die Zahlung
oder Software-Entwickler. Der Vorstand wählt sie aus. Nur Menschen können ist noch in der Entwicklung).<br>
Aktivmitglieder werden, zahlen 21.000 Satoshis im Jahr und haben volles Stimmrecht. <span class="text-amber-500">Firmen melden sich bitte direkt an den Vorstand.</span>
</h4> </h4>
<div class="text-sm">
<x-textarea
corner="Woher kennen wir dich? Was möchtest du einbringen?"
description="Wir bitten dich mindestens von 3 aktiven Mitgliedern auf Nostr gefolgt zu werden."
label="Warum möchtest du aktives Mitglied werden?"
wire:model="form.reason"/>
</div>
<div class="sm:flex sm:items-center space-y-4 sm:space-y-0 sm:space-x-4 mt-5"> <div class="sm:flex sm:items-center space-y-4 sm:space-y-0 sm:space-x-4 mt-5">
<div class="sm:w-1/3 flex flex-col space-y-2"> <div class="sm:w-1/2 flex flex-col space-y-2">
<x-button label="Für aktive Mitgliedschaft bewerben" <x-button label="Mit deinem aktuellen Nostr-Profil Mitglied werden"
wire:click="save({{ \App\Enums\AssociationStatus::ACTIVE() }})"/> wire:click="save({{ \App\Enums\AssociationStatus::PASSIVE() }})"/>
<x-badge outline
label="Es wird im Anschluss ein Nostr Event erzeugt, das du mit dem Mitgliedsbeitrag zappen kannst, nachdem du bestätigt wurdest."/>
</div> </div>
</div> </div>
@endif @endif
@@ -448,8 +438,7 @@ $loadEvents = function () {
</svg> </svg>
<div> <div>
<div class="font-medium text-gray-800 dark:text-gray-100 mb-1"> <div class="font-medium text-gray-800 dark:text-gray-100 mb-1">
Dein aktueller Du bist derzeit ein Mitglied des Vereins.
Status: {{ $currentPleb->association_status->label() }}
</div> </div>
</div> </div>
</div> </div>
@@ -522,7 +511,8 @@ $loadEvents = function () {
class="btn dark:bg-gray-800 border-gray-200 dark:border-gray-700/60 hover:border-gray-300 dark:hover:border-gray-600 text-amber-500" class="btn dark:bg-gray-800 border-gray-200 dark:border-gray-700/60 hover:border-gray-300 dark:hover:border-gray-600 text-amber-500"
> >
<i class="fa-sharp-duotone fa-solid fa-user-helmet-safety mr-2"></i> <i class="fa-sharp-duotone fa-solid fa-user-helmet-safety mr-2"></i>
Die Zahlungsfunktion der Mitgliedsbeiträge wird derzeit entwickelt. Die Zahlungsfunktion der Mitgliedsbeiträge wird
derzeit entwickelt.
</button> </button>
</div> </div>
@endif @endif