瀏覽代碼

Made sort cards feature translatable.

Lauri Ojansivu 4 年之前
父節點
當前提交
09a13ef75f

+ 6 - 6
client/components/boards/boardHeader.jade

@@ -31,9 +31,9 @@ template(name="boardHeaderBar")
             if $eq watchLevel "muted"
               i.fa.fa-bell-slash
             span {{_ watchLevel}}
-          a.board-header-btn.js-sort-cards(title="Sort Cards")
+          a.board-header-btn.js-sort-cards(title="{{_ 'sort-cards'}}")
             i.fa.fa-sort
-            | Sort By {{sortCardsBy.get}}
+            | {{_ 'sort-cards'}} {{sortCardsBy.get}}
 
         else
           a.board-header-btn.js-log-in(
@@ -255,14 +255,14 @@ template(name="boardCreateRulePopup")
 template(name="cardsSortPopup")
   ul.pop-over-list
     li
-      a.js-sort-due Due Date
+      a.js-sort-due {{_ 'due-date'}}
       hr
     li
-      a.js-sort-title Title(Alphabetically)
+      a.js-sort-title {{_ 'title-alphabetically'}}
       hr
     li
-      a.js-sort-created-desc Created At(Newest First)
+      a.js-sort-created-desc {{_ 'created-at-newest-first'}}
       hr
     li
-      a.js-sort-created-asc Created At(Oldest First)
+      a.js-sort-created-asc {{_ 'created-at-oldest-first'}}
 

+ 21 - 22
client/components/boards/boardHeader.js

@@ -2,7 +2,7 @@
 const DOWNCLS = 'fa-sort-down';
 const UPCLS = 'fa-sort-up';
 */
-const sortCardsBy = new ReactiveVar('')
+const sortCardsBy = new ReactiveVar('');
 Template.boardMenuPopup.events({
   'click .js-rename-board': Popup.open('boardChangeTitle'),
   'click .js-custom-fields'() {
@@ -371,49 +371,48 @@ BlazeComponent.extendComponent({
 }).register('listsortPopup');
 */
 
-
 BlazeComponent.extendComponent({
   events() {
     return [
       {
         'click .js-sort-due'() {
           const sortBy = {
-            'dueAt': 1
-          }
-          Session.set('sortBy',sortBy)
-          sortCardsBy.set('Due Date')
+            dueAt: 1,
+          };
+          Session.set('sortBy', sortBy);
+          sortCardsBy.set(TAPi18n.__('due-date'));
           Popup.close();
         },
         'click .js-sort-title'() {
           const sortBy = {
-            'title': 1
-          }
-          Session.set('sortBy',sortBy)
-          sortCardsBy.set('Title')
+            title: 1,
+          };
+          Session.set('sortBy', sortBy);
+          sortCardsBy.set(TAPi18n.__('title'));
           Popup.close();
         },
         'click .js-sort-created-asc'() {
           const sortBy = {
-            'createdAt': 1
-          }
-          Session.set('sortBy',sortBy)
-          sortCardsBy.set('Date Created (Newest First)')
+            createdAt: 1,
+          };
+          Session.set('sortBy', sortBy);
+          sortCardsBy.set(TAPi18n.__('date-created-newest-first'));
           Popup.close();
         },
         'click .js-sort-created-desc'() {
           const sortBy = {
-            'createdAt': -1
-          }
-          Session.set('sortBy',sortBy)
-          sortCardsBy.set('Date Created (Oldest First)')
+            createdAt: -1,
+          };
+          Session.set('sortBy', sortBy);
+          sortCardsBy.set(TAPi18n.__('date-created-oldest-first'));
           Popup.close();
         },
         'click .js-sort-default'() {
           const sortBy = {
-            'sort': 1
-          }
-          Session.set('sortBy',sortBy)
-          sortCardsBy.set('Default')
+            sort: 1,
+          };
+          Session.set('sortBy', sortBy);
+          sortCardsBy.set(TAPi18n.__('default'));
           Popup.close();
         },
       },

+ 3 - 3
client/components/lists/listBody.js

@@ -168,8 +168,8 @@ BlazeComponent.extendComponent({
 
   cardsWithLimit(swimlaneId) {
     const limit = this.cardlimit.get();
-    const defaultSort = { sort: 1  };
-    const sortBy = Session.get('sortBy') ?  Session.get('sortBy') : defaultSort;
+    const defaultSort = { sort: 1 };
+    const sortBy = Session.get('sortBy') ? Session.get('sortBy') : defaultSort;
     const selector = {
       listId: this.currentData()._id,
       archived: false,
@@ -177,7 +177,7 @@ BlazeComponent.extendComponent({
     if (swimlaneId) selector.swimlaneId = swimlaneId;
     return Cards.find(Filter.mongoSelector(selector), {
       // sort: ['sort'],
-      sort:sortBy,
+      sort: sortBy,
       limit,
     });
   },

+ 7 - 1
i18n/en.i18n.json

@@ -964,5 +964,11 @@
   "number": "Number",
   "label-colors": "Label Colors",
   "label-names": "Label Names",
-  "archived-at": "archived at"
+  "archived-at": "archived at",
+  "sort-cards": "Sort Cards",
+  "cardsSortPopup-title": "Sort Cards",
+  "due-date": "Due Date",
+  "title-alphabetically": "Title (Alphabetically)",
+  "created-at-newest-first": "Created At (Newest First)",
+  "created-at-oldest-first": "Created At (Oldest First)"
 }