Ajoute le SIRET aux paramètres association

This commit is contained in:
Michael committed 2026-07-16 20:08:56 +02:00
1 parent cf67fdc9de
commit 5ab7e48945
9 files changed
+27 -3

No files matched your search

+1 -1
View File
@@ -73,7 +73,7 @@ export function buildCustomEmail({ content, baseUrl, association = {} }) {
${content.signature ? `<tr><td style="padding:24px 40px 38px;font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:26px;color:#1B1B1B;">${lines(content.signature)}</td></tr>` : '<tr><td height="26" style="height:26px;line-height:26px;">&nbsp;</td></tr>'}
<tr><td bgcolor="#0F0E0D" style="background-color:#0F0E0D;padding:24px 40px;font-family:Arial,Helvetica,sans-serif;font-size:12px;color:#B7AFA6;line-height:22px;">
${esc(settings.association_name)}${settings.association_address ? ` &middot; ${lines(settings.association_address)}` : ''}<br>
${settings.association_contact ? `${esc(settings.association_contact)} &middot; ` : ''}${settings.association_email ? `<a href="mailto:${esc(settings.association_email)}" style="color:#E0777A;text-decoration:none;">${esc(settings.association_email)}</a>` : ''}${settings.association_phone ? ` &middot; ${esc(settings.association_phone)}` : ''}
${settings.association_contact ? `${esc(settings.association_contact)} &middot; ` : ''}${settings.association_email ? `<a href="mailto:${esc(settings.association_email)}" style="color:#E0777A;text-decoration:none;">${esc(settings.association_email)}</a>` : ''}${settings.association_phone ? ` &middot; ${esc(settings.association_phone)}` : ''}${settings.association_siret ? `<br>SIRET&nbsp;: ${esc(settings.association_siret)}` : ''}
</td></tr>
</table>
<!--[if mso]></td></tr></table><![endif]-->
+1 -1
View File
@@ -157,7 +157,7 @@ export function buildInvitationEmail({ rencontre, baseUrl, texts = {}, associati
<tr><td bgcolor="#0F0E0D" style="background-color:#0F0E0D;padding:24px 40px;font-family:Arial,Helvetica,sans-serif;font-size:12px;color:#B7AFA6;line-height:22px;">
${esc(settings.association_name)}${settings.association_address ? ` &middot; ${escML(settings.association_address)}` : ''}<br>
${settings.association_contact ? `${esc(settings.association_contact)} &middot; ` : ''}${settings.association_email ? `<a href="mailto:${esc(settings.association_email)}" style="color:#E0777A;text-decoration:none;">${esc(settings.association_email)}</a>` : ''}${settings.association_phone ? ` &middot; ${esc(settings.association_phone)}` : ''}
${settings.association_contact ? `${esc(settings.association_contact)} &middot; ` : ''}${settings.association_email ? `<a href="mailto:${esc(settings.association_email)}" style="color:#E0777A;text-decoration:none;">${esc(settings.association_email)}</a>` : ''}${settings.association_phone ? ` &middot; ${esc(settings.association_phone)}` : ''}${settings.association_siret ? `<br>SIRET&nbsp;: ${esc(settings.association_siret)}` : ''}
</td></tr>
</table>
+5
View File
@@ -1,6 +1,10 @@
import { z } from 'zod';
const trimmed = (max, min = 0) => z.string().trim().min(min).max(max);
const siret = z.string().trim().max(20).refine(
(value) => !value || /^\d{14}$/.test(value.replace(/\s/g, '')),
'doit contenir exactement 14 chiffres'
);
export const idParam = z.object({ id: z.coerce.number().int().positive() });
@@ -100,6 +104,7 @@ export const contentSchema = z.object({
association_address: trimmed(500).optional(),
association_email: trimmed(254).email().or(z.literal('')).optional(),
association_phone: trimmed(40).optional(),
association_siret: siret.optional(),
association_contact: trimmed(160).optional(),
association_website: z.string().trim().url().max(300).or(z.literal('')).optional(),
association_facebook_url: z.string().trim().url().max(500).or(z.literal('')).optional(),
+1
View File
@@ -3,6 +3,7 @@ export const ASSOCIATION_DEFAULTS = {
association_address: 'Palais des Sports Jean Weille\nNancy (54)',
association_email: 'contact@sluc-businessclub.fr',
association_phone: '+33 3 83 00 00 00',
association_siret: '',
association_contact: '',
association_website: '',
association_facebook_url: 'https://www.facebook.com/search/top?q=sluc%20business%20club',
+1
View File
@@ -63,6 +63,7 @@ INSERT INTO site_content (key, value) VALUES
('association_address', E'Palais des Sports Jean Weille\nNancy (54)'),
('association_email', 'contact@sluc-businessclub.fr'),
('association_phone', '+33 3 83 00 00 00'),
('association_siret', ''),
('association_contact', ''),
('association_website', ''),
('association_facebook_url', 'https://www.facebook.com/search/top?q=sluc%20business%20club'),
+1
View File
@@ -49,6 +49,7 @@ export default function Footer() {
{settings.association_contact && <span>{settings.association_contact}</span>}
{settings.association_email && <a href={`mailto:${settings.association_email}`} style={linkStyle}>{settings.association_email}</a>}
{settings.association_phone && <a href={`tel:${settings.association_phone.replace(/[^+\d]/g, '')}`} style={linkStyle}>{settings.association_phone}</a>}
{settings.association_siret && <span>SIRET : {settings.association_siret}</span>}
{settings.association_website && <a href={settings.association_website} target="_blank" rel="noopener noreferrer" style={linkStyle}>Site web</a>}
</div>
</div>
+14
View File
@@ -251,6 +251,20 @@ export function ParametresTab() {
<input name="association_phone" type="tel" value={settings.association_phone} onChange={onChange} maxLength={40} />
</label>
</div>
<label className="field">SIRET
<input
name="association_siret"
value={settings.association_siret}
onChange={onChange}
inputMode="numeric"
maxLength={20}
placeholder="14 chiffres"
aria-describedby="association-siret-help"
/>
<span id="association-siret-help" style={{ marginTop: 5, fontSize: 11.5, color: 'var(--gray-light)', fontWeight: 400 }}>
Les espaces sont acceptés; le numéro doit contenir exactement 14 chiffres.
</span>
</label>
<div className="grid-2" style={{ gap: 12 }}>
<label className="field">Contact principal
<input name="association_contact" value={settings.association_contact} onChange={onChange} maxLength={160} placeholder="Nom et fonction" />
+1
View File
@@ -3,6 +3,7 @@ export const ASSOCIATION_DEFAULTS = {
association_address: 'Palais des Sports Jean Weille\nNancy (54)',
association_email: 'contact@sluc-businessclub.fr',
association_phone: '+33 3 83 00 00 00',
association_siret: '',
association_contact: '',
association_website: '',
association_facebook_url: 'https://www.facebook.com/search/top?q=sluc%20business%20club',
+2 -1
View File
@@ -35,7 +35,7 @@ export default function Association() {
.map((name) => name.trim())
.filter(Boolean);
const hasContact = settings.association_address || settings.association_email
|| settings.association_phone || settings.association_contact;
|| settings.association_phone || settings.association_contact || settings.association_siret;
return (
<main>
@@ -147,6 +147,7 @@ export default function Association() {
{settings.association_address && <span style={{ whiteSpace: 'pre-line', color: 'var(--gray)' }}>{settings.association_address}</span>}
{settings.association_email && <a className="btn-link" href={`mailto:${settings.association_email}`}>{settings.association_email}</a>}
{settings.association_phone && <a className="btn-link" href={`tel:${settings.association_phone.replace(/[^+\d]/g, '')}`}>{settings.association_phone}</a>}
{settings.association_siret && <span style={{ color: 'var(--gray)' }}>SIRET : {settings.association_siret}</span>}
</div>
</div>
</section>