diff --git a/awx/ui/client/lib/services/base-string.service.js b/awx/ui/client/lib/services/base-string.service.js index 2e526911b2..437cd10b2a 100644 --- a/awx/ui/client/lib/services/base-string.service.js +++ b/awx/ui/client/lib/services/base-string.service.js @@ -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}`); } }); diff --git a/awx/ui/client/src/inventories-hosts/inventories/related/groups/list/groups-list.controller.js b/awx/ui/client/src/inventories-hosts/inventories/related/groups/list/groups-list.controller.js index 14fd0caf8f..99b1090e2d 100644 --- a/awx/ui/client/src/inventories-hosts/inventories/related/groups/list/groups-list.controller.js +++ b/awx/ui/client/src/inventories-hosts/inventories/related/groups/list/groups-list.controller.js @@ -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}); } } diff --git a/awx/ui/client/src/inventories-hosts/inventory-hosts.strings.js b/awx/ui/client/src/inventories-hosts/inventory-hosts.strings.js index 0c3600393e..56cd3d9ba4 100644 --- a/awx/ui/client/src/inventories-hosts/inventory-hosts.strings.js +++ b/awx/ui/client/src/inventories-hosts/inventory-hosts.strings.js @@ -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'),