Files
PleinR/.env.example
T
Claude e86c67c17e URL publique du site réglable depuis le backoffice
Connecter un réseau social imposait de poser NEXT_PUBLIC_SITE_URL dans
docker-compose et de redémarrer le conteneur. L'écran Réseaux sociaux porte
désormais le champ, pré-rempli avec l'adresse par laquelle l'administrateur
consulte la page.

- Nouveau réglage `site_public_url` ; `siteUrl()` lit la base puis retombe sur
  les variables d'environnement, donc les déploiements actuels ne bougent pas.
- `siteUrl()`, `redirectUri()`, `authorizeUrl()`, `promoLink()` et
  `buildPromoMessage()` deviennent asynchrones.
- Seule l'origine est conservée : le schéma est ajouté s'il manque, un chemin
  est retiré, et une adresse invalide revient sur l'écran avec un message au
  lieu d'une page d'erreur brute.
- `saveSiteSettings` saute cette clé : le formulaire Paramètres ne la contient
  pas et l'aurait écrasée à chaque enregistrement.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QXNXRC4j5VLfKvpyyisrnb
2026-07-25 08:28:04 +00:00

61 lines
2.4 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ---- Database (external Postgres) ----
# With docker-compose the app reaches Postgres via the UNIQUE container name
# "pleinr-postgres" on the internal port 5432 (avoids collisions with other
# "postgres" containers on a shared proxy network; NOT the published host port).
# For local dev outside Docker against the dockerised Postgres, use
# localhost on the published host port: postgres://pleinr:pleinr@localhost:54329/pleinr
DATABASE_URL=postgres://pleinr:pleinr@pleinr-postgres:5432/pleinr
# Individual vars consumed by the postgres container in docker-compose.yml
POSTGRES_USER=pleinr
POSTGRES_PASSWORD=pleinr
POSTGRES_DB=pleinr
# ---- Auth.js (NextAuth v5) ----
# Optional with docker-compose: if left unset, the container generates and
# persists one automatically. To set it yourself: openssl rand -base64 32
AUTH_SECRET=
# Public URL of the app (used by Auth.js for callbacks).
# Leave EMPTY behind a reverse proxy (Nginx Proxy Manager, Traefik…): Auth.js
# auto-detects it from the Host / X-Forwarded-Proto headers (trustHost).
# Set it only to force a value, e.g. https://pleinr.ffnancy.fr
AUTH_URL=
# ---- First admin user (created by the seed script) ----
SEED_ADMIN_EMAIL=admin@plein-r.fr
SEED_ADMIN_PASSWORD=changeme123
SEED_ADMIN_NAME=Administrateur Plein R
# ---- App ----
NODE_ENV=production
PORT=3000
# URL publique du site. Se règle normalement dans Backend › Réseaux sociaux ;
# cette variable ne sert que de repli (puis AUTH_URL en dernier recours).
NEXT_PUBLIC_SITE_URL=
# ---- Publication des promotions sur les réseaux sociaux ----
# La configuration se fait désormais dans Backend › Réseaux sociaux : on y colle
# les identifiants de l'application, on clique Connecter, et les jetons sont
# récupérés et stockés chiffrés automatiquement. Rien à mettre ici dans le cas
# normal.
#
# Clé de chiffrement des jetons en base. Si elle est vide, AUTH_SECRET est
# utilisé. La définir explicitement permet de faire tourner AUTH_SECRET sans
# perdre les connexions réseaux.
# openssl rand -base64 32
SOCIAL_TOKEN_KEY=
# Versions d'API (facultatif)
FACEBOOK_GRAPH_VERSION=v21.0
LINKEDIN_API_VERSION=202506
# --- Repli historique ---
# Ces variables restent lues si aucun compte n'est connecté depuis le
# backoffice. Utile pour un jeton posé à la main ; sinon, laissez vide.
FACEBOOK_PAGE_ID=
FACEBOOK_PAGE_ACCESS_TOKEN=
LINKEDIN_ORGANIZATION_URN=
LINKEDIN_ORGANIZATION_ID=
LINKEDIN_ACCESS_TOKEN=