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
|
# Configuration SMTP pour contact-backend.js
|
||||||
|
BASE_URL=http://localhost
|
||||||
SMTP_HOST=HOST
|
SMTP_HOST=HOST
|
||||||
SMTP_PORT=PORT
|
SMTP_PORT=PORT
|
||||||
SMTP_SECURE=false
|
SMTP_SECURE=false
|
||||||
|
|||||||
+2
-2
@@ -19,9 +19,9 @@ COPY . .
|
|||||||
RUN npm run build
|
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
|
# @TODO: Ajouter une étape de build pour générer les fichiers statiques de Hugo
|
||||||
# gunzippé et optimisé pour la production
|
# 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
|
## Lancer le site en local avec un nom de conteneur
|
||||||
|
|
||||||
```bash
|
```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 :
|
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() !== '') {
|
if (req.body.website && req.body.website.trim() !== '') {
|
||||||
return res.status(400).send('Bot détecté.');
|
return res.status(400).send('Bot détecté.');
|
||||||
}
|
}
|
||||||
const { email, sujet, message } = req.body;
|
const { email, subject, message } = req.body;
|
||||||
if (!email || !sujet || !message) {
|
if (!email || !subject || !message) {
|
||||||
return res.status(400).send('Champs manquants.');
|
return res.status(400).send('Champs manquants');
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
await transporter.sendMail({
|
await transporter.sendMail({
|
||||||
from: process.env.SMTP_USER,
|
from: process.env.SMTP_USER,
|
||||||
to: process.env.SMTP_USER,
|
to: process.env.SMTP_USER,
|
||||||
replyTo: email,
|
replyTo: email,
|
||||||
subject: `Contact site: ${sujet}`,
|
subject: `Contact site: ${subject}`,
|
||||||
text: `Email: ${email}\nSujet: ${sujet}\nMessage:\n${message}`
|
text: `Email: ${email}\nSujet: ${subject}\nMessage:\n${message}`
|
||||||
});
|
});
|
||||||
res.status(200).send('Message envoyé !');
|
res.status(200).send('Message envoyé !');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ title: "Nous contacter"
|
|||||||
layout: "simple"
|
layout: "simple"
|
||||||
contactForm:
|
contactForm:
|
||||||
title: "Formulaire de contact"
|
title: "Formulaire de contact"
|
||||||
action: "http://localhost:3001/contact"
|
|
||||||
developers:
|
developers:
|
||||||
title: "Échanger avec les développeurs"
|
title: "Échanger avec les développeurs"
|
||||||
description: "Il existe un salon sur la messagerie Matrix, pour échanger avec les développeurs de Chill."
|
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 Configuration
|
||||||
[security.funcs]
|
[security.funcs]
|
||||||
getenv = ['^HUGO_', '^CI$']
|
getenv = ['^HUGO_', '^CI$', '^BASE_URL$']
|
||||||
|
|
||||||
|
|
||||||
# Required Markup Configuration
|
# Required Markup Configuration
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
{{ $form := .Page.Params.contactForm }}
|
{{ $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"
|
<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>
|
<h3 class="text-2xl font-bold mb-4">{{ $form.title }}</h3>
|
||||||
{{ range $form.fields }}
|
{{ range $form.fields }}
|
||||||
<div class="mb-4">
|
<div class="mb-4">
|
||||||
|
|||||||
Reference in New Issue
Block a user