Adds create customer drawer to customers page

Implements new drawer for creating customers with form inputs for contact details and notes

Enhances customer management by providing a streamlined way to add new customer records directly from the customers index page
This commit is contained in:
Janus C. H. Knudsen 2026-01-24 10:59:21 +01:00
parent dc2bab5702
commit 38e9243bcd
5 changed files with 193 additions and 1 deletions

View file

@ -10,7 +10,7 @@
<i class="ph ph-export"></i>
<span>@Model.ExportButtonText</span>
</swp-btn>
<swp-btn class="primary">
<swp-btn class="primary" data-drawer-trigger="create-customer-drawer">
<i class="ph ph-plus"></i>
<span>@Model.CreateButtonText</span>
</swp-btn>

View file

@ -197,6 +197,80 @@
</swp-drawer-body>
</div>
<!-- Create Customer Drawer -->
<div id="create-customer-drawer" data-drawer="lg">
<swp-drawer-header>
<swp-drawer-title>
<i class="ph ph-user-plus"></i>
<span localize="customers.createDrawer.title">Opret ny kunde</span>
</swp-drawer-title>
<swp-drawer-close data-drawer-close>
<i class="ph ph-x"></i>
</swp-drawer-close>
</swp-drawer-header>
<swp-drawer-body>
<!-- Navn (påkrævet) -->
<swp-form-row>
<swp-form-label localize="customers.createDrawer.name">Navn *</swp-form-label>
<input type="text" id="createCustomerName" required>
</swp-form-row>
<!-- Kontaktoplysninger Card -->
<swp-card>
<swp-card-header>
<swp-card-title>
<i class="ph ph-address-book"></i>
<span localize="customers.drawer.contactInfo">Kontaktoplysninger</span>
</swp-card-title>
</swp-card-header>
<swp-edit-section>
<swp-edit-row>
<swp-edit-label localize="customers.drawer.phone">Telefon</swp-edit-label>
<swp-edit-input>
<input type="tel" id="createCustomerPhone">
</swp-edit-input>
</swp-edit-row>
<swp-edit-row>
<swp-edit-label localize="customers.drawer.email">Email</swp-edit-label>
<swp-edit-input>
<input type="email" id="createCustomerEmail">
</swp-edit-input>
</swp-edit-row>
<swp-edit-row>
<swp-edit-label localize="customers.drawer.address">Adresse</swp-edit-label>
<swp-edit-input>
<input type="text" id="createCustomerAddress">
</swp-edit-input>
</swp-edit-row>
<swp-edit-row>
<swp-edit-label localize="customers.drawer.zipCity">Postnr + By</swp-edit-label>
<swp-edit-input>
<input type="text" id="createCustomerZip" class="short">
<input type="text" id="createCustomerCity">
</swp-edit-input>
</swp-edit-row>
</swp-edit-section>
</swp-card>
<!-- Note -->
<swp-form-row class="note-field">
<swp-form-label localize="customers.createDrawer.note">Note</swp-form-label>
<textarea id="createCustomerNote" rows="3" localize-placeholder="customers.createDrawer.notePlaceholder" placeholder="Skriv en note om kunden..."></textarea>
</swp-form-row>
</swp-drawer-body>
<swp-drawer-footer>
<swp-btn class="secondary" data-drawer-close>
<span localize="common.cancel">Annuller</span>
</swp-btn>
<swp-btn class="primary" id="saveNewCustomer">
<span localize="customers.createDrawer.save">Opret kunde</span>
</swp-btn>
</swp-drawer-footer>
</div>
@section Scripts {
<script>
// Row click - navigate to detail page