From 7a5aa469cd7c55c149731bd3b567b62bf1b01654 Mon Sep 17 00:00:00 2001 From: "John R. Supplee" Date: Sat, 16 Jan 2021 19:50:11 +0200 Subject: [PATCH] Modify search results translations * use named place holders in translation tag with multiple values --- client/components/main/globalSearch.jade | 9 +-------- client/components/main/globalSearch.js | 18 +++++++++++++++++- i18n/en.i18n.json | 2 +- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/client/components/main/globalSearch.jade b/client/components/main/globalSearch.jade index cdfcf5422..64dbe9211 100644 --- a/client/components/main/globalSearch.jade +++ b/client/components/main/globalSearch.jade @@ -20,14 +20,7 @@ template(name="globalSearch") else if hasResults.get .global-search-dueat-list-wrapper h1 - if $eq resultsCount.get 0 - | {{_ 'no-cards-found' }} - else if $eq resultsCount.get 1 - | {{_ 'one-card-found' }} - else if $eq resultsCount.get totalHits.get - | {{_ 'n-cards-found' resultsCount.get }} - else - | {{_ 'n-n-of-n-cards-found' 1 resultsCount.get totalHits.get }} + = resultsHeading if queryErrors.get div each msg in errorMessages diff --git a/client/components/main/globalSearch.js b/client/components/main/globalSearch.js index f0a03cbdb..2a1c9da32 100644 --- a/client/components/main/globalSearch.js +++ b/client/components/main/globalSearch.js @@ -52,7 +52,7 @@ BlazeComponent.extendComponent({ const results = Cards.globalSearch(this.queryParams); const sessionData = SessionData.findOne({ userId: Meteor.userId() }); // eslint-disable-next-line no-console - console.log('sessionData:', sessionData); + // console.log('sessionData:', sessionData); // console.log('errors:', results.errors); this.totalHits.set(sessionData.totalHits); this.resultsCount.set(results.cards.count()); @@ -83,6 +83,22 @@ BlazeComponent.extendComponent({ return messages; }, + resultsHeading() { + if (this.resultsCount.get() === 0) { + return TAPi18n.__('no-cards-found'); + } else if (this.resultsCount.get() === 1) { + return TAPi18n.__('one-card-found'); + } else if (this.resultsCount.get() === this.totalHits.get()) { + return TAPi18n.__('n-cards-found', this.resultsCount.get()); + } + + return TAPi18n.__('n-n-of-n-cards-found', { + start: 1, + end: this.resultsCount.get(), + total: this.totalHits.get(), + }); + }, + events() { return [ { diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json index c4a22427e..6fac20a43 100644 --- a/i18n/en.i18n.json +++ b/i18n/en.i18n.json @@ -873,7 +873,7 @@ "no-cards-found": "No Cards Found", "one-card-found": "One Card Found", "n-cards-found": "%s Cards Found", - "n-n-of-n-cards-found": "%s-%s of %s Cards Found", + "n-n-of-n-cards-found": "__start__-__end__ of __total__ Cards Found", "operator-board": "board", "operator-board-abbrev": "b", "operator-swimlane": "swimlane",