113 lines
4.9 KiB
PHP
113 lines
4.9 KiB
PHP
@extends('layouts.app')
|
|
|
|
@section('content')
|
|
<section class="page-wrap">
|
|
<header class="topbar">
|
|
<div class="title">
|
|
<a href="{{ route('contacts.index', ['group' => $group->id]) }}" class="link">Retour aux contacts</a>
|
|
<h1 class="h-offset">Modifier le groupe</h1>
|
|
<p>{{ $group->contacts_count }} contact(s) · groupe local</p>
|
|
</div>
|
|
</header>
|
|
|
|
<form method="POST" action="{{ route('contact-groups.update', $group) }}" class="panel">
|
|
@csrf
|
|
@method('PUT')
|
|
<input type="hidden" name="members_submitted" value="1">
|
|
|
|
<div class="panel-header">
|
|
<h2>Informations</h2>
|
|
</div>
|
|
|
|
<div class="panel-body stack">
|
|
<div class="form-grid cols-2">
|
|
<div class="field">
|
|
<label for="name">Nom</label>
|
|
<input id="name" name="name" value="{{ old('name', $group->name) }}" required class="input">
|
|
@error('name')
|
|
<p class="notice error">{{ $message }}</p>
|
|
@enderror
|
|
</div>
|
|
|
|
<label class="field-label inline-badges">
|
|
<input name="is_favorite" type="checkbox" value="1" @checked(old('is_favorite', $group->is_favorite))>
|
|
Favori
|
|
</label>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label for="description">Description</label>
|
|
<textarea id="description" name="description" rows="4" class="textarea">{{ old('description', $group->description) }}</textarea>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="panel-header">
|
|
<h2>Membres</h2>
|
|
<span class="pill">{{ count($selectedContactIds) }} selectionne(s)</span>
|
|
</div>
|
|
|
|
<div class="table-wrap">
|
|
<table class="data-table">
|
|
<thead>
|
|
<tr>
|
|
<th>Inclure</th>
|
|
<th>Contact</th>
|
|
<th>Telephone</th>
|
|
<th>Source</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse ($contacts as $contact)
|
|
@php($primaryPhone = $contact->phoneNumbers->firstWhere('is_primary', true) ?? $contact->phoneNumbers->first())
|
|
<tr>
|
|
<td>
|
|
<input
|
|
name="contact_ids[]"
|
|
type="checkbox"
|
|
value="{{ $contact->id }}"
|
|
@checked(in_array($contact->id, old('contact_ids', $selectedContactIds), false))
|
|
>
|
|
</td>
|
|
<td>
|
|
{{ $contact->displayName() }}
|
|
<div class="muted truncate">{{ $contact->email ?: $contact->organization ?: 'Sans detail' }}</div>
|
|
</td>
|
|
<td>{{ $primaryPhone?->normalized_number ?: $primaryPhone?->raw_number ?: 'Aucun' }}</td>
|
|
<td>
|
|
<span class="badge {{ $contact->source === 'local' ? '' : 'pending' }}">
|
|
{{ ucfirst($contact->source) }}
|
|
</span>
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="4" class="empty-state">Aucun contact disponible.</td>
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="panel-body">
|
|
<div class="actions">
|
|
<button type="submit" class="primary">Enregistrer</button>
|
|
<a href="{{ route('contacts.index', ['group' => $group->id]) }}" class="secondary">Annuler</a>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
|
|
<form method="POST" action="{{ route('contact-groups.destroy', $group) }}" onsubmit="return confirm('Supprimer ce groupe ?')" class="panel">
|
|
@csrf
|
|
@method('DELETE')
|
|
|
|
<div class="panel-header">
|
|
<h2>Suppression</h2>
|
|
</div>
|
|
<div class="panel-body stack-sm">
|
|
<p class="muted">La suppression retire le groupe des contacts associes.</p>
|
|
<button type="submit" class="danger">Supprimer le groupe</button>
|
|
</div>
|
|
</form>
|
|
</section>
|
|
@endsection
|