i18n(contact): move hardcoded contact block strings to language packs

This commit is contained in:
George Cushen committed 2025-12-31 01:18:09 +00:00
1 parent d95cd5fac8
commit fd22be65dd
8 files changed
+300 -13

No files matched your search

@@ -6,7 +6,7 @@
{{ $page := .wcPage }}
{{ $block := .wcBlock }}
{{ $title := $block.content.title | default "Contact Us" | emojify | $page.RenderString }}
{{ $title := $block.content.title | default (i18n "block_contact_title" | default "Contact Us") | emojify | $page.RenderString }}
{{ $subtitle := $block.content.subtitle | emojify | $page.RenderString }}
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 sm:py-16 lg:py-20">
@@ -36,7 +36,7 @@
{{ partial "functions/get_icon" (dict "name" "hero/map-pin" "attributes" "class=\"w-6 h-6 text-primary-600 dark:text-primary-400\"") }}
</div>
<h3 class="ml-4 text-2xl font-bold text-gray-900 dark:text-white">
{{ $block.content.visit_title | default "Visit Us" }}
{{ $block.content.visit_title | default (i18n "block_contact_visit_title" | default "Visit Us") }}
</h3>
</div>
@@ -51,7 +51,7 @@
{{ with $block.content.office_hours }}
<div class="pt-4 border-t border-gray-200 dark:border-gray-700">
<h4 class="font-semibold text-gray-900 dark:text-white mb-2">Office Hours</h4>
<h4 class="font-semibold text-gray-900 dark:text-white mb-2">{{ i18n "block_contact_office_hours" | default "Office Hours" }}</h4>
<div class="text-gray-600 dark:text-gray-300 space-y-1">
{{ range . }}
<p>{{ . }}</p>
@@ -64,7 +64,7 @@
<a href="{{ . }}" target="_blank" rel="noopener"
class="inline-flex items-center mt-4 px-4 py-2 bg-primary-50 dark:bg-primary-900/30 text-primary-700 dark:text-primary-300 rounded-lg hover:bg-primary-100 dark:hover:bg-primary-900/50 transition-colors">
{{ partial "functions/get_icon" (dict "name" "hero/map" "attributes" "class=\"w-5 h-5 mr-2\"") }}
View on Map
{{ i18n "block_contact_view_on_map" | default "View on Map" }}
</a>
{{ end }}
</div>
@@ -77,7 +77,7 @@
{{ partial "functions/get_icon" (dict "name" "hero/chat-bubble-left-right" "attributes" "class=\"w-6 h-6 text-primary-600 dark:text-primary-400\"") }}
</div>
<h3 class="ml-4 text-2xl font-bold text-gray-900 dark:text-white">
{{ $block.content.connect_title | default "Connect" }}
{{ $block.content.connect_title | default (i18n "block_contact_connect_title" | default "Connect") }}
</h3>
</div>
@@ -105,7 +105,7 @@
{{/* Social Media */}}
{{ with $block.content.social }}
<div class="pt-4 border-t border-gray-200 dark:border-gray-700">
<h4 class="font-semibold text-gray-900 dark:text-white mb-3">Follow Us</h4>
<h4 class="font-semibold text-gray-900 dark:text-white mb-3">{{ i18n "block_contact_follow_us" | default "Follow Us" }}</h4>
<div class="flex gap-3">
{{ range . }}
<a href="{{ .url }}" target="_blank" rel="noopener"
@@ -121,7 +121,7 @@
{{/* Prospective Members */}}
{{ with $block.content.prospective }}
<div class="pt-4 border-t border-gray-200 dark:border-gray-700">
<h4 class="font-semibold text-gray-900 dark:text-white mb-2">{{ .title | default "Prospective Members" }}</h4>
<h4 class="font-semibold text-gray-900 dark:text-white mb-2">{{ .title | default (i18n "block_contact_prospective_title" | default "Prospective Members") }}</h4>
<p class="text-gray-600 dark:text-gray-300 mb-4">{{ .text }}</p>
{{ with .button }}
<a href="{{ .url }}"
@@ -149,33 +149,33 @@
{{ if $block.content.show_form }}
<div class="mt-12 max-w-2xl mx-auto">
<div class="bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8">
<h3 class="text-2xl font-bold text-gray-900 dark:text-white mb-6">Send us a Message</h3>
<h3 class="text-2xl font-bold text-gray-900 dark:text-white mb-6">{{ i18n "block_contact_form_title" | default "Send us a Message" }}</h3>
<form action="{{ $block.content.form_action | default "#" }}" method="POST" class="space-y-6">
<div class="grid grid-cols-1 sm:grid-cols-2 gap-6">
<div>
<label for="name" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">Name</label>
<label for="name" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">{{ i18n "block_contact_form_name" | default "Name" }}</label>
<input type="text" id="name" name="name" required
class="w-full px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-transparent dark:bg-gray-700 dark:text-white">
</div>
<div>
<label for="email" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">Email</label>
<label for="email" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">{{ i18n "block_contact_form_email" | default "Email" }}</label>
<input type="email" id="email" name="email" required
class="w-full px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-transparent dark:bg-gray-700 dark:text-white">
</div>
</div>
<div>
<label for="subject" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">Subject</label>
<label for="subject" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">{{ i18n "block_contact_form_subject" | default "Subject" }}</label>
<input type="text" id="subject" name="subject" required
class="w-full px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-transparent dark:bg-gray-700 dark:text-white">
</div>
<div>
<label for="message" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">Message</label>
<label for="message" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">{{ i18n "block_contact_form_message" | default "Message" }}</label>
<textarea id="message" name="message" rows="5" required
class="w-full px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-transparent dark:bg-gray-700 dark:text-white"></textarea>
</div>
<button type="submit"
class="w-full px-6 py-3 bg-primary-600 hover:bg-primary-700 text-white font-medium rounded-lg shadow hover:shadow-lg transition-all">
Send Message
{{ i18n "block_contact_form_submit" | default "Send Message" }}
</button>
</form>
</div>
+41
View File
@@ -187,6 +187,47 @@
- id: book_appointment
translation: Termin vereinbaren
# Contact info block
- id: block_contact_title
translation: Kontaktieren Sie uns
- id: block_contact_visit_title
translation: Besuchen Sie uns
- id: block_contact_office_hours
translation: Öffnungszeiten
- id: block_contact_view_on_map
translation: Auf der Karte ansehen
- id: block_contact_connect_title
translation: Kontakt
- id: block_contact_follow_us
translation: Folgen Sie uns
- id: block_contact_prospective_title
translation: Potenzielle Mitglieder
- id: block_contact_form_title
translation: Senden Sie uns eine Nachricht
- id: block_contact_form_name
translation: Name
- id: block_contact_form_email
translation: E-Mail
- id: block_contact_form_subject
translation: Betreff
- id: block_contact_form_message
translation: Nachricht
- id: block_contact_form_submit
translation: Nachricht senden
# Publication/Event details
- id: abstract
+41
View File
@@ -263,6 +263,47 @@
- id: book_appointment
translation: Book an appointment
# Contact info block
- id: block_contact_title
translation: Contact Us
- id: block_contact_visit_title
translation: Visit Us
- id: block_contact_office_hours
translation: Office Hours
- id: block_contact_view_on_map
translation: View on Map
- id: block_contact_connect_title
translation: Connect
- id: block_contact_follow_us
translation: Follow Us
- id: block_contact_prospective_title
translation: Prospective Members
- id: block_contact_form_title
translation: Send us a Message
- id: block_contact_form_name
translation: Name
- id: block_contact_form_email
translation: Email
- id: block_contact_form_subject
translation: Subject
- id: block_contact_form_message
translation: Message
- id: block_contact_form_submit
translation: Send Message
# Publication/Event details
- id: abstract
+41
View File
@@ -200,6 +200,47 @@
- id: book_appointment
translation: Solicitar una cita
# Contact info block
- id: block_contact_title
translation: Contáctanos
- id: block_contact_visit_title
translation: Visítanos
- id: block_contact_office_hours
translation: Horario de atención
- id: block_contact_view_on_map
translation: Ver en el mapa
- id: block_contact_connect_title
translation: Contacto
- id: block_contact_follow_us
translation: Síguenos
- id: block_contact_prospective_title
translation: Miembros potenciales
- id: block_contact_form_title
translation: Envíanos un mensaje
- id: block_contact_form_name
translation: Nombre
- id: block_contact_form_email
translation: Email
- id: block_contact_form_subject
translation: Asunto
- id: block_contact_form_message
translation: Mensaje
- id: block_contact_form_submit
translation: Enviar mensaje
# Publication/Event details
- id: abstract
+41
View File
@@ -151,6 +151,47 @@
- id: book_appointment
translation: Maak een afspraak
# Contact info block
- id: block_contact_title
translation: Neem contact op
- id: block_contact_visit_title
translation: Bezoek ons
- id: block_contact_office_hours
translation: Kantoortijden
- id: block_contact_view_on_map
translation: Bekijk op kaart
- id: block_contact_connect_title
translation: Contact
- id: block_contact_follow_us
translation: Volg ons
- id: block_contact_prospective_title
translation: Aspirant-leden
- id: block_contact_form_title
translation: Stuur ons een bericht
- id: block_contact_form_name
translation: Naam
- id: block_contact_form_email
translation: E-mailadres
- id: block_contact_form_subject
translation: Onderwerp
- id: block_contact_form_message
translation: Bericht
- id: block_contact_form_submit
translation: Verzend bericht
# Publication/Event details
- id: abstract
+41
View File
@@ -151,6 +151,47 @@
- id: book_appointment
translation: Agendar um horário
# Contact info block
- id: block_contact_title
translation: Fale Conosco
- id: block_contact_visit_title
translation: Visite-nos
- id: block_contact_office_hours
translation: Horário de atendimento
- id: block_contact_view_on_map
translation: Ver no mapa
- id: block_contact_connect_title
translation: Contato
- id: block_contact_follow_us
translation: Siga-nos
- id: block_contact_prospective_title
translation: Membros em potencial
- id: block_contact_form_title
translation: Envie-nos uma mensagem
- id: block_contact_form_name
translation: Nome
- id: block_contact_form_email
translation: Email
- id: block_contact_form_subject
translation: Assunto
- id: block_contact_form_message
translation: Mensagem
- id: block_contact_form_submit
translation: Enviar mensagem
# Publication/Event details
- id: abstract
+41
View File
@@ -151,6 +151,47 @@
- id: book_appointment
translation: 預約
# Contact info block
- id: block_contact_title
translation: 聯絡我們
- id: block_contact_visit_title
translation: 造訪我們
- id: block_contact_office_hours
translation: 辦公時間
- id: block_contact_view_on_map
translation: 在地圖上查看
- id: block_contact_connect_title
translation: 聯繫
- id: block_contact_follow_us
translation: 追蹤我們
- id: block_contact_prospective_title
translation: 潛在成員
- id: block_contact_form_title
translation: 向我們發送訊息
- id: block_contact_form_name
translation: 姓名
- id: block_contact_form_email
translation: 郵箱
- id: block_contact_form_subject
translation: 主旨
- id: block_contact_form_message
translation: 訊息
- id: block_contact_form_submit
translation: 發送訊息
# Publication/Event details
- id: abstract
+41
View File
@@ -173,6 +173,47 @@
- id: book_appointment
translation: 预约
# Contact info block
- id: block_contact_title
translation: 联系我们
- id: block_contact_visit_title
translation: 访问我们
- id: block_contact_office_hours
translation: 办公时间
- id: block_contact_view_on_map
translation: 在地图上查看
- id: block_contact_connect_title
translation: 联系
- id: block_contact_follow_us
translation: 关注我们
- id: block_contact_prospective_title
translation: 潜在成员
- id: block_contact_form_title
translation: 向我们发送信息
- id: block_contact_form_name
translation: 姓名
- id: block_contact_form_email
translation: 邮箱
- id: block_contact_form_subject
translation: 主题
- id: block_contact_form_message
translation: 信息
- id: block_contact_form_submit
translation: 发送信息
# Publication/Event details
- id: abstract