diff --git a/resources/i18n/en.json5 b/resources/i18n/en.json5
index e076d1a101..5ff51a4619 100644
--- a/resources/i18n/en.json5
+++ b/resources/i18n/en.json5
@@ -1627,6 +1627,13 @@
+ "search.filters.entityType.JournalIssue": "Journal Issue",
+
+ "search.filters.has_content_in_original_bundle.true": "Yes",
+
+ "search.filters.has_content_in_original_bundle.false": "No",
+
+
"search.filters.head": "Filters",
"search.filters.reset": "Reset filters",
@@ -2006,7 +2013,7 @@
"title": "DSpace",
- "undiscoverable.search.results.head": "Admin Search",
+ "discoverableAndUndiscoverableItems.search.results.head": "Admin Search",
"uploader.browse": "browse",
diff --git a/src/app/+admin/admin-search-page/admin-search-page.component.html b/src/app/+admin/admin-search-page/admin-search-page.component.html
index 15fa71e4d5..8049b059c5 100644
--- a/src/app/+admin/admin-search-page/admin-search-page.component.html
+++ b/src/app/+admin/admin-search-page/admin-search-page.component.html
@@ -1 +1 @@
-
+
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index aaad66adf6..0735e44978 100755
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -8,7 +8,7 @@ import { RouterStateSerializer, StoreRouterConnectingModule } from '@ngrx/router
import { MetaReducer, StoreModule, USER_PROVIDED_META_REDUCERS } from '@ngrx/store';
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
import { DYNAMIC_MATCHER_PROVIDERS } from '@ng-dynamic-forms/core';
-import { TranslateModule } from '@ngx-translate/core';
+import { MissingTranslationHandler, TranslateModule } from '@ngx-translate/core';
import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
import { ENV_CONFIG, GLOBAL_CONFIG, GlobalConfig } from '../config';
@@ -39,6 +39,7 @@ import { NotificationComponent } from './shared/notifications/notification/notif
import { NotificationsBoardComponent } from './shared/notifications/notifications-board/notifications-board.component';
import { SharedModule } from './shared/shared.module';
import { BreadcrumbsComponent } from './breadcrumbs/breadcrumbs.component';
+import { MissingTranslationHelper } from './shared/translate/missing-translation.helper';
export function getConfig() {
return ENV_CONFIG;
@@ -61,7 +62,6 @@ const IMPORTS = [
CoreModule.forRoot(),
ScrollToModule.forRoot(),
NgbModule,
- TranslateModule.forRoot(),
EffectsModule.forRoot(appEffects),
StoreModule.forRoot(appReducers),
StoreRouterConnectingModule.forRoot(),
diff --git a/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.html b/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.html
index 9441081661..cf4876e34f 100644
--- a/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.html
+++ b/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.html
@@ -2,7 +2,9 @@
[routerLink]="[searchLink]"
[queryParams]="addQueryParams" queryParamsHandling="merge">
- {{filterValue.value}}
+
+ {{ 'search.filters.' + filterConfig.name + '.' + filterValue.value | translate: {default: filterValue.value} }}
+
{{filterValue.count}}
diff --git a/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.html b/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.html
index 5198433207..a27a5d3d86 100644
--- a/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.html
+++ b/src/app/shared/search/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.html
@@ -2,5 +2,7 @@
[routerLink]="[searchLink]"
[queryParams]="removeQueryParams" queryParamsHandling="merge">
- {{selectedValue.label}}
+
+ {{ 'search.filters.' + filterConfig.name + '.' + selectedValue.value | translate: {default: selectedValue.value} }}
+
diff --git a/src/app/shared/search/search-labels/search-label/search-label.component.html b/src/app/shared/search/search-labels/search-label/search-label.component.html
index 391efcb763..dcb0a1fd88 100644
--- a/src/app/shared/search/search-labels/search-label/search-label.component.html
+++ b/src/app/shared/search/search-labels/search-label/search-label.component.html
@@ -1,6 +1,6 @@
- {{('search.filters.applied.' + key) | translate}}: {{normalizeFilterValue(value)}}
+ {{('search.filters.applied.' + key) | translate}}: {{'search.filters.' + key + '.' + value | translate: {default: normalizeFilterValue(value)} }}
×
-
\ No newline at end of file
+
diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts
index c64fb51edc..f799984545 100644
--- a/src/app/shared/shared.module.ts
+++ b/src/app/shared/shared.module.ts
@@ -6,7 +6,7 @@ import { NouisliderModule } from 'ng2-nouislider';
import { NgbDatepickerModule, NgbModule, NgbTimepickerModule, NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstrap';
-import { TranslateModule } from '@ngx-translate/core';
+import { MissingTranslationHandler, TranslateModule } from '@ngx-translate/core';
import { NgxPaginationModule } from 'ngx-pagination';
import { PublicationListElementComponent } from './object-list/item-list-element/item-types/publication/publication-list-element.component';
@@ -180,6 +180,7 @@ import { SortablejsModule } from 'ngx-sortablejs';
import { ItemAdminSearchResultListElementComponent } from './object-list/admin-search-result-list-element/item-search-result/item-admin-search-result-list-element.component';
import { CommunityAdminSearchResultListElementComponent } from './object-list/admin-search-result-list-element/community-search-result/community-admin-search-result-list-element.component';
import { CollectionAdminSearchResultListElementComponent } from './object-list/admin-search-result-list-element/collection-search-result/collection-admin-search-result-list-element.component';
+import { MissingTranslationHelper } from './translate/missing-translation.helper';
const MODULES = [
// Do NOT include UniversalModule, HttpModule, or JsonpModule here
@@ -197,7 +198,6 @@ const MODULES = [
NgxPaginationModule,
ReactiveFormsModule,
RouterModule,
- TranslateModule,
NouisliderModule,
MomentModule,
TextMaskModule,
@@ -206,7 +206,11 @@ const MODULES = [
];
const ROOT_MODULES = [
- TooltipModule.forRoot()
+ TooltipModule.forRoot(),
+ TranslateModule.forRoot({
+ missingTranslationHandler: { provide: MissingTranslationHandler, useClass: MissingTranslationHelper },
+ useDefaultLang: true
+ })
];
const PIPES = [
diff --git a/src/app/shared/translate/missing-translation.helper.ts b/src/app/shared/translate/missing-translation.helper.ts
new file mode 100644
index 0000000000..3995d4e5aa
--- /dev/null
+++ b/src/app/shared/translate/missing-translation.helper.ts
@@ -0,0 +1,11 @@
+import {MissingTranslationHandler, MissingTranslationHandlerParams} from '@ngx-translate/core';
+
+export class MissingTranslationHelper implements MissingTranslationHandler {
+ handle(params: MissingTranslationHandlerParams) {
+ console.log('bla', params);
+ if (params.interpolateParams) {
+ return (params.interpolateParams as any).default || params.key;
+ }
+ return params.key;
+ }
+}