Simplify Javascript to pluralize translations

We can pass the whole translation hash instead of passing descriptions
individually, and we can replace `%{count}` so we don't need any <span>
tags.
This commit is contained in:
Javi Martín
2019-10-31 14:49:46 +01:00
parent 6bcf8ea806
commit b15ae77ddc
4 changed files with 12 additions and 15 deletions

View File

@@ -77,19 +77,18 @@
update_description: function() {
var count, description;
count = App.Globalize.enabled_locales().length;
description = $(App.Globalize.language_description(count)).filter(".description").text();
description = App.Globalize.language_description(count);
$(".js-languages-description .description").text(description);
$(".js-languages-description .count").text(count);
$(".js-languages-description").text(description.replace("%{count}", count));
},
language_description: function(count) {
switch (count) {
case 0:
return $(".globalize-languages").data("zero-languages-description");
return $(".globalize-languages").data("languages-description").zero;
case 1:
return $(".globalize-languages").data("one-languages-description");
return $(".globalize-languages").data("languages-description").one;
default:
return $(".globalize-languages").data("other-languages-description");
return $(".globalize-languages").data("languages-description").other;
}
},
initialize: function() {

View File

@@ -1,7 +1,5 @@
<div class="row globalize-languages column padding-top <%= highlight_translation_html_class %>"
data-zero-languages-description="<%= t("shared.translations.languages_in_use", count: 0) %>"
data-one-languages-description="<%= t("shared.translations.languages_in_use", count: 1) %>"
data-other-languages-description="<%= t("shared.translations.languages_in_use", count: 2) %>">
data-languages-description="<%= t("shared.translations.languages_in_use").to_json %>">
<div class="small-6 large-3 column">
<span class="small">
<strong class="js-languages-description"><%= selected_languages_description(resource) %></strong>

View File

@@ -788,9 +788,9 @@ en:
remove_language: Remove language
add_language: Add language
languages_in_use:
zero: "<span class='count'>0</span> <span class='description'>languages in use</span>"
one: "<span class='count'>1</span> <span class='description'>language in use</span>"
other: "<span class='count'>%{count}</span> <span class='description'>languages in use</span>"
zero: "0 languages in use"
one: "1 language in use"
other: "%{count} languages in use"
social:
facebook: "%{org} Facebook"
twitter: "%{org} Twitter"

View File

@@ -786,9 +786,9 @@ es:
remove_language: Eliminar idioma
add_language: Añadir idioma
languages_in_use:
zero: "<span class='count'>0</span> <span class='description'>idiomas en uso</span>"
one: "<span class='count'>1</span> <span class='description'> idioma en uso</span>"
other: "<span class='count'>%{count}</span> <span class='description'>idiomas en uso</span>"
zero: "0 idiomas en uso"
one: "1 idioma en uso"
other: "%{count} idiomas en uso"
social:
facebook: "Facebook de %{org}"
twitter: "Twitter de %{org}"