From 651d2e4048c2e75f544f31d909a10c3cafd5625e Mon Sep 17 00:00:00 2001 From: Boris Waaub Date: Wed, 28 Jan 2026 16:57:04 +0100 Subject: [PATCH] feat(contact): update contact form and link; improve layout and styles --- content/_index.md | 2 +- content/contact.md | 24 ++++++++++ content/resources/manuals.md | 4 +- hugo.toml | 2 +- static/css/style.css | 44 +++++++++++++++---- .../layouts/shortcodes/contact-form.html | 18 ++++++++ .../static/js/language-preference.js | 7 --- 7 files changed, 81 insertions(+), 20 deletions(-) create mode 100644 themes/chill-theme/layouts/shortcodes/contact-form.html diff --git a/content/_index.md b/content/_index.md index b681bb4..e9e48cd 100644 --- a/content/_index.md +++ b/content/_index.md @@ -32,7 +32,7 @@ testimonials: primary_button_text="Essayer la démo" primary_button_url="http://demo.chill.social/" secondary_button_text="Réserver une démo" - secondary_button_url="#" + secondary_button_url="/contact" custom_class="hero" hero_image="/images/hero-dashboard.svg" >}} diff --git a/content/contact.md b/content/contact.md index e69de29..bfdd658 100644 --- a/content/contact.md +++ b/content/contact.md @@ -0,0 +1,24 @@ +--- +title: Contact +layout: "simple" +contactForm: + fields: + - name: "name" + label: "Nom complet" + type: "text" + required: true + - name: "email" + label: "Adresse email" + type: "email" + required: true + - name: "message" + label: "Votre message" + type: "textarea" + required: true + button: + label: "Envoyer le message" + color: "primary" + size: "md" +--- + +{{< contact-form >}} \ No newline at end of file diff --git a/content/resources/manuals.md b/content/resources/manuals.md index 01145ab..3126544 100644 --- a/content/resources/manuals.md +++ b/content/resources/manuals.md @@ -3,7 +3,7 @@ title: Manuels layout: "simple" --- -
Manuels d'utilisation de Chill
+
Manuels d'utilisation de Chill
Il existe un manuel d'utilisation à l'usage des utilisateurs et un autre à l'usage des administrateurs. @@ -17,6 +17,6 @@ https://gitea.champs-libres.be/Chill-project/manuals/releases Le manuel est également accessible via un lien dans le pied de page de l'application. -
Formation des utilisateurs
+
Formation des utilisateurs
Renseignez-vous auprès de votre [prestataire](/get-chill/providers) Chill pour organiser une journée de formation à l'utilisation de Chill. diff --git a/hugo.toml b/hugo.toml index 954a6cc..d7a090c 100644 --- a/hugo.toml +++ b/hugo.toml @@ -100,7 +100,7 @@ pagination = { pagerSize = 6, path = "page" } # Primary button [params.cta.primary_button] text = "Réserver une démo" - url = "/demo" + url = "/contact" # Secondary button [params.cta.secondary_button] diff --git a/static/css/style.css b/static/css/style.css index 23d57f1..69e6eff 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -2212,6 +2212,10 @@ body { order: 2; } +.float-right { + float: right; +} + .\!my-0 { margin-top: 0px !important; margin-bottom: 0px !important; @@ -2232,11 +2236,6 @@ body { margin-bottom: 2rem; } -.my-2 { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} - .\!mb-24 { margin-bottom: 6rem !important; } @@ -2321,6 +2320,10 @@ body { margin-top: 1rem; } +.mt-5 { + margin-top: 1.25rem; +} + .mt-6 { margin-top: 1.5rem; } @@ -2333,10 +2336,6 @@ body { margin-top: auto; } -.mt-5 { - margin-top: 1.25rem; -} - .line-clamp-2 { overflow: hidden; display: -webkit-box; @@ -2508,6 +2507,10 @@ body { max-width: 200px; } +.max-w-lg { + max-width: 32rem; +} + .max-w-none { max-width: none; } @@ -2594,6 +2597,10 @@ body { align-items: baseline; } +.justify-end { + justify-content: flex-end; +} + .justify-center { justify-content: center; } @@ -2731,6 +2738,10 @@ body { border-radius: 0px !important; } +.rounded { + border-radius: 0.25rem; +} + .rounded-2xl { border-radius: 1rem; } @@ -2944,6 +2955,10 @@ body { padding: 2rem; } +.p-10 { + padding: 2.5rem; +} + .px-3 { padding-left: 0.75rem; padding-right: 0.75rem; @@ -4429,6 +4444,11 @@ body { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } +.focus\:border-blue-300:focus { + --tw-border-opacity: 1; + border-color: rgb(147 197 253 / var(--tw-border-opacity, 1)); +} + .focus\:border-primary-500:focus { --tw-border-opacity: 1; border-color: rgb(237 69 13 / var(--tw-border-opacity, 1)); @@ -4439,6 +4459,12 @@ body { outline-offset: 2px; } +.focus\:ring:focus { + --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); + --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color); + box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); +} + .focus\:ring-2:focus { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); diff --git a/themes/chill-theme/layouts/shortcodes/contact-form.html b/themes/chill-theme/layouts/shortcodes/contact-form.html new file mode 100644 index 0000000..33490b1 --- /dev/null +++ b/themes/chill-theme/layouts/shortcodes/contact-form.html @@ -0,0 +1,18 @@ +{{ $form := .Page.Params.contactForm }} +
+ {{ range $form.fields }} +
+ + {{ if eq .type "textarea" }} + + {{ else }} + + {{ end }} +
+ {{ end }} +
+ +
+
diff --git a/themes/chill-theme/static/js/language-preference.js b/themes/chill-theme/static/js/language-preference.js index 7647d16..351faaf 100644 --- a/themes/chill-theme/static/js/language-preference.js +++ b/themes/chill-theme/static/js/language-preference.js @@ -36,15 +36,8 @@ const preferredLang = getStoredLanguage(); const currentLang = getCurrentLanguage(); - console.log('Language preference check:', { - preferredLang: preferredLang || 'none', - currentLang: currentLang, - visitorApiConfigured: !!VISITOR_API_PID - }); - // If user has a stored preference and it matches current language, we're good if (preferredLang && preferredLang === currentLang) { - console.log('Language preference: Already on preferred language:', currentLang); return; }