1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-19 05:09:42 +02:00

i18n search strings

This commit is contained in:
McMatts 2022-03-08 11:35:59 -05:00
parent 6d735e8579
commit e0805d7131
4 changed files with 32 additions and 21 deletions

View file

@ -15,13 +15,13 @@ import Component from '@ember/component';
export default Component.extend({ export default Component.extend({
localStorage: service('localStorage'), localStorage: service('localStorage'),
i18n: service(),
resultPhrase: '', resultPhrase: '',
searchQuery: computed('keywords', function() { searchQuery: computed('keywords', function() {
return encodeURIComponent(this.get('keywords')); return encodeURIComponent(this.get('keywords'));
}), }),
// eslint-disable-next-line ember/avoid-leaking-state-in-ember-objects
sortBy: { sortBy: {
name: true, name: true,
created: false, created: false,
updated: false, updated: false,
asc: true, asc: true,
@ -33,15 +33,15 @@ export default Component.extend({
let docs = this.get('results'); let docs = this.get('results');
let duped = []; let duped = [];
let phrase = 'Nothing found'; let phrase = this.i18n.localize('nothing_found');
if (docs.length > 0) { if (docs.length > 0) {
duped = _.uniqBy(docs, function(item) { duped = _.uniqBy(docs, function(item) {
return item.get('documentId'); return item.get('documentId');
}); });
let references = docs.length === 1 ? "reference" : "references"; let references = docs.length === 1 ? this.i18n.localize('reference') : this.i18n.localize('references');
let docLabel = duped.length === 1 ? "document" : "documents"; let docLabel = duped.length === 1 ? this.i18n.localize('document') : this.i18n.localize('documents');
let i = docs.length; let i = docs.length;
let j = duped.length; let j = duped.length;
phrase = `${i} ${references} in ${j} ${docLabel}`; phrase = `${i} ${references} in ${j} ${docLabel}`;
@ -68,19 +68,19 @@ export default Component.extend({
if (_.isNull(docs)) return; if (_.isNull(docs)) return;
if (sortBy.name) { if (sortBy.name) {
docs = docs.sortBy('document'); docs = docs.sortBy('document');
ls.storeSessionItem('search.sortBy', 'name'); ls.storeSessionItem('search.sortBy', 'name');
} }
if (sortBy.created) { if (sortBy.created) {
docs = docs.sortBy('created'); docs = docs.sortBy('created');
ls.storeSessionItem('search.sortBy', 'created'); ls.storeSessionItem('search.sortBy', 'created');
} }
if (sortBy.updated) { if (sortBy.updated) {
docs = docs.sortBy('revised'); docs = docs.sortBy('revised');
ls.storeSessionItem('search.sortBy', 'updated'); ls.storeSessionItem('search.sortBy', 'updated');
} }
if (sortBy.desc) { if (sortBy.desc) {
docs = docs.reverseObjects(); docs = docs.reverseObjects();
ls.storeSessionItem('search.sortOrder', 'desc'); ls.storeSessionItem('search.sortOrder', 'desc');
} else { } else {

View file

@ -1,9 +1,8 @@
<div class="view-search"> <div class="view-search">
{{#if documents}} {{#if documents}}
<div class="text-right"> <div class="text-right">
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}} {{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
{{#ui/ui-toolbar-icon icon=constants.Icon.Sort color=constants.Color.Gray tooltip="Sort"}} {{#ui/ui-toolbar-icon icon=constants.Icon.Sort color=constants.Color.Gray tooltip=(localize 'sort')}}
{{#attach-popover class="ember-attacher-popper" hideOn="click" showOn="click" isShown=false placement="bottom-end" as |attacher|}} {{#attach-popover class="ember-attacher-popper" hideOn="click" showOn="click" isShown=false placement="bottom-end" as |attacher|}}
<i class="dicon {{constants.Icon.Cross}} closer" {{action attacher.hide}} role="button" tabindex="0" title="Close" aria-label="Close" /> <i class="dicon {{constants.Icon.Cross}} closer" {{action attacher.hide}} role="button" tabindex="0" title="Close" aria-label="Close" />
<div class="container"> <div class="container">
@ -12,13 +11,13 @@
<div class="text-center"> <div class="text-center">
<ul class="ui-option-picker ui-option-picker-horiz"> <ul class="ui-option-picker ui-option-picker-horiz">
<li class="option {{if sortBy.name "selected"}}" {{action "onSetSort" "name"}} role="button" tabindex="0" aria-label="Sort by name"> <li class="option {{if sortBy.name "selected"}}" {{action "onSetSort" "name"}} role="button" tabindex="0" aria-label="Sort by name">
<div class="text">Name</div> <div class="text">{{localize 'sort_by_name'}}</div>
</li> </li>
<li class="option {{if sortBy.created "selected"}}" {{action "onSetSort" "created"}} role="button" tabindex="0" aria-label="Sort by created"> <li class="option {{if sortBy.created "selected"}}" {{action "onSetSort" "created"}} role="button" tabindex="0" aria-label="Sort by created">
<div class="text">Created date</div> <div class="text">{{localize 'sort_by_created'}}</div>
</li> </li>
<li class="option {{if sortBy.updated "selected"}}" {{action "onSetSort" "updated"}} role="button" tabindex="0" aria-label="Sort by revised"> <li class="option {{if sortBy.updated "selected"}}" {{action "onSetSort" "updated"}} role="button" tabindex="0" aria-label="Sort by revised">
<div class="text">Last updated</div> <div class="text">{{localize 'sort_by_revised'}}</div>
</li> </li>
</ul> </ul>
</div> </div>
@ -28,10 +27,10 @@
<div class="text-center"> <div class="text-center">
<ul class="ui-option-picker ui-option-picker-horiz"> <ul class="ui-option-picker ui-option-picker-horiz">
<li class="option {{if sortBy.asc "selected"}}" {{action "onSetSort" "asc"}} role="button" tabindex="0" aria-label="Sort ascending"> <li class="option {{if sortBy.asc "selected"}}" {{action "onSetSort" "asc"}} role="button" tabindex="0" aria-label="Sort ascending">
<div class="text">Ascending</div> <div class="text">{{localize 'sort_ascending'}}</div>
</li> </li>
<li class="option {{if sortBy.desc "selected"}}" {{action "onSetSort" "desc"}} role="button" tabindex="0" aria-label="Sort descending"> <li class="option {{if sortBy.desc "selected"}}" {{action "onSetSort" "desc"}} role="button" tabindex="0" aria-label="Sort descending">
<div class="text">Descending</div> <div class="text">{{localize 'sort_descending'}}</div>
</li> </li>
</ul> </ul>
</div> </div>
@ -66,12 +65,11 @@
<div class="space">{{result.space}}</div> <div class="space">{{result.space}}</div>
<div class="snippet">{{result.excerpt}}</div> <div class="snippet">{{result.excerpt}}</div>
{{#if result.template}} {{#if result.template}}
<div class="template">Template</div> <div class="template">{{localize 'template'}}</div>
{{/if}} {{/if}}
{{folder/document-tags documentTags=result.tags}} {{folder/document-tags documentTags=result.tags}}
{{/link-to}} {{/link-to}}
</li> </li>
{{/each}} {{/each}}
</ul> </ul>
</div> </div>

View file

@ -1,7 +1,7 @@
<div class="view-search"> <div class="view-search">
<form onsubmit={{action "onSearch"}} class="form-inline" role="form"> <form onsubmit={{action "onSearch"}} class="form-inline" role="form">
<div class="form-group"> <div class="form-group">
{{focus-input type="text" value=keywords class="form-control mr-3 search-box" placeholder="keywords, tags"}} {{focus-input type="text" value=keywords class="form-control mr-3 search-box" placeholder=(localize 'search_hint')}}
</div> </div>
<div class="form-group"> <div class="form-group">
{{ui/ui-button color=constants.Color.Green light=true label=(localize 'search') onClick=(action "onSearch")}} {{ui/ui-button color=constants.Color.Green light=true label=(localize 'search') onClick=(action "onSearch")}}
@ -11,6 +11,6 @@
{{search/search-results results=results keywords=keywords}} {{search/search-results results=results keywords=keywords}}
{{else}} {{else}}
<Ui::UiSpacer @size="300" /> <Ui::UiSpacer @size="300" />
<p class="color-red-700">Your search query is too short</p> <p class="color-red-700">{{localize 'search_too_short'}}</p>
{{/if}} {{/if}}
</div> </div>

View file

@ -24,7 +24,7 @@
"join": "Join", "join": "Join",
"leave": "Leave", "leave": "Leave",
"login": "Login", "login": "Login",
"logout": "logout", "logout": "Logout",
"authentication": "Authentication", "authentication": "Authentication",
"move": "Move", "move": "Move",
"moved": "Moved", "moved": "Moved",
@ -45,6 +45,11 @@
"share": "Share", "share": "Share",
"signin": "Sign In", "signin": "Sign In",
"sort": "Sort", "sort": "Sort",
"sort_ascending": "Ascending",
"sort_descending": "Descending",
"sort_by_name": "Name",
"sort_by_created": "Created date",
"sort_by_revised": "Last updated",
"unassigned": "Unassigned", "unassigned": "Unassigned",
"update": "Update", "update": "Update",
"viewed": "Viewed", "viewed": "Viewed",
@ -76,6 +81,7 @@
"filter": "Filter", "filter": "Filter",
"all": "All", "all": "All",
"not_found": "Not found", "not_found": "Not found",
"nothing_found": "Nothing found",
"expand_collapse": "Expand/collapse", "expand_collapse": "Expand/collapse",
"options": "Options", "options": "Options",
"settings": "Settings", "settings": "Settings",
@ -85,6 +91,8 @@
"profile": "Profile", "profile": "Profile",
"go_top": "Go top", "go_top": "Go top",
"help": "Help", "help": "Help",
"reference": "reference",
"references": "references",
"public": "Public", "public": "Public",
"protected": "Protected", "protected": "Protected",
@ -109,6 +117,9 @@
"reports": "Reports", "reports": "Reports",
"bookmarks": "Bookmarks", "bookmarks": "Bookmarks",
"content": "Content", "content": "Content",
"template": "Template",
"document": "document",
"documents": "documents",
"space_new": "New Space", "space_new": "New Space",
"space_name": "Space name", "space_name": "Space name",
@ -145,6 +156,8 @@
"welcome": "Welcome to Documize", "welcome": "Welcome to Documize",
"welcome_explain": "Let's set up your account and get you started", "welcome_explain": "Let's set up your account and get you started",
"profile_explain": "Manage your profile and password", "profile_explain": "Manage your profile and password",
"search_hint": "keywords, tags",
"search_too_short": "Your search query is too short",
"search_doc_name": "Document name", "search_doc_name": "Document name",
"search_doc_content": "Document content", "search_doc_content": "Document content",
"search_tag_name": "Tag name", "search_tag_name": "Tag name",