Formulaire de contact avec rate limiting simple #48

This commit is contained in:
Colin Maudry
2025-09-29 19:32:15 +02:00
parent 1d21cbb69d
commit 928f75f504
4 changed files with 15 additions and 22 deletions
+7
View File
@@ -5,3 +5,10 @@ SOURCE_STATS_CSV_PATH="https://www.data.gouv.fr/api/1/datasets/r/8ded94de-3b80-4
# Chemin vers le schéma de données # Chemin vers le schéma de données
DATA_SCHEMA_PATH=https://www.data.gouv.fr/api/1/datasets/r/9a4144c0-ee44-4dec-bee5-bbef38191d9a DATA_SCHEMA_PATH=https://www.data.gouv.fr/api/1/datasets/r/9a4144c0-ee44-4dec-bee5-bbef38191d9a
# Formulaire de contact
SENDER_SERVER_DOMAIN="mail.example.com" # serveur SMTP
LOGIN_PASSWORD="" # mot de passe du serveur
LOGIN_EMAIL="connect@example.fr" # adresse utilisée pour se connecter au serveur SMTP
FROM_EMAIL="colin+contactform@maudry.com" # dresse d'envoi des emails (From)
TO_EMAIL="colin+decp@maudry.com" # adresse de destination des emails (To)
+6 -3
View File
@@ -38,9 +38,12 @@ python run.py
#### 2.1.0 #### 2.1.0
- Ajout des vues [acheteur](https://decp.info/acheteurs/24350013900189) et [titulaire](https://decp.info/titulaires/51903758414786) ([#28](https://github.com/ColinMaudry/decp.info/issues/28) et [#35](https://github.com/ColinMaudry/decp.info/issues/35)) - Ajout des vues [acheteur](https://decp.info/acheteurs/24350013900189) et [titulaire](https://decp.info/titulaires/51903758414786) ([#28](https://github.com/ColinMaudry/decp.info/issues/28) et [#35](https://github.com/ColinMaudry/decp.info/issues/35)) 🔎
- Ajout des balises HTML meta Open Graph et Twitter ([#39](https://github.com/ColinMaudry/decp.info/issues/39)) pour de beaux aperçus de liens - Ajout des balises HTML meta Open Graph et Twitter ([#39](https://github.com/ColinMaudry/decp.info/issues/39)) pour de beaux aperçus de liens 🖼️
- Variables globales uniquement en lecture - Formulaire de contact ([#48](https://github.com/ColinMaudry/decp.info/issues/48)) 📨
- Nom de colonnes plus_agréables ([#33](https://github.com/ColinMaudry/decp.info/issues/33)) 💅
- Définition des colonnes quand vous passez votre souris sur les en-têtes ([#33](https://github.com/ColinMaudry/decp.info/issues/33)) 📖
- Variables globales uniquement en lecture (😁)
##### 2.0.1 (23 septembre 2025) ##### 2.0.1 (23 septembre 2025)
+1 -10
View File
@@ -77,7 +77,7 @@ app.layout = html.Div(
page["name"], href=page["relative_path"], className="nav" page["name"], href=page["relative_path"], className="nav"
) )
for page in page_registry.values() for page in page_registry.values()
if page["name"] not in ["Acheteur", "Fournisseur"] if page["name"] not in ["Acheteur", "Titulaire"]
] ]
), ),
], ],
@@ -86,15 +86,6 @@ app.layout = html.Div(
page_container, page_container,
] ]
) )
# @callback(
# Output(component_id="table", component_property="data", allow_duplicate=True),
# Input(component_id="search", component_property="value"),
# prevent_initial_call=True,
# )
# def global_search(text):
# new_df = df
# new_df = new_df.filter(pl.col("objet").str.contains("(?i)" + text))
# return new_df.to_dicts()
if __name__ == "__main__": if __name__ == "__main__":
app.run(debug=True) app.run(debug=True)
+1 -9
View File
@@ -42,7 +42,7 @@ les fonctionnalités actuelles de decp.info. Il est ainsi possible de rajouter
dcc.Markdown(""" dcc.Markdown("""
- via l'achat d'une prestation de service (devis, prestation, facture), vous pouvez financer le développement de [fonctionnalités prévues](https://github.com/ColinMaudry/decp.info/issues), ou d'autres ! - via l'achat d'une prestation de service (devis, prestation, facture), vous pouvez financer le développement de [fonctionnalités prévues](https://github.com/ColinMaudry/decp.info/issues), ou d'autres !
- ma société accepte aussi les dons (pas de réduction d'impôt possible) - ma société accepte aussi les dons (pas de réduction d'impôt possible)
- envoyez un mail et on discute ! - [écrivez-moi](/contact) et on discute !
#### Pour explorer le projet #### Pour explorer le projet
@@ -53,14 +53,6 @@ les fonctionnalités actuelles de decp.info. Il est ainsi possible de rajouter
- 🚰 code source - 🚰 code source
- [de decp.info](https://github.com/ColinMaudry/decp.info) - [de decp.info](https://github.com/ColinMaudry/decp.info)
- [du traitement des données](https://github.com/ColinMaudry/decp-processing) - [du traitement des données](https://github.com/ColinMaudry/decp-processing)
"""),
html.H4("Contact", id="contact"),
dcc.Markdown("""
- Email : [colin+decp@maudry.com](mailto:colin+decp@maudry.com)
- Bluesky : [@col1m.bsky.social](https://bsky.app/profile/col1m.bsky.social)
- Mastodon : [col1m@mamot.fr](https://mamot.fr/@col1m)
- LinkedIn : [colinmaudry](https://www.linkedin.com/in/colinmaudry/)
- venez discuter de la transparence de la commande publique [sur le forum teamopendata.org](https://teamopendata.org/c/commande-publique/101)
"""), """),
html.H4("Sources de données", id="sources"), html.H4("Sources de données", id="sources"),
get_sources_tables(os.getenv("SOURCE_STATS_CSV_PATH")), get_sources_tables(os.getenv("SOURCE_STATS_CSV_PATH")),