Extract method to pluralize text in JavaScript

This way we can reuse it in other places.
This commit is contained in:
Javi Martín
2019-10-31 15:03:57 +01:00
parent b15ae77ddc
commit e314701d49
3 changed files with 21 additions and 12 deletions

View File

@@ -80,6 +80,7 @@
//= require investment_report_alert
//= require send_newsletter_alert
//= require managers
//= require i18n
//= require globalize
//= require send_admin_notification_alert
//= require modal_download

View File

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

View File

@@ -0,0 +1,18 @@
(function() {
"use strict";
App.I18n = {
pluralize: function(texts, count) {
return this.raw_text(texts, count).replace("%{count}", count);
},
raw_text: function(texts, count) {
switch (count) {
case 0:
return texts.zero;
case 1:
return texts.one;
default:
return texts.other;
}
}
};
}).call(this);