feat: Mettre à jour la configuration du backend et le formulaire de contact pour utiliser BASE_URL
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
# Configuration SMTP pour contact-backend.js
|
||||
BASE_URL=http://localhost
|
||||
SMTP_HOST=HOST
|
||||
SMTP_PORT=PORT
|
||||
SMTP_SECURE=false
|
||||
|
||||
+2
-2
@@ -19,9 +19,9 @@ COPY . .
|
||||
RUN npm run build
|
||||
|
||||
|
||||
EXPOSE 1313
|
||||
EXPOSE 1313 3001
|
||||
|
||||
CMD ["hugo", "server", "-D", "--bind", "0.0.0.0", "--baseURL", "http://localhost:1313", "--appendPort=false"]
|
||||
CMD ["sh", "-c", "BASE_URL=${BASE_URL:-http://localhost}; node contact-backend.js & hugo server -D --bind 0.0.0.0 --baseURL ${BASE_URL}:1313 --appendPort=false"]
|
||||
|
||||
# @TODO: Ajouter une étape de build pour générer les fichiers statiques de Hugo
|
||||
# gunzippé et optimisé pour la production
|
||||
|
||||
@@ -12,7 +12,7 @@ docker build --no-cache -t chill-site:latest .
|
||||
## Lancer le site en local avec un nom de conteneur
|
||||
|
||||
```bash
|
||||
docker run --name chill-site-container -p 1313:1313 -d chill-site:latest
|
||||
docker run --name chill-site-container -p 1313:1313 -p 3001:3001 -d chill-site:latest
|
||||
```
|
||||
|
||||
Pour relancer après un arrêt :
|
||||
|
||||
+5
-5
@@ -37,17 +37,17 @@ app.post('/contact', upload.none(), async (req, res) => {
|
||||
if (req.body.website && req.body.website.trim() !== '') {
|
||||
return res.status(400).send('Bot détecté.');
|
||||
}
|
||||
const { email, sujet, message } = req.body;
|
||||
if (!email || !sujet || !message) {
|
||||
return res.status(400).send('Champs manquants.');
|
||||
const { email, subject, message } = req.body;
|
||||
if (!email || !subject || !message) {
|
||||
return res.status(400).send('Champs manquants');
|
||||
}
|
||||
try {
|
||||
await transporter.sendMail({
|
||||
from: process.env.SMTP_USER,
|
||||
to: process.env.SMTP_USER,
|
||||
replyTo: email,
|
||||
subject: `Contact site: ${sujet}`,
|
||||
text: `Email: ${email}\nSujet: ${sujet}\nMessage:\n${message}`
|
||||
subject: `Contact site: ${subject}`,
|
||||
text: `Email: ${email}\nSujet: ${subject}\nMessage:\n${message}`
|
||||
});
|
||||
res.status(200).send('Message envoyé !');
|
||||
} catch (err) {
|
||||
|
||||
@@ -3,7 +3,6 @@ title: "Nous contacter"
|
||||
layout: "simple"
|
||||
contactForm:
|
||||
title: "Formulaire de contact"
|
||||
action: "http://localhost:3001/contact"
|
||||
developers:
|
||||
title: "Échanger avec les développeurs"
|
||||
description: "Il existe un salon sur la messagerie Matrix, pour échanger avec les développeurs de Chill."
|
||||
|
||||
@@ -45,7 +45,7 @@ pagination = { pagerSize = 6, path = "page" }
|
||||
|
||||
# Security Configuration
|
||||
[security.funcs]
|
||||
getenv = ['^HUGO_', '^CI$']
|
||||
getenv = ['^HUGO_', '^CI$', '^BASE_URL$']
|
||||
|
||||
|
||||
# Required Markup Configuration
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
{{ $form := .Page.Params.contactForm }}
|
||||
{{ $baseURL := default "http://localhost" (getenv "BASE_URL") }}
|
||||
{{ $normalizedBaseURL := strings.TrimSuffix "/" $baseURL }}
|
||||
{{ $defaultContactAction := printf "%s:3001/contact" $normalizedBaseURL }}
|
||||
|
||||
|
||||
|
||||
<form id="contactForm" class="max-w-lg mx-auto p-6 bg-white rounded shadow" method="POST"
|
||||
action="{{ $form.action | default "http://localhost:3001/contact" }}">
|
||||
action="{{ $form.action | default $defaultContactAction }}">
|
||||
<h3 class="text-2xl font-bold mb-4">{{ $form.title }}</h3>
|
||||
{{ range $form.fields }}
|
||||
<div class="mb-4">
|
||||
|
||||
Reference in New Issue
Block a user