-> Refonte du système de login -> Récupération du MDP -> Refonte imports d'horaires + Modale de gestion d'horaires
253 lines
8.0 KiB
HTML
253 lines
8.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="fr" xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Réinitialisation de votre mot de passe - Ferrovia Panel</title>
|
|
<!--[if mso]>
|
|
<noscript>
|
|
<xml>
|
|
<o:OfficeDocumentSettings>
|
|
<o:PixelsPerInch>96</o:PixelsPerInch>
|
|
</o:OfficeDocumentSettings>
|
|
</xml>
|
|
</noscript>
|
|
<![endif]-->
|
|
<style>
|
|
body, table, td, a { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
|
|
table, td { mso-table-lspace: 0pt; mso-table-rspace: 0pt; }
|
|
img { -ms-interpolation-mode: bicubic; border: 0; outline: none; text-decoration: none; }
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
width: 100% !important;
|
|
height: 100% !important;
|
|
background-color: #f1f5f9;
|
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
|
|
color: #1e293b;
|
|
}
|
|
.wrapper {
|
|
width: 100%;
|
|
table-layout: fixed;
|
|
background-color: #f1f5f9;
|
|
padding-bottom: 40px;
|
|
}
|
|
.main {
|
|
background-color: #ffffff;
|
|
margin: 0 auto;
|
|
width: 100%;
|
|
max-width: 600px;
|
|
border-spacing: 0;
|
|
border-radius: 12px;
|
|
overflow: hidden;
|
|
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
|
|
}
|
|
.header {
|
|
background: linear-gradient(135deg, #062743 0%, #0e3b62 60%, #1a4e7a 100%);
|
|
padding: 36px 40px;
|
|
text-align: left;
|
|
}
|
|
.kicker {
|
|
font-size: 11px;
|
|
text-transform: uppercase;
|
|
letter-spacing: 1.5px;
|
|
color: #93c5fd;
|
|
font-weight: 700;
|
|
margin-bottom: 8px;
|
|
}
|
|
.brand-title {
|
|
font-size: 24px;
|
|
font-weight: 800;
|
|
color: #ffffff;
|
|
margin: 0;
|
|
letter-spacing: -0.5px;
|
|
}
|
|
.brand-subtitle {
|
|
font-size: 13px;
|
|
color: #cbd5e1;
|
|
margin: 4px 0 0 0;
|
|
}
|
|
.content {
|
|
padding: 40px;
|
|
line-height: 1.6;
|
|
}
|
|
.greeting {
|
|
font-size: 18px;
|
|
font-weight: 700;
|
|
color: #0f172a;
|
|
margin-top: 0;
|
|
margin-bottom: 16px;
|
|
}
|
|
.text {
|
|
font-size: 15px;
|
|
color: #334155;
|
|
margin-bottom: 20px;
|
|
}
|
|
.btn-container {
|
|
text-align: center;
|
|
padding: 24px 0 32px 0;
|
|
}
|
|
.button {
|
|
background-color: #0070f3;
|
|
background-image: linear-gradient(135deg, #0066cc 0%, #004c99 100%);
|
|
color: #ffffff !important;
|
|
text-decoration: none;
|
|
padding: 14px 32px;
|
|
border-radius: 8px;
|
|
font-weight: 600;
|
|
font-size: 15px;
|
|
display: inline-block;
|
|
box-shadow: 0 4px 12px rgba(0, 102, 204, 0.25);
|
|
}
|
|
.token-box {
|
|
background-color: #f8fafc;
|
|
border: 1px dashed #cbd5e1;
|
|
border-radius: 8px;
|
|
padding: 16px;
|
|
text-align: center;
|
|
margin: 20px 0;
|
|
}
|
|
.token-label {
|
|
font-size: 12px;
|
|
text-transform: uppercase;
|
|
letter-spacing: 1px;
|
|
color: #64748b;
|
|
margin-bottom: 6px;
|
|
}
|
|
.token-code {
|
|
font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
letter-spacing: 4px;
|
|
color: #0369a1;
|
|
}
|
|
.alert-box {
|
|
background-color: #eff6ff;
|
|
border-left: 4px solid #3b82f6;
|
|
padding: 14px 16px;
|
|
border-radius: 0 6px 6px 0;
|
|
margin: 24px 0;
|
|
font-size: 13.5px;
|
|
color: #1e40af;
|
|
}
|
|
.fallback-url {
|
|
background-color: #f8fafc;
|
|
border: 1px solid #e2e8f0;
|
|
border-radius: 6px;
|
|
padding: 12px;
|
|
font-size: 12px;
|
|
word-break: break-all;
|
|
color: #64748b;
|
|
margin-top: 10px;
|
|
}
|
|
.footer {
|
|
text-align: center;
|
|
padding: 24px;
|
|
font-size: 12px;
|
|
color: #94a3b8;
|
|
line-height: 1.5;
|
|
}
|
|
.footer a {
|
|
color: #64748b;
|
|
text-decoration: underline;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="wrapper">
|
|
<table role="presentation" width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
<tr>
|
|
<td align="center" style="padding-top: 30px; padding-bottom: 20px;">
|
|
<!-- CONTENEUR PRINCIPAL -->
|
|
<table class="main" role="presentation" cellspacing="0" cellpadding="0" border="0">
|
|
<!-- EN-TÊTE BRANDING -->
|
|
<tr>
|
|
<td class="header">
|
|
<div class="kicker">Console d'exploitation</div>
|
|
<h1 class="brand-title">FERROVIA PANEL</h1>
|
|
<p class="brand-subtitle">Gestion régionale et système d'information ferroviaire</p>
|
|
</td>
|
|
</tr>
|
|
|
|
<!-- CONTENU DU MESSAGE -->
|
|
<tr>
|
|
<td class="content">
|
|
<h2 class="greeting">Réinitialisation de votre mot de passe</h2>
|
|
|
|
<p class="text">
|
|
Bonjour,
|
|
</p>
|
|
|
|
<p class="text">
|
|
Une demande de réinitialisation de mot de passe a été effectuée pour le compte administrateur associé à l'adresse <strong>{{ .Email }}</strong>.
|
|
</p>
|
|
|
|
<p class="text">
|
|
Cliquez sur le bouton ci-dessous pour choisir votre nouveau mot de passe sécurisé :
|
|
</p>
|
|
|
|
<!-- BOUTON D'ACTION PRINCIPAL -->
|
|
<div class="btn-container">
|
|
<!--[if mso]>
|
|
<v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="{{ .ConfirmationURL }}" style="height:48px;v-text-anchor:middle;width:260px;" arcsize="15%" stroke="f" fillcolor="#0066cc">
|
|
<w:anchorlock/>
|
|
<center style="color:#ffffff;font-family:sans-serif;font-size:15px;font-weight:bold;">
|
|
Définir mon mot de passe →
|
|
</center>
|
|
</v:roundrect>
|
|
<![endif]-->
|
|
<!--[if !mso]><!-- -->
|
|
<a href="{{ .ConfirmationURL }}" class="button" target="_blank">
|
|
Définir mon nouveau mot de passe →
|
|
</a>
|
|
<!--<![endif]-->
|
|
</div>
|
|
|
|
{{ if .Token }}
|
|
<div class="token-box">
|
|
<div class="token-label">Code de sécurité à usage unique</div>
|
|
<div class="token-code">{{ .Token }}</div>
|
|
</div>
|
|
{{ end }}
|
|
|
|
<div class="alert-box">
|
|
<strong>Important :</strong> Ce lien de sécurité est temporaire et expire automatiquement après <strong>1 heure</strong>.
|
|
</div>
|
|
|
|
<p class="text" style="font-size: 13px; color: #64748b; margin-bottom: 6px;">
|
|
Si le bouton ne fonctionne pas, copiez et collez l'URL suivante dans votre navigateur :
|
|
</p>
|
|
<div class="fallback-url">
|
|
{{ .ConfirmationURL }}
|
|
</div>
|
|
|
|
<hr style="border: none; border-top: 1px solid #e2e8f0; margin: 30px 0 20px 0;" />
|
|
|
|
<p class="text" style="font-size: 13px; color: #94a3b8; margin-bottom: 0;">
|
|
Si vous n'êtes pas à l'origine de cette demande, vous pouvez ignorer cet email en toute sécurité. Votre mot de passe actuel restera inchangé et votre compte demeure protégé.
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<!-- PIED DE PAGE -->
|
|
<table role="presentation" width="100%" style="max-width: 600px;" cellspacing="0" cellpadding="0" border="0">
|
|
<tr>
|
|
<td class="footer">
|
|
<p style="margin: 8px 0;">
|
|
<strong>Ferrovia Panel</strong> • Système d'Exploitation Ferroviaire
|
|
</p>
|
|
<p style="margin: 4px 0;">
|
|
Cet email a été envoyé automatiquement par le serveur d'authentification Supabase. Merci de ne pas y répondre directement.
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</body>
|
|
</html>
|