Leveraged new pluralization pattern on group delete modal contents.

This commit is contained in:
mabashian 2017-08-10 13:09:44 -04:00
parent b990d84e3b
commit 3d370ca9de
3 changed files with 19 additions and 41 deletions

View File

@ -19,7 +19,7 @@ function BaseStringService (namespace) {
* purpose -- it's to mark strings for translation so they appear in the `.pot` file after
* the grunt-angular-gettext task is run AND it's used to fetch the translated string at
* runtime.
*
*
* NOTE: View ui/src/i18n.js for where these i18n methods are defined. i18n is a wrapper around
* the library angular-gettext.
*
@ -90,7 +90,7 @@ function BaseStringService (namespace) {
}
if (!value) {
throw new Error(ERROR_NO_STRING);
throw new Error(ERROR_NO_STRING + `: ${name}`);
}
});

View File

@ -103,44 +103,22 @@
$scope.deleteOption = "delete";
}
else {
$scope.strings.deleteModal.group = $scope.toDelete.total_groups === 1 ? InventoryHostsStrings.get('filter.GROUP') : InventoryHostsStrings.get('filter.GROUPS');
$scope.strings.deleteModal.host = $scope.toDelete.total_hosts === 1 ? InventoryHostsStrings.get('filter.HOST') : InventoryHostsStrings.get('filter.HOSTS');
$scope.strings.deleteModal.group = InventoryHostsStrings.get('deletegroup.GROUP', $scope.toDelete.total_groups);
$scope.strings.deleteModal.host = InventoryHostsStrings.get('deletegroup.HOST', $scope.toDelete.total_hosts);
if($scope.toDelete.total_groups > 1 && $scope.toDelete.total_hosts > 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUPS_HOSTS');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUPS_HOSTS');
}
else if($scope.toDelete.total_groups > 1 && $scope.toDelete.total_hosts === 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUPS_HOST');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUPS_HOST');
}
else if($scope.toDelete.total_groups === 1 && $scope.toDelete.total_hosts > 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUP_HOSTS');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUP_HOSTS');
}
else if($scope.toDelete.total_groups === 1 && $scope.toDelete.total_hosts === 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUP_HOST');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUP_HOST');
}
else if($scope.toDelete.total_groups === 0) {
if($scope.toDelete.total_hosts > 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_HOSTS');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_HOSTS');
if($scope.toDelete.total_groups === 0 || $scope.toDelete.total_hosts === 0) {
if($scope.toDelete.total_groups === 0) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('deletegroup.DELETE_HOST', $scope.toDelete.total_hosts);
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('deletegroup.PROMOTE_HOST', $scope.toDelete.total_hosts);
}
else {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_HOST');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_HOST');
else if($scope.toDelete.total_hosts === 0) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('deletegroup.DELETE_GROUP', $scope.toDelete.total_groups);
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('deletegroup.PROMOTE_GROUP', $scope.toDelete.total_groups);
}
}
else if($scope.toDelete.total_hosts === 0) {
if($scope.toDelete.total_groups > 1) {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUPS');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUPS');
}
else {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('filter.DELETE_GROUP');
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('filter.PROMOTE_GROUP');
}
else {
$scope.strings.deleteModal.deleteGroupsHosts = InventoryHostsStrings.get('deletegroup.DELETE_GROUPS_AND_HOSTS', {groups: $scope.toDelete.total_groups, hosts: $scope.toDelete.total_hosts});
$scope.strings.deleteModal.promoteGroupsHosts = InventoryHostsStrings.get('deletegroup.PROMOTE_GROUPS_AND_HOSTS', {groups: $scope.toDelete.total_groups, hosts: $scope.toDelete.total_hosts});
}
}

View File

@ -4,16 +4,16 @@ function InventoryHostsStrings (BaseString) {
let t = this.t;
let ns = this['inventory-hosts'];
ns.filter = {
ns.deletegroup = {
GROUP: count => t.p(count, 'group', 'groups'),
HOST: count => t.p(count, 'host', 'hosts'),
PROMOTE_GROUPS_AND_HOSTS: data => t.s('Promote {{ group }} and {{ host }}', {
group: this.get('GROUP', data.groups),
host: this.get('HOST', data.hosts)
group: this.get('deletegroup.GROUP', data.groups),
host: this.get('deletegroup.HOST', data.hosts)
}),
DELETE_GROUPS_AND_HOSTS: data => t.s('Delete {{ group }} and {{ host }}', {
group: this.get('GROUP', data.groups),
host: this.get('HOST', data.hosts)
group: this.get('deletegroup.GROUP', data.groups),
host: this.get('deletegroup.HOST', data.hosts)
}),
PROMOTE_GROUP: count => t.p(count, 'Promote group', 'Promote groups'),
DELETE_GROUP: count => t.p(count, 'Delete group', 'Delete groups'),