71 lines
4.1 KiB
PHP
71 lines
4.1 KiB
PHP
@extends('layouts.app')
|
|
@section('title', 'Ma signature — Signatures')
|
|
@section('content')
|
|
<header class="page-head">
|
|
<div>
|
|
<h1>Ma signature</h1>
|
|
<p class="lead">Elle est insérée automatiquement dans Outlook. Modèle appliqué : {{ $full['template'] ?? 'aucun' }}.</p>
|
|
</div>
|
|
</header>
|
|
|
|
<div class="split">
|
|
<div class="card">
|
|
<h2>Nouveau message</h2>
|
|
@include('partials.signature-frame', ['html' => $full['html'] ?? '<em>Aucune signature</em>'])
|
|
<h2 style="margin-top:18px">Réponse et transfert</h2>
|
|
@include('partials.signature-frame', ['html' => ($reply['html'] ?? '') !== '' ? $reply['html'] : '<em>Aucune signature</em>', 'class' => 'short'])
|
|
</div>
|
|
|
|
<form method="post" action="{{ route('portal.update') }}" class="card">
|
|
@csrf @method('PUT')
|
|
<h2>Mes informations</h2>
|
|
@if (! $profile['fields'])
|
|
<p class="muted">Aucun champ n'est modifiable pour le moment. Vos informations viennent de l'annuaire de la collectivité :
|
|
pour les corriger, contactez le service des ressources humaines ou le support informatique.</p>
|
|
@else
|
|
<p class="muted">Ces valeurs ne modifient que votre signature, pas l'annuaire.</p>
|
|
@foreach ($profile['fields'] as $f)
|
|
@php
|
|
$mode = ! $f['overridden'] ? 'directory' : ($f['override'] === '' ? 'hidden' : 'custom');
|
|
$fieldId = 'f-'.$f['key'];
|
|
@endphp
|
|
<fieldset data-field>
|
|
<legend>{{ $f['label'] }}</legend>
|
|
<label class="option"><input type="radio" name="fields[{{ $f['key'] }}][mode]" value="directory" @checked($mode === 'directory')>
|
|
<span>Annuaire : <strong>{{ $f['directory_value'] ?: '(vide)' }}</strong></span></label>
|
|
<label class="option"><input type="radio" name="fields[{{ $f['key'] }}][mode]" value="custom" @checked($mode === 'custom')>
|
|
<span style="flex:1">Valeur personnalisée
|
|
<input type="text" id="{{ $fieldId }}" name="fields[{{ $f['key'] }}][value]" value="{{ $mode === 'custom' ? $f['override'] : '' }}" style="margin-top:6px"
|
|
maxlength="120" @if ($f['type'] === 'phone') inputmode="tel" placeholder="ex. 06 12 34 56 78" @endif aria-label="{{ $f['label'] }} personnalisé">
|
|
</span></label>
|
|
<label class="option"><input type="radio" name="fields[{{ $f['key'] }}][mode]" value="hidden" @checked($mode === 'hidden')>
|
|
<span>Ne pas afficher</span></label>
|
|
</fieldset>
|
|
@endforeach
|
|
@endif
|
|
|
|
@php $rv = $profile['reply_variant'] ?? 'default'; $labels = ['short' => 'signature courte', 'full' => 'signature complète', 'none' => 'aucune signature']; @endphp
|
|
<fieldset>
|
|
<legend>En réponse et transfert</legend>
|
|
@foreach (['default' => 'Réglage par défaut ('.$labels[$profile['reply_variant_default']].')', 'short' => 'Signature courte', 'full' => 'Signature complète', 'none' => 'Aucune signature'] as $value => $label)
|
|
<label class="option"><input type="radio" name="reply_variant" value="{{ $value }}" @checked($rv === $value)><span>{{ $label }}</span></label>
|
|
@endforeach
|
|
</fieldset>
|
|
|
|
<div class="row" style="margin-top:16px"><button class="btn" type="submit"><x-icon name="save" />Enregistrer</button></div>
|
|
</form>
|
|
</div>
|
|
@endsection
|
|
|
|
@push('scripts')
|
|
<script>
|
|
// Saisir une valeur sélectionne automatiquement « Valeur personnalisée »
|
|
document.querySelectorAll('[data-field] input[type=text]').forEach((input) => {
|
|
input.addEventListener('input', () => {
|
|
const custom = input.closest('[data-field]').querySelector('input[value=custom]');
|
|
if (custom) custom.checked = true;
|
|
});
|
|
});
|
|
</script>
|
|
@endpush
|