diff --git a/app/views/contests/_form.html.slim b/app/views/contests/_form.html.slim
index fddfd6b..4717806 100644
--- a/app/views/contests/_form.html.slim
+++ b/app/views/contests/_form.html.slim
@@ -9,14 +9,13 @@
.form-check.form-switch
= form.check_box :team, class: "form-check-input"
= form.label :team
- | Team contest
- .form-text For UI display purposes mainly
+ .form-text = t("activerecord.attributes.contest.team_description")
.row.mb-3
.col
.form-check.form-switch
= form.check_box :allow_registration, class: "form-check-input"
= form.label :allow_registration
- .form-text Generates a shareable registration form for this contest
+ .form-text = t("activerecord.attributes.contest.allow_registration_description")
.row
.col
= form.submit submit_text, class: "btn btn-primary"
\ No newline at end of file
diff --git a/app/views/contests/edit.html.slim b/app/views/contests/edit.html.slim
index b15a2f5..3f099f5 100644
--- a/app/views/contests/edit.html.slim
+++ b/app/views/contests/edit.html.slim
@@ -1 +1 @@
-= render "form", contest: @contest, submit_text: "Save"
\ No newline at end of file
+= render "form", contest: @contest, submit_text: t("helpers.buttons.save")
\ No newline at end of file
diff --git a/app/views/contests/index.html.slim b/app/views/contests/index.html.slim
index 68974f3..b091cee 100644
--- a/app/views/contests/index.html.slim
+++ b/app/views/contests/index.html.slim
@@ -15,7 +15,11 @@
.card-header
= contest.name
.card-body
- .card-text.mb-2 = "#{contest.puzzles.length} puzzles - #{contest.contestants.length} participants"
+ .card-text.mb-2
+ = "#{contest.puzzles.length} #{t('puzzles.singular')}" if contest.puzzles.length <= 1
+ = "#{contest.puzzles.length} #{t('puzzles.plural')}" if contest.puzzles.length > 1
+ = " - #{contest.contestants.length} #{t('contestants.singular')}" if contest.contestants.length <= 1
+ = " - #{contest.contestants.length} #{t('contestants.plural')}" if contest.contestants.length > 1
.row
.col
- contest.puzzles.each do |puzzle|
diff --git a/app/views/contests/new.html.slim b/app/views/contests/new.html.slim
index 43fa4a5..fdbdabc 100644
--- a/app/views/contests/new.html.slim
+++ b/app/views/contests/new.html.slim
@@ -1 +1 @@
-= render "form", contest: @contest, submit_text: "Create"
\ No newline at end of file
+= render "form", contest: @contest, submit_text: t("helpers.buttons.create")
\ No newline at end of file
diff --git a/app/views/contests/show.html.slim b/app/views/contests/show.html.slim
index 6f9f87f..7f3aa5f 100644
--- a/app/views/contests/show.html.slim
+++ b/app/views/contests/show.html.slim
@@ -13,15 +13,14 @@
a.btn.btn-primary href=edit_contest_path(@contest)
| Edit contest
p
- |> Public scoreboard:
+ = t("contests.show.public_scoreboard")
= link_to root_url + "public/#{@contest.slug}", root_url + "public/#{@contest.slug}"
.row.mb-4
.col-6
.row
.col
- h4
- | Puzzles
+ h4 = t("puzzles.plural").capitalize
.row.row-cols-1.row-cols-md-3.g-4.mb-4
- @puzzles.each do |puzzle|
.col
@@ -38,11 +37,11 @@
.row
.col
a.btn.btn-primary href=new_contest_puzzle_path(@contest)
- | Add puzzle
+ = t("contests.show.add_puzzle")
.col-6
.row
.col
- h4 = t("contests.show.contestants")
+ h4 = t("contestants.plural").capitalize
table.table.table-striped.table-hover
thead
tr
diff --git a/app/views/users/_form.html.slim b/app/views/users/_form.html.slim
index f4487fa..9fdb945 100644
--- a/app/views/users/_form.html.slim
+++ b/app/views/users/_form.html.slim
@@ -1,6 +1,6 @@
= form_with model: user, method: method do |form|
- if method == :patch
- h4 General settings
+ h4 = t("users.edit.general_section")
.row.mb-3
.col
@@ -21,7 +21,6 @@
.form-floating
= form.select :lang, Languages::AVAILABLE_LANGUAGES.map { |lang| [ lang[:name], lang[:id] ] }, {}, class: "form-select"
= form.label :lang
- | Language
- if method == :post
.row.mb-3
@@ -29,10 +28,10 @@
.form-floating
= form.password_field :password, autocomplete: "off", class: "form-control"
= form.label :password, class: "required"
- = form.submit "Save", class: "btn btn-primary"
+ = form.submit t("helpers.buttons.save"), class: "btn btn-primary"
- if method == :patch
- h4.mt-5 Change password
+ h4.mt-5 = t("users.edit.password_section")
= form_with model: user, method: method do |form|
.row.mb-3
@@ -40,5 +39,4 @@
.form-floating
= form.password_field :password, autocomplete: "off", class: "form-control"
= form.label :password, class: "required"
- | New password
- = form.submit "Save new password", class: "btn btn-primary"
\ No newline at end of file
+ = form.submit t("helpers.buttons.save"), class: "btn btn-primary"
\ No newline at end of file
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 8c34e49..2dffbb3 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -28,6 +28,19 @@
# enabled: "ON"
en:
+ activerecord:
+ attributes:
+ contest:
+ name: "Name"
+ team: "Team contest"
+ team_description: "For UI display purposes mainly"
+ allow_registration: "Allow registration"
+ allow_registration_description: "Generates a shareable registration form for this contest"
+ user:
+ username: "Username"
+ email_address: "Email address"
+ lang: "Language"
+ password: "New password"
completions:
edit:
title: "Edit completion"
@@ -41,18 +54,30 @@ en:
manage_contests: "Manage my contests"
new_contest: "Create a new contest"
new:
- title: "New jigsaw puzzle competition"
+ title: "New jigsaw puzzle contest"
scoreboard:
title: "%{name}"
show:
title: "%{name}"
add_participant: "Add contestant"
- contestants: "Contestants"
+ add_puzzle: "Add puzzle"
+ public_scoreboard: "Public scoreboard: "
contestants:
edit:
- title: "Contestant"
+ title: "Participant"
+ team_title: "Teams"
new:
- title: "New contestant"
+ title: "New participant"
+ team_title: "New team"
+ singular: "participant"
+ plural: "participants"
+ teams:
+ singular: "team"
+ plural: "teams"
+ helpers:
+ buttons:
+ create: "Create"
+ save: "Save"
nav:
users: "Users"
home: "Home"
@@ -63,12 +88,16 @@ en:
title: "Edit contest puzzle"
new:
title: "New contest puzzle"
+ singular: "puzzle"
+ plural: "puzzles"
sessions:
new:
title: "Login to the Public Scoreboard app"
users:
edit:
title: "My settings"
+ general_section: "General settings"
+ password_section: "Change password"
index:
title: "All users"
new:
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 5c92315..a7f7093 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -1,4 +1,17 @@
fr:
+ activerecord:
+ attributes:
+ contest:
+ name: "Nom"
+ team: "Concours par équipes"
+ team_description: "Principalement pour des raisons d'affichage"
+ allow_registration: "Autoriser l'inscription via l'interface"
+ allow_registration_description: "Génère un formulaire d'inscription pour ce concours"
+ user:
+ username: "Nom d'utilisateur.ice"
+ email_address: "Adresse email"
+ lang: "Langue de l'interface"
+ password: "Nouveau mot de passe"
completions:
edit:
title: "Modifier la complétion"
@@ -18,12 +31,24 @@ fr:
show:
title: "%{name}"
add_participant: "Ajouter un.e participant.e"
- contestants: "Participant.e.s"
+ add_puzzle: "Ajouter un puzzle"
+ public_scoreboard: "Classement public : "
contestants:
edit:
- title: "Participant"
+ title: "Participant.e"
+ team_title: "Équipe"
new:
title: "Nouveau.elle participant.e"
+ team_title: "Nouvelle équipe"
+ singular: "participant.e"
+ plural: "participant.e.s"
+ teams:
+ singular: "équipe"
+ plural: "équipes"
+ helpers:
+ buttons:
+ create: "Créer"
+ save: "Modifier"
nav:
users: "Utilisateur.ices"
home: "Accueil"
@@ -34,12 +59,16 @@ fr:
title: "Modifier le puzzle"
new:
title: "Nouveau puzzle"
+ singular: "puzzle"
+ plural: "puzzles"
sessions:
new:
title: "Se connecter à l'app Public Scoreboard"
users:
edit:
title: "Mes paramètres"
+ general_section: "Paramètres globaux"
+ password_section: "Modifier mon mot de passe"
index:
title: "Tous.tes les utilisateur.ices"
new: