[develop | DONE | CHANGED ] Claim funding: allow search for projects with no funder selected, exclde unidentified, give more space to form
This commit is contained in:
parent
9722024643
commit
5af682b1b6
|
@ -1,11 +1,11 @@
|
||||||
<div class="uk-width-xlarge@l uk-width-large" [ngClass]="centerAlign ? 'uk-align-center':''">
|
<div class="uk-width-expand" [ngClass]="centerAlign ? 'uk-align-center':''">
|
||||||
<advanced-search-input (searchEmitter)="search(page,size)">
|
<advanced-search-input (searchEmitter)="search(page,size)">
|
||||||
<div input type="select" [(value)]="showOptions.show" placeholder="Type" hint="Select..."
|
<div input type="select" [(value)]="showOptions.show" placeholder="Type" hint="Select..."
|
||||||
[options]="showOptions.selectOptions" class="uk-width-auto "></div>
|
[options]="showOptions.selectOptions" class="uk-width-medium@xl uk-width-auto"></div>
|
||||||
<div *ngIf="funderOptions && funderOptions.length > 0" input type="select" [(value)]="selectedFunder" placeholder="Funder" hint="Select Funder..."
|
<div *ngIf="funderOptions && funderOptions.length > 0" input type="select" [(value)]="selectedFunder" placeholder="Funder" hint="Select Funder..."
|
||||||
[options]="funderOptions" class="uk-width-expand" (valueChange)="funderChanged($event)"></div>
|
[options]="funderOptions" class="uk-width-expand" (valueChange)="funderChanged($event)"></div>
|
||||||
<div *ngIf="selectedFunder && selectedFunder.number > 1" class="uk-width-expand" input type="text" [(value)]="keyword" [searchable]="true" placeholder="Projects to link"
|
<div class="uk-width-expand" input type="text" [(value)]="keyword" [searchable]="true" placeholder="Projects to link"
|
||||||
[hint]="'Search for ' + openaireEntities.PROJECTS + '...'" tooltip="true" [disabled]="!selectedFunder"></div>
|
[hint]="'Search for ' + openaireEntities.PROJECTS + '...'" tooltip="true" [disabled]="isNoProjectFunder"></div>
|
||||||
</advanced-search-input>
|
</advanced-search-input>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf=" openaireResultsStatus != errorCodes.LOADING && !isNoProjectFunder && this.selectedFunder && openaireResults.length == 0">
|
<div *ngIf=" openaireResultsStatus != errorCodes.LOADING && !isNoProjectFunder && this.selectedFunder && openaireResults.length == 0">
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf=" openaireResultsStatus != errorCodes.LOADING && this.funderOptions.length > 1 && !this.selectedFunder">
|
<div *ngIf=" openaireResultsStatus != errorCodes.LOADING && this.funderOptions.length > 1 && !this.selectedFunder">
|
||||||
<div class="uk-text-center uk-text-large uk-text-meta uk-margin-large-top">Select funder to proceed
|
<div class="uk-text-center uk-text-large uk-text-meta uk-margin-large-top">Select funder or search for projects to proceed
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="uk-margin-top">
|
<div class="uk-margin-top">
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
</div>
|
</div>
|
||||||
<claim-results [localStoragePrefix]="localStoragePrefix" [results]=openaireResults
|
<claim-results [localStoragePrefix]="localStoragePrefix" [results]=openaireResults
|
||||||
[selectedResults]=selectedProjects [basketLimit]="basketLimit"></claim-results>
|
[selectedResults]=selectedProjects [basketLimit]="basketLimit"></claim-results>
|
||||||
<div *ngIf="isNoProjectFunder && openaireResultsStatus != errorCodes.LOADING " class="uk-alert uk-alert-default"><span class=" uk-text-bold">{{selectedFunder.name}}</span> has no projects. Proceed to next step. </div>
|
<div *ngIf="isNoProjectFunder && openaireResultsStatus != errorCodes.LOADING " class="uk-alert uk-alert-default">No projects for funder <span class=" uk-text-bold">{{selectedFunder.name}}</span>. </div>
|
||||||
<div *ngIf="openaireResultsNum != null && openaireResultsNum > 0 && openaireResultsStatus != errorCodes.LOADING " class="uk-flex uk-flex-center ">
|
<div *ngIf="openaireResultsNum != null && openaireResultsNum > 0 && openaireResultsStatus != errorCodes.LOADING " class="uk-flex uk-flex-center ">
|
||||||
<paging-no-load [currentPage]="openaireResultsPage"
|
<paging-no-load [currentPage]="openaireResultsPage"
|
||||||
[totalResults]="openaireResultsNum" [term]="keyword"
|
[totalResults]="openaireResultsNum" [term]="keyword"
|
||||||
|
|
|
@ -74,6 +74,8 @@ export class ClaimProjectsSearchFormComponent {
|
||||||
this.sub = this._projectService.advancedSearchProjects("", 1, 0, this.properties,
|
this.sub = this._projectService.advancedSearchProjects("", 1, 0, this.properties,
|
||||||
this.refineFieldsQuery, this.refineFields, "&type=projects&sf=funder").subscribe(
|
this.refineFieldsQuery, this.refineFields, "&type=projects&sf=funder").subscribe(
|
||||||
data => {
|
data => {
|
||||||
|
let option = {value : null, label: "No funder selected"};
|
||||||
|
this.funderOptions.push(option);
|
||||||
for(let v of data[2][0].values){
|
for(let v of data[2][0].values){
|
||||||
let option = {value : v, label: v.name};
|
let option = {value : v, label: v.name};
|
||||||
this.funderOptions.push(option);
|
this.funderOptions.push(option);
|
||||||
|
@ -107,7 +109,7 @@ export class ClaimProjectsSearchFormComponent {
|
||||||
this.prevFilters = this.filters;
|
this.prevFilters = this.filters;
|
||||||
|
|
||||||
//searchProjects (params: string, refineParams:string, page: number, size: number, refineFields:string[] , properties:EnvProperties ):any {
|
//searchProjects (params: string, refineParams:string, page: number, size: number, refineFields:string[] , properties:EnvProperties ):any {
|
||||||
this.sub = this._projectService.advancedSearchProjects(this.createOpenaireQueryParams(), page, size, this.properties, null, [], this.createOpenaireRefineQuery()).subscribe(
|
this.sub = this._projectService.advancedSearchProjects(this.createOpenaireQueryParams(), page, size, this.properties, this.createOpenaireRefineQuery(), [], null).subscribe(
|
||||||
// this.sub = this._projectService.searchProjects(this.createOpenaireQueryParams(),(page==1)? this.refineFieldsQuery:null, page, size, (page==1)?this.refineFields:[], this.properties).subscribe(
|
// this.sub = this._projectService.searchProjects(this.createOpenaireQueryParams(),(page==1)? this.refineFieldsQuery:null, page, size, (page==1)?this.refineFields:[], this.properties).subscribe(
|
||||||
data => {
|
data => {
|
||||||
if (data != null) {
|
if (data != null) {
|
||||||
|
@ -150,7 +152,7 @@ export class ClaimProjectsSearchFormComponent {
|
||||||
const entity: ClaimEntity = new ClaimEntity();
|
const entity: ClaimEntity = new ClaimEntity();
|
||||||
entity.project = new ClaimProject();
|
entity.project = new ClaimProject();
|
||||||
entity.project.funderId = item.funderId;
|
entity.project.funderId = item.funderId;
|
||||||
entity.project.funderShortname = item.funderShortname?item.funderShortname:(entity.project.funderId.split("::")[1]);
|
entity.project.funderShortname = item.funderShortname?item.funderShortname:(entity.project.funderId?entity.project.funderId.split("::")[1]:"");
|
||||||
entity.project.funderName = item.funderName;
|
entity.project.funderName = item.funderName;
|
||||||
entity.id = item.id;
|
entity.id = item.id;
|
||||||
entity.project.url = (item.code !="unidentified") ? properties.searchLinkToProject + entity.id : null;
|
entity.project.url = (item.code !="unidentified") ? properties.searchLinkToProject + entity.id : null;
|
||||||
|
@ -186,12 +188,6 @@ export class ClaimProjectsSearchFormComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
createOpenaireRefineQuery(): string {
|
createOpenaireRefineQuery(): string {
|
||||||
/*if(this.startYear.length > 0 ){
|
|
||||||
query+='&fq=projectstartyear exact \"'+this.startYear+'\"'
|
|
||||||
}
|
|
||||||
if(this.endYear.length > 0 ){
|
|
||||||
query+='&fq=projectendyear exact \"'+this.endYear+'\"'
|
|
||||||
}*/
|
|
||||||
let allFqs = "";
|
let allFqs = "";
|
||||||
for (let filter of this.filters) {
|
for (let filter of this.filters) {
|
||||||
if (filter.countSelectedValues > 0) {
|
if (filter.countSelectedValues > 0) {
|
||||||
|
@ -209,8 +205,11 @@ export class ClaimProjectsSearchFormComponent {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(this.isNoProjectFunder){
|
if(this.selectedFunder){
|
||||||
allFqs += "&fq=" + StringUtils.URIEncode( "funder exact " + (StringUtils.quote(this.selectedFunder.id))); ;
|
allFqs += "&fq=" + StringUtils.URIEncode( "funder exact " + (StringUtils.quote(this.selectedFunder.id)));
|
||||||
|
}
|
||||||
|
if(!this.isNoProjectFunder || !this.selectedFunder){
|
||||||
|
allFqs += '&fq=(projectcode<>"unidentified")'
|
||||||
}
|
}
|
||||||
for (let i = 0; i < this.rangeFilters.length; i++) {
|
for (let i = 0; i < this.rangeFilters.length; i++) {
|
||||||
let filter = this.rangeFilters[i];
|
let filter = this.rangeFilters[i];
|
||||||
|
|
Loading…
Reference in New Issue