fix parsing for new communities | change layout in all pages | change form background and position in home page| fix tabs line | use funder field in refine not funderid | In search pages put browse and results in the same height | change main page tab content from ul .uk-switcher to simple divs

git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-portal/trunk@48566 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
argiro.kokogiannaki 2017-07-14 10:16:52 +00:00
parent 997e3b5020
commit 8bac59417a
35 changed files with 380 additions and 144 deletions

View File

@ -29,26 +29,19 @@ export class XLargeDirective {
<div id="tm-main" class=" uk-section uk-margin-large-top tm-middle custom-main-content" >
<!--div id="tm-main" class=" uk-section uk-margin-large-top tm-middle custom-main-content" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first "-->
<div class="custom-main-content" >
<main>
<router-outlet></router-outlet>
</main>
</div>
<!-- Sidebar -->
<!--div id="tm-sidebar" class="tm-sidebar uk-width-1-4@m uk-hidden-small">
<div class="uk-child-width-1-1" uk-grid>
something in sidebar
<!--/div>
<login></login>
</div>
</div-->
<!-- end of sidebar -->
</div>
</div>
<cookie-law *ngIf= "isClient" position="bottom">
OpenAIRE uses cookies in order to function properly.<br>
Cookies are small pieces of data that websites store in your browser to allow us to give you the best browsing experience possible.

View File

@ -207,7 +207,8 @@ getCommunities () {
var token=Session.getUserJwt();
this._contextService.getCategories(this.selectedCommunityId).subscribe(
data => {
this.categories = data.category;
this.categories = (Array.isArray(data.category))? data.category:[data.category];
this.concepts = [];
this.addCommunityInConcepts();
this.filteredList = [];

View File

@ -6,6 +6,13 @@ import { Meta} from '../../../angular2-meta';
@Component({
selector: 'claims-admin',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container">
<div class="page-header">
<h2> Claims Administrator </h2>
@ -15,6 +22,10 @@ import { Meta} from '../../../angular2-meta';
<displayClaims [enableDelete]=true [myClaims]=false [isAdmin]=true></displayClaims>
</div>
</div>
</div>
</div>
</div>
`,
})

View File

@ -18,6 +18,9 @@ import {ClaimsDatatablePipe} from '../../utils/pipes/claimsDatatable.pipe';
@Component({
selector: 'claims-project-manager',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container">
<!--div *ngIf="accessStatus=='empty'" class="uk-margin-top uk-width-medium-2-3 uk-container-center">
<div class="uk-block uk-block-primary uk-block-large uk-contrast uk-text-center">
@ -175,6 +178,9 @@ import {ClaimsDatatablePipe} from '../../utils/pipes/claimsDatatable.pipe';
<modal-loading [message]= "'Loading...'"></modal-loading>
</div>
</div>
</div>
</div>
</div>
`,

View File

@ -10,6 +10,10 @@ import { Meta} from '../../../angular2-meta';
@Component({
selector: 'directLinking',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header">
<h2>Linking</h2>
@ -94,7 +98,9 @@ import { Meta} from '../../../angular2-meta';
</ul>
</div>
</div>
</div>
</div>
</div>
`
})

View File

@ -294,6 +294,7 @@ createDirectClaim(result, projects, contexts){
var entity = {};
var md5_id = Md5.hashStr(result.id);
entity["originalId"]="userclaim___::"+md5_id;
entity["openaireId"]="userclaim___::"+md5_id;
entity["title"]=result.title;
entity["title"] =(Array.isArray(result.title) && result.title.length > 0 )?result.title[0]:result.title;

View File

@ -11,6 +11,10 @@ declare var UIkit:any;
@Component({
selector: 'linking-generic',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header">
<h1>Linking</h1>
@ -109,7 +113,9 @@ declare var UIkit:any;
</ul>
</div>
</div>
</div>
</div>
`
})

View File

@ -6,6 +6,10 @@ import { Meta} from '../../../angular2-meta';
@Component({
selector: 'my-claims',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header">
<h2> My Linked research resutls</h2>
@ -15,7 +19,9 @@ import { Meta} from '../../../angular2-meta';
<displayClaims [enableDelete]=true [myClaims]=true [isAdmin]=false [showUserEmail]=false ></displayClaims>
</div>
</div>
</div>
</div>
</div>
`
})

View File

@ -14,6 +14,10 @@ import {RouterHelper} from '../../utils/routerHelper.class';
@Component({
selector: 'deposit-by-subject-result',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header" >
<h2>Deposit {{requestFor}}</h2>
@ -76,6 +80,9 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<span class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="chevron-left" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.03" points="13 16 7 10 13 4"></polyline></svg></span> Back
</button>
</div>
</div>
</div>
</div>
`
})

View File

@ -3,10 +3,17 @@ import {Component} from '@angular/core';
@Component({
selector: 'deposit-datasets',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container">
<deposit [compatibility]="'openaire____::21f8a223b9925c2f87c404096080b046||Registry of Research Data Repository'" [requestFor]="'Research Data'"></deposit>
<deposit-by-subject [compatibility]="'openaire____::21f8a223b9925c2f87c404096080b046||Registry of Research Data Repository'" [requestFor]="'Research Data'" ></deposit-by-subject>
<div>
</div>
</div>
</div>
`
})

View File

@ -14,6 +14,10 @@ import {RouterHelper} from '../utils/routerHelper.class';
@Component({
selector: 'deposit-result',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header" >
<h2>Deposit {{requestFor}}</h2>
@ -113,6 +117,9 @@ import {RouterHelper} from '../utils/routerHelper.class';
<span class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="chevron-left" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.03" points="13 16 7 10 13 4"></polyline></svg></span> Back
</button>
</div>
</div>
</div>
</div>
`
})

View File

@ -3,12 +3,19 @@ import {Component} from '@angular/core';
@Component({
selector: 'deposit-publications',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container">
<deposit [compatibility]="'openaire____::47ce9e9f4fad46e732cff06419ecaabb||OpenDOAR'" [requestFor]="'Publications'"></deposit>
<h3>Or locate data provider in map</h3>
<div class="uk-margin-top">
<i-frame [url]="mapUrl"width="100%" height="900"></i-frame>
</div>
</div>
</div>
</div>
</div>
`
})

View File

@ -1,3 +1,7 @@
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top datasource">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top" role="alert">{{warningMessage}}</div>
<div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger uk-margin-large-top" role="alert">{{errorMessage}}</div>
@ -216,3 +220,6 @@
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -1,3 +1,7 @@
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top dataset">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top" role="alert">{{warningMessage}}</div>
@ -393,3 +397,6 @@
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -12,6 +12,10 @@ declare var UIkit: any;
@Component({
selector: 'htmlProjectReport',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div *ngIf="warningMessage" class="uk-alert uk-alert-warning" role="alert">{{warningMessage}}</div>
<div *ngIf="showLoading" class="uk-alert uk-alert-primary" role="alert">Loading...</div>
@ -31,6 +35,10 @@ declare var UIkit: any;
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger" role="alert">{{errorMessage}}</div>
</div>
</div>
</div>
</div>
</div>
`
})
export class HtmlProjectReportComponent{

View File

@ -1,3 +1,7 @@
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top organization">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top" role="alert">{{warningMessage}}</div>
<div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger uk-margin-large-top" role="alert">{{errorMessage}}</div>
@ -82,7 +86,7 @@
<div *ngIf="fetchPublications.searchUtils.totalResults > 0">
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults > 10">
<a [queryParams]="routerHelper.createQueryParams(['organizationId', 'or'], [organizationId, 'and'])"
<a [queryParams]="routerHelper.createQueryParams(['organization', 'or'], [organizationId, 'and'])"
routerLinkActive="router-link-active" [routerLink]="linkToSearchPublications">
View all {{fetchPublications.searchUtils.totalResults}} results
</a>
@ -114,7 +118,7 @@
<!--a [href] = "linkToSearchDataproviders">
View all {{fetchDataproviders.searchUtils.totalResults}} results
</a-->
<a [queryParams]="routerHelper.createQueryParams(['organizationId', 'or'], [organizationId, 'and'])"
<a [queryParams]="routerHelper.createQueryParams(['organization', 'or'], [organizationId, 'and'])"
routerLinkActive="router-link-active" [routerLink]="linkToSearchDataproviders">
View all {{fetchDataproviders.searchUtils.totalResults}} results
</a>
@ -173,3 +177,6 @@
<modal-alert #AlertModalApplyAll (alertOutput)="confirmCloseApplyAll($event)"></modal-alert>
<modal-alert #AlertModalCsvError></modal-alert>
</div>
</div>
</div>
</div>

View File

@ -109,7 +109,7 @@ export class OrganizationComponent {
});
this.downloadURLAPI = OpenaireProperties.getCsvAPIURL();
this.csvProjectParamsHead = 'format=csv&type=projects&page=0&query=( (oaftype exact project)and (funderid exact "';
this.csvProjectParamsHead = 'format=csv&type=projects&page=0&query=( (oaftype exact project)and (funder exact "';
//this.csvPublicationParamsHead = 'format=csv-special&type=publications&page=0&query=((((oaftype exact result) and (resulttypeid exact publication)) and (funderid exact ';
}
@ -133,7 +133,7 @@ export class OrganizationComponent {
this.updateTitle(this.organizationInfo.title.name);
this.updateDescription("Organization, country, projects, search, repositories, open access"+this.organizationInfo.title.name);
var refineFields:string [] = ["funderid"];
var refineFields:string [] = ["funder"];
this.searchPublications();

View File

@ -1,3 +1,7 @@
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div id="project" class="uk-container uk-margin-top project">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top" role="alert">{{warningMessage}}</div>
<div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger uk-margin-large-top" role="alert">{{errorMessage}}</div>
@ -307,3 +311,6 @@
</div>
<modal-loading></modal-loading>
</div>
</div>
</div>
</div>

View File

@ -1,3 +1,7 @@
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top publication">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top" role="alert">{{warningMessage}}</div>
@ -605,3 +609,6 @@
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -21,7 +21,7 @@ import {RouterHelper} from '../utils/routerHelper.class';
<div *ngIf="fetchProjects.searchUtils.totalResults > 0">
<div class = "uk-text-right" *ngIf = "fetchProjects.searchUtils.totalResultsNoFilters > 10">
<a [queryParams]="routerHelper.createQueryParams(['organizationId', 'or'], [organizationId, 'and'])"
<a [queryParams]="routerHelper.createQueryParams(['organization', 'or'], [organizationId, 'and'])"
routerLinkActive="router-link-active" [routerLink]="linkToSearchProjects">
View all {{fetchProjects.searchUtils.totalResultsNoFilters}} results
</a>
@ -81,7 +81,7 @@ export class SearchingProjectsTabComponent {
search(refine:boolean, filterQuery:string){
var refineFields:string [] = ["funderid"];
var refineFields:string [] = ["funder"];
this.fetchProjects.getResultsForOrganizations(this.organizationId, filterQuery, this.page, this.size,(refine)?refineFields:[]);
}

View File

@ -11,6 +11,9 @@ import {OpenaireProperties} from '../utils/properties/openaireProperties';
@Component({
selector: 'user',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div *ngIf="!server" class="uk-margin-top uk-container uk-container-small uk-position-relative">
@ -57,6 +60,9 @@ import {OpenaireProperties} from '../utils/properties/openaireProperties';
</div>
<button (click)="logout()" class=" uk-button uk-button-default">Log out</button>
</div>
</div>
</div>
</div>
</div>
`
})

View File

@ -27,17 +27,82 @@ import {RouterHelper} from '../../utils/routerHelper.class';
encapsulation: ViewEncapsulation.Emulated,
selector: 'search-find',
template: `
<div class="image-front-topbar uk-section-secondary uk-position-relative" uk-scrollspy="{&quot;target&quot;:&quot;[uk-scrollspy-class]&quot;,&quot;cls&quot;:&quot;uk-animation-fade&quot;,&quot;delay&quot;:false}" tm-header-transparent="light">
<div style="background-image: url(&quot;/assets/globe_tech.jpg&quot;); background-color: rgb(255, 255, 255); box-sizing: border-box; min-height: calc(100vh - 412.767px);" class="uk-background-norepeat uk-background-cover uk-background-fixed uk-section uk-padding-remove-bottom uk-flex uk-flex-middle" uk-height-viewport="offset-top: true;offset-bottom: ! +">
<div class="uk-position-cover" style="background-color: rgba(70, 68, 68, 0.65);"></div>
<div class="uk-width-1-1">
<div class="uk-position-relative">
<div class="uk-container uk-margin-medium">
<div class="tm-header-placeholder uk-margin-remove-adjacent" style="height: 84px;"></div>
<div class="search_box_bg uk-grid-large uk-flex-middle uk-grid uk-grid-stack" uk-grid="">
<div class="uk-width-1-1@m uk-first-column">
<div data-id="page#4">
<search-form [(keyword)]=keyword (keywordChange)="keywordChanged($event)" placeholderText="Search in OpenAIRE information space"></search-form>
<!--div class="search_box_bg" style="text-align:center"><input aria-describedby="sizing-addon2" class="uk-input uk-width-1-2 ng-pristine ng-valid ng-touched" name="keyword" placeholder="Type keywords..." type="text"> <button class=" uk-button uk-button-default" type="submit">Search</button></div-->
</div>
</div>
</div>
</div>
<div class="uk-container uk-container-large uk-margin-medium">
<div class="search_box_bg uk-grid uk-grid-stack" uk-grid="">
<div class="uk-width-1-1@m uk-first-column">
<div class="search_box_bg uk-margin-large uk-margin-remove-bottom uk-text-center uk-grid-match uk-child-width-1-2 uk-child-width-1-2@s uk-child-width-1-4@m uk-child-width-1-4@l uk-child-width-1-4@xl uk-grid-collapse uk-grid-divider uk-grid uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" uk-grid="" data-id="page#7" style="">
<div class="uk-first-column">
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
<h2 class="el-title uk-margin uk-h2">
<span class="uk-text-background">16 mi publications</span>
</h2>
</div>
</div>
<div>
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
<h2 class="el-title uk-margin uk-h2">
<span class="uk-text-background">83 K datasets</span>
</h2>
</div>
</div>
<div>
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
<h2 class="el-title uk-margin uk-h2">
<span class="uk-text-background">7900 data sources</span>
</h2>
</div>
</div>
<div>
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
<h2 class="el-title uk-margin uk-h2">
<span class="uk-text-background">15 funders</span>
</h2>
</div>
</div>
</div>
<div class="uk-margin-large uk-margin-remove-bottom uk-text-center uk-text-meta uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" data-id="page#8" style="">
<span style="color:#fff!important; font-size:30pt!important">all linked together</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="">
<div class="uk-width-1-1 ">
<!--div class="uk-width-1-1 ">
<div class="uk-background-norepeat uk-background-cover uk-section uk-flex uk-flex-middle" style="background-image: url('./assets/formImageLight.jpg'); box-sizing: border-box; height: 250px">
<div class="uk-width-1-1">
<search-form [(keyword)]=keyword (keywordChange)="keywordChanged($event)" placeholderText="Search for research results, projects, content providers, organizations in OpenAIRE information space"></search-form>
</div>
</div>
</div>
<div class=" uk-margin-large-top uk-container">
</div-->
<div class=" uk-margin-small-top uk-container">
<ul class=" uk-tab uk-visible@m" uk-tab="connect: #searchtabs; animation: uk-animation-fade">
<li (click)="searchPublications()" >
<a>
@ -73,10 +138,6 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<span [class]="(fetchOrganizations.searchUtils.status != errorCodes.LOADING && keyword.length > 0)?'uk-badge uk-badge-notification':''"> {{((fetchOrganizations.searchUtils.status != errorCodes.LOADING && keyword.length > 0)? fetchOrganizations.searchUtils.totalResults :'')}}</span>
</a>
</li>
</ul>
<button class="uk-button uk-button-default uk-hidden@m" type="button">
@ -122,9 +183,11 @@ import {RouterHelper} from '../../utils/routerHelper.class';
</ul>
<ul id="searchtabs" class="uk-switcher uk-width-1-1 uk-margin-top custom-tab-content-large">
<li>
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
<!--ul id="searchtabs" class="uk-switcher uk-width-1-1 uk-margin-top custom-tab-content-large">
<li-->
<div class="uk-width-1-1 uk-margin-top custom-tab-content-large">
<div *ngIf = "activeTab=='publications'">
<div *ngIf = "keyword.length > 0 && activeTab=='publications'" class ="uk-animation-fade">
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults> 10">
<!--a [href] = "linkToSearchPublications"-->
<a [queryParams]="routerHelper.createQueryParam('keyword', keyword)"
@ -142,9 +205,11 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<div *ngIf = "keyword.length == 0 && activeTab=='publications'" class ="uk-animation-fade" >
<browse-entities entityName="publication" baseUrl="/search/find/publications" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
</div>
</li>
<li>
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
<!--/li>
<li-->
</div>
<div *ngIf = "activeTab=='datasets'" >
<div *ngIf = "keyword.length > 0 && activeTab=='datasets'" class ="uk-animation-fade">
<div class = "uk-text-right" *ngIf = "fetchDatasets.searchUtils.totalResults> 10">
<!--a [href] = "linkToSearchDatasets"-->
<a [queryParams]="routerHelper.createQueryParam('keyword', keyword)"
@ -162,9 +227,11 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<div *ngIf = "keyword.length == 0 && activeTab=='datasets'" class ="uk-animation-fade">
<browse-entities entityName="dataset" baseUrl="/search/find/datasets" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
</div>
</li>
<li>
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
<!--/li>
<li-->
</div>
<div *ngIf = "activeTab=='projects'">
<div *ngIf = "keyword.length > 0 && activeTab=='projects'" class ="uk-animation-fade">
<div class = "uk-text-right" *ngIf = "fetchProjects.searchUtils.totalResults> 10">
<!--a [href] = "linkToSearchProjects"-->
<a [queryParams]="routerHelper.createQueryParam('keyword', keyword)"
@ -182,9 +249,11 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<div *ngIf = "keyword.length == 0 && activeTab=='projects'" class ="uk-animation-fade">
<browse-entities entityName="project" baseUrl="/search/find/projects" [refineFields]=searchFields.PROJECT_REFINE_FIELDS></browse-entities>
</div>
</li>
<li>
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
<!--/li>
<li-->
</div>
<div *ngIf = "activeTab=='dataproviders'">
<div *ngIf = "keyword.length > 0 && activeTab=='dataproviders'" class ="uk-animation-fade">
<div class = "uk-text-right" *ngIf = "fetchDataproviders.searchUtils.totalResults> 10">
<!--a [href] = "linkToSearchDataproviders"-->
<a [queryParams]="routerHelper.createQueryParam('keyword', keyword)"
@ -202,8 +271,10 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<div *ngIf = "keyword.length == 0 && activeTab=='dataproviders'" class ="uk-animation-fade" >
<browse-entities entityName="dataprovider" baseUrl="/search/find/dataproviders" [refineFields]=searchFields.DATASOURCE_REFINE_FIELDS></browse-entities>
</div>
</li>
<li>
<!--/li>
<li-->
</div>
<div *ngIf = "activeTab=='organizations'">
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
<div class = "uk-text-right" *ngIf = "fetchOrganizations.searchUtils.totalResults> 10">
<!--a [href] = "linkToSearchOrganizations"-->
@ -219,14 +290,19 @@ import {RouterHelper} from '../../utils/routerHelper.class';
type="organization" urlParam="organizationId">
</search-result>
</div>
<div *ngIf = "keyword.length == 0 && activeTab=='organizations'" class ="uk-animation-fade">
<div *ngIf = "keyword.length == 0" class ="uk-animation-fade">
<browse-entities entityName="organization" baseUrl="/search/find/organizations" [refineFields]=searchFields.ORGANIZATION_REFINE_FIELDS></browse-entities>
</div>
</li>
</ul>
</div>
</div>
<!--/li>
</ul-->
</div>
</div>
</div>
</div>
`
})
@ -345,10 +421,13 @@ public subPub;public subData;public subProjects;public subOrg; public subDataPr;
}
public searchProjects() {
this.activeTab = "projects";
console.log("searchProjects");
if(this.reloadProjects &&
this.fetchProjects.searchUtils.status != this.errorCodes.NONE &&
this.fetchProjects.searchUtils.status != this.errorCodes.ERROR) {
this.reloadProjects = false;
console.log("do the search searchProjects");
this.fetchProjects.getResultsByKeyword(this.keyword, 1, 10);
this.linkToSearchProjects = OpenaireProperties.getLinkToSearchProjects();// + "?keyword=" + this.keyword;
}

View File

@ -13,7 +13,9 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
@Component({
selector: 'advanced-search-page',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header">
<h2>{{pageTitle}}</h2>
@ -44,6 +46,9 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
</div>
</div>
<!--modal-loading [message]= "'Loading results...'"></modal-loading-->
</div>
</div>
</div>
`
})

View File

@ -17,13 +17,13 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<h4 class="tm-article-subtitle">{{filter.title}}</h4>
<div *ngIf="filter.values.length == 0" class="uk-alert uk-alert-primary" role="alert">No {{filter.title}} statistics found</div>
<ul *ngIf="filter.values.length > 0 && !viewAll" class="uk-list uk-list-divider browseFilters">
<ul *ngIf="filter.values.length > 0 && !viewAll" class="uk-list browseFilters">
<li *ngFor= "let value of filter.values.slice(0,5)"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
<li *ngFor= "let value of filter.values.slice(0,5)" class= " uk-margin-remove-top"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
<a class = " filterItem" [queryParams]="routerHelper.createQueryParam(filter.filterId,quote(value.id))" routerLinkActive="router-link-active" [routerLink]=baseUrl>
<span class="filterName"><div title = "{{value.name}}">{{_formatName(value)}} </div></span> <span class="filterNumber" > ({{value.number}})</span></a>
</li>
<li *ngIf= " filter.values.length > 5 ">
<li *ngIf= " filter.values.length > 5 " class= " uk-margin-remove-top">
<a href="#modal-{{filter.filterId}}" uk-toggle><span class="uk-text-muted">View more </span><span class="uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="triangle-right" ratio="1"><polygon points="8 5 13 10 8 15"></polygon></svg>
</span></a>

View File

@ -9,7 +9,7 @@ import {Open} from '../../utils/modal/open.component';
template: `
<ul *ngIf= "filter.values.length >0" class="uk-list">
<li class="uk-open">
<h5 class="uk-margin-bottom-remove uk-margin-top">{{_formatTitle(filter.title,filter.values.length)}}
<h5 class="uk-margin-bottom-remove">{{_formatTitle(filter.title,filter.values.length)}}
</h5>
<div aria-expanded="false">
<div class="searchFilterBoxValues ">
@ -42,7 +42,7 @@ import {Open} from '../../utils/modal/open.component';
<div *ngIf="addShowMore" [class]="(!isOpen)?'uk-modal ':'uk-modal uk-open uk-animation-fade'" uk-modal [open]="!isOpen" id="modal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" bg-close="true">
<div class="filtersModal uk-modal-dialog uk-small-1-2 uk-width-medium-1-2 uk-width-1-4 uk-padding-small uk-padding-remove-top uk-padding-remove-horizontal">
<div class="filtersModal uk-modal-dialog uk-small-1-2 uk-width-medium-1-3 uk-width-1-3 uk-padding-small uk-padding-remove-top uk-padding-remove-horizontal">
<button type="button" class="uk-modal-close-default" uk-close (click)="close()"></button>
<h3 class="uk-margin-remove uk-padding uk-padding-remove-bottom">

View File

@ -17,7 +17,9 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
@Component({
selector: 'search-page',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="">
<!--div class="page-header">
<h2>{{pageTitle}}</h2>
@ -34,14 +36,14 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="chevron-right" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.03" points="7 4 13 10 7 16"></polyline></svg>
</span>
</a>
<div *ngIf="isFiltered()" class = " uk-text-center ">
<div *ngIf="isFiltered()" class = "uk-container uk-text-center ">
<span *ngIf = "searchUtils.keyword.length > 0">Keywords: <span [innerHtml]="searchUtils.keyword"></span><a (click) = "clearKeywords() " [class]="(disableForms)?'uk-icon-button uk-disabled':'uk-icon-button'"><span class=" clickable " aria-hidden="true"><span class="uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="1"><path fill="none" stroke="#000" stroke-width="1.06" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.06" d="M16,4 L4,16"></path></svg>
</span></span></a>
</span>
<span *ngFor="let filter of filters " >
<span *ngIf = "filter.countSelectedValues > 0"> {{filter.title}}:
<span *ngFor="let value of getSelectedValues(filter); let i = index; let end = last; " ><span [innerHtml]="value.name"></span><a (click) = "removeFilter(value, filter) " [class]="(disableForms)?'uk-icon-button uk-disabled':'uk-icon-button'"><span class=" clickable" aria-hidden="true"><span class="uk-icon">
<span *ngFor="let value of getSelectedValues(filter); let i = index; let end = last; " ><span [innerHtml]="(value.name.length > 25)?value.name.substring(0,25)+'...':value.name" title="value.name"></span><a (click) = "removeFilter(value, filter) " [class]="(disableForms)?'uk-icon-button uk-disabled':'uk-icon-button'"><span class=" clickable" aria-hidden="true"><span class="uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="1"><path fill="none" stroke="#000" stroke-width="1.06" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.06" d="M16,4 L4,16"></path></svg>
</span></span></a>
<span *ngIf="!end">, </span>
@ -61,10 +63,7 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
</div>
</div>
<div class="uk-container">
<div class="uk-grid uk-width-1-1 uk-margin">
<div [class]="(showRefine)?'uk-width-3-4@m uk-width-3-4@l uk-width-1-1@s uk-float-right':'uk-width-1-1'">
<div *ngIf="showRefine" class="uk-offcanvas-content uk-hidden@m">
<a href="#offcanvas-usage" uk-toggle><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"><rect x="6" y="4" width="12" height="1"></rect><rect x="6" y="9" width="12" height="1"></rect><rect x="6" y="14" width="12" height="1"></rect><rect x="2" y="4" width="2" height="1"></rect><rect x="2" y="9" width="2" height="1"></rect><rect x="2" y="14" width="2" height="1"></rect></svg></a>
@ -79,12 +78,6 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
</div>
<div *ngIf="showRefine" class=" search-filters uk-width-1-4@l uk-width-1-4@m uk-width-1-1@s uk-visible@m">
<search-filter *ngFor="let filter of filters " [isDisabled]="disableForms" [filter]="filter" [showResultCount]=showResultCount (change)="filterChanged($event)" (toggleModal)="toggleModal($event)"></search-filter>
</div>
<div [class]="(showRefine)?'uk-width-3-4@m uk-width-3-4@l uk-width-1-1@s uk-first-column':''" >
<search-paging [type]="type" [(searchUtils)] = "searchUtils" [(results)] = "results" [(baseUrl)] = "baseUrl" [(parameterNames)] = "parameterNames" [(parameterValues)] = "parameterValues" ></search-paging>
<search-download [type]="csvPath" [csvParams]="csvParams" [totalResults]="searchUtils.totalResults" (downloadClick)="downloadClicked($event)"></search-download>
@ -94,6 +87,13 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
Show results in table view
</a>
</p>
</div>
<div class="uk-grid uk-width-1-1 uk-margin">
<div *ngIf="showRefine" class=" search-filters uk-width-1-4@l uk-width-1-4@m uk-width-1-1@s uk-visible@m">
<search-filter *ngFor="let filter of filters " [isDisabled]="disableForms" [filter]="filter" [showResultCount]=showResultCount (change)="filterChanged($event)" (toggleModal)="toggleModal($event)"></search-filter>
</div>
<div [class]="(showRefine)?'uk-width-3-4@m uk-width-3-4@l uk-width-1-1@s uk-first-column':''" >
<search-result *ngIf="!tableView"
[results]="results"
@ -107,6 +107,9 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
</div>
</div>
</div>
</div>
</div>

View File

@ -17,6 +17,9 @@ import {ContentProvidersDatatablePipe} from '../../utils/pipes/contentProvidersD
@Component({
selector: 'search-page-table',
template: `
<div id="tm-main" class=" uk-section uk-margin-small-top tm-middle" >
<div uk-grid uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-margin-top">
<div class="page-header">
@ -135,7 +138,9 @@ import {ContentProvidersDatatablePipe} from '../../utils/pipes/contentProvidersD
</div>
<modal-search-filter [filter]="currentFilter" [showResultCount]=showResultCount (modalChange)="filterChanged($event)"></modal-search-filter>
</div>
</div>
</div>
`
})
export class SearchPageTableViewComponent {

View File

@ -50,10 +50,10 @@ import {RouterHelper} from '../../utils/routerHelper.class';
<!--a *ngIf="project.url != undefined" href="{{project.url}}"-->
<a *ngIf="project.id" [queryParams]="{projectId: project.id}" routerLinkActive="router-link-active" routerLink="/search/project">
{{project['funderShortname']?project['funderShortname']:project['funderName']}}
| {{ project['acronym']?project['acronym']:project['title']}} ({{project.code}})</a><span
| {{ project['acronym']?project['acronym']:(project['title'].length>25?project['title'].substring(0,25)+'...':project['title'])}} ({{project.code}})</a><span
*ngIf="!project.id">{{project['funderShortname']?project['funderShortname']:project['funderName']}}<span
*ngIf="project['acronym'] || project['title']"> | {{ project['acronym']?project['acronym']:project['title']}}</span><span
*ngIf="project['acronym'] || project['title']"> | {{ project['acronym']?project['acronym']:(project['title'].length>25?project['title'].substring(0,25)+'...':project['title'])}}</span><span
*ngIf="project.code">({{project.code}})</span></span><span
*ngIf="i < result['projects'].length-1">,</span>

View File

@ -58,6 +58,7 @@ export class RefineFieldResultsService {
for(let i=0; i<field.length; i++) {
var value:AutoCompleteValue = new AutoCompleteValue();
value.label = field[i].name;
value.label = RefineResultsUtils.inParenthesisThePartAfterCharacters(field[i],"||");
value.id = field[i].id;
values.push(value);

View File

@ -23,12 +23,14 @@ export class RefineResultsUtils {
for(let i=0; i<field.length; i++) {
var value:Value = new Value();
value.name = field[i].name;
value.name =this.removePartAfterCharacters(value,"||");
value.number = field[i].count;
value.id = field[i].id;
if(RefineResultsUtils.includeValue(value)){
filter.values.push(value);
}
}
filters.push(filter);
}
@ -43,4 +45,18 @@ export class RefineResultsUtils {
}
return true;
}
private static removePartAfterCharacters(field, characters):string {
if( field.name.indexOf(characters) !=-1){
return field.name.split(characters)[0];
}
return field.name;
}
public static inParenthesisThePartAfterCharacters(field, characters):string {
if( field.name.indexOf(characters) !=-1){
return field.name.split(characters)[0]+" ("+field.name.split(characters)[1]+")";
}
return field.name;
}
}

View File

@ -148,7 +148,7 @@ export class FetchProjects{
this.funders = [];
for(var i = 0; i < this.filters.length; i++){
console.log("this.filters[i].filterId:"+this.filters[i].filterId);
if(this.filters[i].filterId == "funderid"){
if(this.filters[i].filterId == "funder"){
this.funders = (this.filters[i].values);
}

View File

@ -4,15 +4,15 @@ export class SearchFields {
//Used for datasets and publications
//In case Datasets should display different fields, use seperate tables for fields
public RESULT_REFINE_FIELDS = [
"relfunderid",
"relfunder",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"relproject","resultacceptanceyear",
"resultbestlicense", "instancetypename", "resultlanguagename", "community","resulthostingdatasource"];
public RESULT_ADVANCED_FIELDS:string[] = ["q","resulttitle","relperson","resultpublisher","instancetypename",
"resultlanguagename", "community","relprojectid", "relfunderid",
"resultlanguagename", "community","relprojectid", "relfunder",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"resultdateofacceptance","resultbestlicense","pid","resulthostingdatasourceid","collectedfromdatasourceid"];
"resultdateofacceptance","resultbestlicense","pid","resulthostingdatasourceid","collectedfromdatasourceid", "relorganizationid"];
public RESULT_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["resulttitle"]:{name:"Title", type:"keyword", param:"title", equalityOperator: "="},
@ -28,7 +28,7 @@ export class SearchFields {
["community"]:{name:"Community", type:"refine", param:"community", equalityOperator: " exact "},
["relproject"]:{name:"Project", type:"refine", param:"project", equalityOperator: " exact "},
["relprojectid"]:{name:"Project", type:"entity", param:"project", equalityOperator: " exact "},
["relfunderid"]:{name:"Funder", type:"refine", param:"funder", equalityOperator: " exact "},
["relfunder"]:{name:"Funder", type:"refine", param:"funder", equalityOperator: " exact "},
["relfundinglevel0_id"]:{name:"Funding Stream", type:"refine", param:"funderlv0", equalityOperator: " exact "},
["relfundinglevel1_id"]:{name:"Funding Substream level 1", type:"refine", param:"funderlv1", equalityOperator: " exact "},
["relfundinglevel2_id"]:{name:"Funding Substream level 2", type:"refine", param:"funderlv2", equalityOperator: " exact "},
@ -37,15 +37,16 @@ export class SearchFields {
["resultbestlicense"]:{name:"Access Mode", type:"vocabulary", param:"access", equalityOperator: " exact "},
// ["resultbestlicenseid"]:{name:"Access Mode", type:"refine", param:"access", equalityOperator: " exact "},
["collectedfrom"]:{name:"Datasource", type:"refine", param:"datasource", equalityOperator: " exact "},
["relorganizationid"]:{name:"Organization", type:"entity", param:"organization", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Data Provider", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
//PROJECT
public PROJECT_REFINE_FIELDS:string[] = ["funderid","fundinglevel0_id","fundinglevel1_id",
public PROJECT_REFINE_FIELDS:string[] = ["funder","fundinglevel0_id","fundinglevel1_id",
"fundinglevel2_id","projectstartyear","projectendyear","projectecsc39"];
public PROJECT_ADVANCED_FIELDS:string[] = ["q","projectacronym","projecttitle","projectkeywords",
"funderid", "fundinglevel0_id","fundinglevel1_id", "fundinglevel2_id",
"funder", "fundinglevel0_id","fundinglevel1_id", "fundinglevel2_id",
"projectstartdate","projectenddate","projectecsc39",
"projectcode_nt","relorganizationid", "collectedfromdatasourceid"];
public PROJECT_FIELDS: { [key:string]:FieldDetails}={
@ -54,7 +55,7 @@ export class SearchFields {
["projecttitle"]:{name:"Title", type:"keyword", param:"title", equalityOperator: "="},
["projectkeywords"]:{name:"Keywords", type:"keyword", param:"keywords", equalityOperator: "="},
["funderid"]:{name:"Funder", type:"refine", param:"funder", equalityOperator: " exact "},
["funder"]:{name:"Funder", type:"refine", param:"funder", equalityOperator: " exact "},
["fundinglevel0_id"]:{name:"Funding Stream", type:"refine", param:"funderlv0", equalityOperator: " exact "},
["fundinglevel1_id"]:{name:"Funding Substream level 1", type:"refine", param:"funderlv1", equalityOperator: " exact "},
["fundinglevel2_id"]:{name:"Funding Substream level 2", type:"refine", param:"funderlv2", equalityOperator: " exact "},
@ -127,8 +128,8 @@ export class SearchFields {
public HIDDEN_FIELDS:string[] = ["fundinglevel0_id","fundinglevel1_id","fundinglevel2_id",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id"];
public DEPENDENT_FIELDS: { [key:string]:string } = {["fundinglevel0_id"]:"funderid",
["fundinglevel1_id"]:"fundinglevel0_id", ["fundinglevel2_id"]:"fundinglevel1_id", ["relfundinglevel0_id"]:"relfunderid",
public DEPENDENT_FIELDS: { [key:string]:string } = {["fundinglevel0_id"]:"funder",
["fundinglevel1_id"]:"fundinglevel0_id", ["fundinglevel2_id"]:"fundinglevel1_id", ["relfundinglevel0_id"]:"relfunder",
["relfundinglevel1_id"]:"relfundinglevel0_id", ["relfundinglevel2_id"]:"relfundinglevel1_id"};

View File

@ -152,12 +152,12 @@ width: 20%;
white-space: nowrap;
}
.browseFilters .filterItem span div {
min-width: 45px;
/*min-width: 45px;*/
}
.filterItem span div {
overflow: hidden;
text-overflow: ellipsis;
min-width: 81px;
/*min-width: 81px;*/
}
.browseFilters{
@ -211,9 +211,9 @@ max-height:265px;
width: 20px;
}
.uk-tab{
/*.uk-tab{
border-bottom: 1px #cbcbcb solid;
}
}*/
.label-underCuration{
background: #fef5d2 !important;
}
@ -243,7 +243,26 @@ max-height:265px;
color: #f0506e;
}
.uk-tab {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
margin-left: -20px;
padding: 0;
list-style: none;
position: relative;
}
.uk-tab::before {
content: "";
position: absolute;
bottom: 0;
left: 20px;
right: 0;
border-bottom: 1px solid #e5e5e5;
}
/*
li span {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 KiB