[Library | new-theme]: Use OpenaireEntities in search pages

1. newSearchPage.component.html: In graph and feedback, replace uk-text-muted with uk-text-meta and add uk-margin-large-top.
2. datasourcesHelper.class.ts & searchDataProviders.component.ts & searchOrganizations.component.ts & searchProjects.component.ts & searchResearchResults.component.ts: Use OpenaireEntities for result type names.
This commit is contained in:
Konstantina Galouni 2022-05-05 20:35:08 +03:00
parent 0f505c682a
commit 39a54e060a
6 changed files with 44 additions and 28 deletions

View File

@ -4,7 +4,7 @@ import {AdvancedField, Filter} from './searchUtils/searchHelperClasses.class';
import {SearchDataprovidersService} from '../services/searchDataproviders.service';
import {ErrorCodes} from '../utils/properties/errorCodes';
import {ErrorMessagesComponent} from '../utils/errorMessages.component';
import {SearchFields} from '../utils/properties/searchFields';
import {OpenaireEntities, SearchFields} from '../utils/properties/searchFields';
import {SearchCustomFilter, SearchUtilsClass} from './searchUtils/searchUtils.class';
import {EnvProperties} from '../utils/properties/env-properties';
@ -20,12 +20,12 @@ import {properties} from "../../../environments/environment";
<new-search-page
pageTitle="{{(simpleView?'':'Advanced ')}} Find research {{ pageTitle }}"
entityType="dataprovider"
type="content providers"
[type]="openaireEntities.DATASOURCES"
[results]="results"
[searchUtils]="searchUtils"
[sortedByChanged]="searchUtils.sortBy"
[fieldIds]="fieldIds" [fieldIdsMap]="fieldIdsMap" [selectedFields]="selectedFields"
[csvParams]="csvParams" csvPath="datasources"
[csvParams]="csvParams" [csvPath]="openaireEntities.DATASOURCES_FILE"
[simpleSearchLink]="simpleSearchLink" [advancedSearchLink]="advancedSearchLink"
[disableForms]="disableForms"
[disableRefineForms]="disableRefineForms"
@ -72,6 +72,7 @@ export class SearchDataProvidersComponent {
public pagingLimit: number = 0;
public isPiwikEnabled;
properties:EnvProperties;
public openaireEntities = OpenaireEntities;
@Input() type: "all" | "registries" | "journals" | "compatible" | "deposit" = "all";
public refineFields: string[];
pageTitle;

View File

@ -4,7 +4,7 @@ import {AdvancedField, Filter} from './searchUtils/searchHelperClasses.class';
import {SearchOrganizationsService} from '../services/searchOrganizations.service';
import {ErrorCodes} from '../utils/properties/errorCodes';
import {ErrorMessagesComponent} from '../utils/errorMessages.component';
import {SearchFields} from '../utils/properties/searchFields';
import {OpenaireEntities, SearchFields} from '../utils/properties/searchFields';
import {SearchCustomFilter, SearchUtilsClass} from './searchUtils/searchUtils.class';
import {EnvProperties} from '../utils/properties/env-properties';
import {NewSearchPageComponent, SearchForm} from "./searchUtils/newSearchPage.component";
@ -15,14 +15,14 @@ import {properties} from "../../../environments/environment";
selector: 'search-organizations',
template: `
<new-search-page
pageTitle="{{(simpleView?'':'Advanced ')}} Search for {{ 'organizations' | titlecase }}"
pageTitle="{{(simpleView?'':'Advanced ')}} Search for {{ openaireEntities.ORGANIZATIONS | titlecase }}"
entityType="organization"
type="organizations"
[type]="openaireEntities.ORGANIZATIONS"
[results]="results"
[searchUtils]="searchUtils"
[sortedByChanged]="searchUtils.sortBy"
[fieldIds]="fieldIds" [fieldIdsMap]="fieldIdsMap" [selectedFields]="selectedFields"
[csvParams]="csvParams" csvPath="organizations"
[csvParams]="csvParams" [csvPath]="openaireEntities.ORGANIZATIONS_FILE"
[simpleSearchLink]="simpleSearchLink" [advancedSearchLink]="advancedSearchLink"
[disableForms]="disableForms"
[disableRefineForms]="disableRefineForms"
@ -46,6 +46,7 @@ export class SearchOrganizationsComponent {
private errorCodes: ErrorCodes;
private errorMessages: ErrorMessagesComponent;
properties:EnvProperties;
public openaireEntities = OpenaireEntities;
@Input() piwikSiteId = null;
@Input() searchForm: SearchForm = {class: 'search-form', dark: true};
public results =[];

View File

@ -4,7 +4,7 @@ import {AdvancedField, Filter} from './searchUtils/searchHelperClasses.class';
import {SearchProjectsService} from '../services/searchProjects.service';
import {ErrorCodes} from '../utils/properties/errorCodes';
import {ErrorMessagesComponent} from '../utils/errorMessages.component';
import {SearchFields} from '../utils/properties/searchFields';
import {OpenaireEntities, SearchFields} from '../utils/properties/searchFields';
import {SearchCustomFilter, SearchUtilsClass} from './searchUtils/searchUtils.class';
import {EnvProperties} from '../utils/properties/env-properties';
import {NewSearchPageComponent, SearchForm} from "./searchUtils/newSearchPage.component";
@ -15,14 +15,14 @@ import {properties} from "../../../environments/environment";
selector: 'search-projects',
template: `
<new-search-page
pageTitle="{{(simpleView?'':'Advanced ')}} Search for {{ 'projects' | titlecase }}"
pageTitle="{{(simpleView?'':'Advanced ')}} Search for {{ openaireEntities.PROJECTS | titlecase }}"
entityType="project"
type="projects"
[type]="openaireEntities.PROJECTS"
[results]="results"
[searchUtils]="searchUtils"
[sortedByChanged]="searchUtils.sortBy"
[fieldIds]="fieldIds" [fieldIdsMap]="fieldIdsMap" [selectedFields]="selectedFields"
[csvParams]="csvParams" csvPath="projects"
[csvParams]="csvParams" [csvPath]="openaireEntities.PROJECTS_FILE"
[simpleSearchLink]="simpleSearchLink" [advancedSearchLink]="advancedSearchLink"
[disableForms]="disableForms"
[disableRefineForms]="disableRefineForms"
@ -61,7 +61,8 @@ export class SearchProjectsComponent {
public rangeFields: string[][] = this.searchFields.PROJECT_RANGE_FIELDS;
public selectedFields: AdvancedField[] = [];
properties: EnvProperties;
public openaireEntities = OpenaireEntities;
public resourcesQuery = "(oaftype exact project)";
public csvParams: string;
public disableForms: boolean = false;

View File

@ -4,7 +4,7 @@ import {AdvancedField, Filter} from './searchUtils/searchHelperClasses.class';
import {SearchResearchResultsService} from '../services/searchResearchResults.service';
import {ErrorCodes} from '../utils/properties/errorCodes';
import {ErrorMessagesComponent} from '../utils/errorMessages.component';
import {SearchFields} from '../utils/properties/searchFields';
import {OpenaireEntities, SearchFields} from '../utils/properties/searchFields';
import {SearchCustomFilter, SearchUtilsClass} from './searchUtils/searchUtils.class';
import {EnvProperties} from '../utils/properties/env-properties';
import {NewSearchPageComponent, SearchForm} from "./searchUtils/newSearchPage.component";
@ -23,7 +23,7 @@ import {ContextsService} from "../claims/claim-utils/service/contexts.service";
[searchUtils]="searchUtils"
[sortedByChanged]="searchUtils.sortBy"
[fieldIds]="fieldIds" [fieldIdsMap]="fieldIdsMap" [selectedFields]="selectedFields"
[csvParams]="csvParams" [csvPath]="getEntityName(resultType, true, false)"
[csvParams]="csvParams" [csvPath]="getEntityFileName(resultType)"
[simpleSearchLink]="simpleSearchLink" [advancedSearchLink]="advancedSearchLink"
[disableForms]="disableForms"
[disableRefineForms]="disableRefineForms"
@ -76,6 +76,7 @@ export class SearchResearchResultsComponent {
public pagingLimit: number = 0;
public isPiwikEnabled;
properties: EnvProperties = properties;
public openaireEntities = OpenaireEntities;
public refineFields: string[] = this.searchFields.RESULT_REFINE_FIELDS;
@ViewChild(NewSearchPageComponent, { static: true }) searchPage: NewSearchPageComponent;
@Input() simpleView: boolean = true;
@ -437,15 +438,27 @@ export class SearchResearchResultsComponent {
public getEntityName(entityType: string, plural: boolean, full: boolean): string {
if (entityType == "publication") {
return "publication" + (plural ? "s" : "");
return plural ? this.openaireEntities.PUBLICATIONS : this.openaireEntities.PUBLICATION;
} else if (entityType == "dataset") {
return (full ? "research data" : ("dataset" + (plural ? "s" : "")));
return plural ? this.openaireEntities.DATASETS : this.openaireEntities.DATASET;
} else if (entityType == "software") {
return "software";
return plural ? this.openaireEntities.SOFTWARE : this.openaireEntities.SOFTWARE_SINGULAR;
} else if (entityType == "other") {
return (full ? ("other research product" + (plural ? "s" : "")) : "other");
} else if (entityType == "result") {
return (full ? ("research outcome" + (plural ? "s" : "")) : "result");
return plural ? this.openaireEntities.OTHER : this.openaireEntities.OTHER_SINGULAR;
}
return plural ? this.openaireEntities.RESULTS : this.openaireEntities.RESULT;
}
public getEntityFileName(entityType: string) {
if(entityType == "publication") {
return this.openaireEntities.PUBLICATIONS_FILE;
} else if (entityType == "dataset") {
return this.openaireEntities.DATASETS_FILE;
} else if (entityType == "software") {
return this.openaireEntities.SOFTWARE_FILE;
} else if (entityType == "other") {
return this.openaireEntities.OTHER_FILE;
}
return this.openaireEntities.RESULTS_FILE;
}
}

View File

@ -1,5 +1,5 @@
import {Filter, Value} from "./searchHelperClasses.class";
import {SearchFields} from "../../utils/properties/searchFields";
import {OpenaireEntities, SearchFields} from "../../utils/properties/searchFields";
import {properties} from "../../../../environments/environment";
export class DatasourcesHelperClass {
@ -26,20 +26,20 @@ export class DatasourcesHelperClass {
} else if (type == "journals") {
return "Journals"
} else if (type == "compatible") {
return "Compatible Content Providers";
return "Compatible "+OpenaireEntities.DATASOURCES;
} else {
return "Content Providers"
return OpenaireEntities.DATASOURCES;
}
}
public static getDescription(type: "all" | "registries" | "journals" | "compatible" | "deposit") {
if (type == "registries") {
return ["Entity Registries","Discover research Entity Registries.","For each entity are available description and the research projects managed. Categorized by type and OpenAIRE compatibility level."];
} else if (type == "journals") {
return ["Research journals","Discover research Journals. ","For each entity are available description, subjects, related content providers, publications and research outcomes per year and type."];
return ["Research journals","Discover research Journals. ","For each entity are available description, subjects, related "+OpenaireEntities.DATASOURCES.toLowerCase()+", publications and "+OpenaireEntities.RESULTS.toLowerCase()+" per year and type."];
} else if (type == "compatible") {
return ["research repositories", "Discover publication, data, software, istitutional and thematic repositories.","Available repository research outcomes per year and type."];
return ["research repositories", "Discover publication, data, software, istitutional and thematic repositories.","Available repository "+OpenaireEntities.RESULTS.toLowerCase()+" per year and type."];
} else {
return ["Content providers","Discover worldwide research content providers and correlated research.","Statistics data about produced research outocomes per year available."];
return [OpenaireEntities.DATASOURCES,"Discover worldwide research "+OpenaireEntities.DATASOURCES.toLowerCase()+" and correlated research.","Statistics data about produced "+OpenaireEntities.RESULTS.toLowerCase()+" per year available."];
}
}
public static getQueryPrefix(type: "all" | "registries" | "journals" | "compatible" | "deposit"): string {

View File

@ -336,7 +336,7 @@
[isDisabled]="disabled">
</search-paging>
</div>
<div *ngIf="showIndexInfo && searchUtils.status !== errorCodes.LOADING" class="uk-margin-small-top uk-grid uk-child-width-1-2">
<div *ngIf="showIndexInfo && searchUtils.status !== errorCodes.LOADING" class="uk-margin-large-top uk-grid uk-child-width-1-2 uk-text-small">
<!-- Last Index Info-->
<div class="graph">
<icon name="graph" customClass="uk-text-primary"></icon>
@ -345,7 +345,7 @@
</span>
</div>
<div class="uk-text-right">
<span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-muted">
<span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-meta">
<a *ngIf="properties.showLastIndexInformationLink" class="uk-link" [href]="properties.lastIndexInformationLink" target="_blank">Last update</a>
<span *ngIf="!(properties.showLastIndexInformationLink)">Last update</span>
of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}