add new css template | add nav, bottom, aside bar for main app | add loading message in search pages

git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-portal/trunk@44976 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
argiro.kokogiannaki 2016-12-15 10:40:45 +00:00
parent c234eceae4
commit c52574693f
27 changed files with 783 additions and 139 deletions

View File

@ -25,13 +25,39 @@ export class XLargeDirective {
styles: [`
`],
template: `
<div>
<navbar></navbar>
<login></login>
<main>
<router-outlet></router-outlet>
</main>
</div>`
<navbar></navbar>
<div id="tm-top" class="tm-top uk-section uk-section-default uk-padding-remove-vertical">
<div id="tm-main" class="tm-main uk-section uk-section-default" uk-height-viewport="mode: expand">
<div class="uk-container">
<div class="uk-grid" uk-grid>
<div class="uk-width-expand@m">
<main>
<router-outlet></router-outlet>
</main>
</div>
<!-- Sidebar -->
<aside id="tm-sidebar" class="tm-sidebar uk-width-1-4@m">
<div class="uk-child-width-1-1" uk-grid>
<div class="uk-width-1-4@m">
something in sidebar
<login></login>
</div>
</div>
</aside>
<!-- end of sidebar -->
</div>
</div>
</div>
<bottom></bottom>
`
})
export class AppComponent {
title = 'ftw';

View File

@ -33,8 +33,8 @@ import {Dates, DOI} from '../../../utils/string-utils.class';
<div *ngIf="showReport" class="alert alert-info" role="alert" >
<span>{{all}} rows found in file.</span>
<span>{{found}} results fetched from CrossRef.</span>
<span *ngIf ="duplicate > 0" [title] = "'Duplicate DOIs: '+ duplicateIds.join()">"{{duplicate}} DOIs were duplicates. </span>
<span *ngIf = "notFound > 0" [title] = "'Not found DOIs: '+ notFoundIds.join()" >{{notFound}} DOIs not found in crossref. </span>
<span *ngIf ="duplicate > 0" [title] = "'Duplicate DOIs: '+ duplicateIds.join()">{{duplicate}} DOIs were duplicates.</span>
<span *ngIf = "notFound > 0" [title] = "'Not found DOIs: '+ notFoundIds.join()" >{{notFound}} DOIs not found in crossref. ({{notFoundIds.join()}}) </span>
<span *ngIf = "all == 0 || found == 0" > Please make sure you are using the right format for he csv file... </span>
</div>

View File

@ -235,17 +235,17 @@ private errorsInClaimsInsertion(insertedIds, errorInClaims){
private createContextClaim(result:any, context:any, user:any){
var claim = { claimedBy : user, sourceId : context.concept.id, sourceType : "context", sourceCollectedFrom:"openaire", sourceAccessRights:"OPEN", sourceEmbargoEndDate:"no", targetId : result.id , targetType : result.type, targetCollectedFrom: result.source, targetAccessRights:result.accessRights, targetEmbargoEndDate:result.embargoEndDate};
var claim = { claimedBy : user, sourceId : context.concept.id, sourceType : "context", sourceCollectedFrom:"openaire", sourceAccessRights:"OPEN", sourceEmbargoEndDate:"no", targetId : result.id , targetType : result.type, targetCollectedFrom: result.source, targetAccessRights:result.accessRights, targetEmbargoEndDate: (result.embargoEndDate == null?"":result.embargoEndDate)};
return claim;
}
private createProjectClaim(result:any, project:any, user:any){
//project.projectId
// var dummyID = "dummyID";
var claim = { claimedBy : user, sourceId : project.projectId, sourceType : "project", sourceCollectedFrom:"openaire", sourceAccessRights:"OPEN", sourceEmbargoEndDate:"", targetId : result.id , targetType : result.type, targetCollectedFrom: result.source, targetAccessRights:result.accessRights, targetEmbargoEndDate:result.embargoEndDate};
var claim = { claimedBy : user, sourceId : project.projectId, sourceType : "project", sourceCollectedFrom:"openaire", sourceAccessRights:"OPEN", sourceEmbargoEndDate:"", targetId : result.id , targetType : result.type, targetCollectedFrom: result.source, targetAccessRights:result.accessRights, targetEmbargoEndDate: (result.embargoEndDate == null?"":result.embargoEndDate)};
return claim;
}
private createResultClaim(inlineResult:any, result:any, user:any){
var claim = { claimedBy : user, sourceId : result.id, sourceType : result.type, sourceCollectedFrom: result.source, sourceAccessRights: result.accessRights, sourceEmbargoEndDate: result.embargoEndDate, targetId : inlineResult.id , targetType : inlineResult.type, targetCollectedFrom: inlineResult.source, targetAccessRights: inlineResult.accessRights, targetEmbargoEndDate: inlineResult.embargoEndDate};
var claim = { claimedBy : user, sourceId : result.id, sourceType : result.type, sourceCollectedFrom: result.source, sourceAccessRights: result.accessRights, sourceEmbargoEndDate: result.embargoEndDate, targetId : inlineResult.id , targetType : inlineResult.type, targetCollectedFrom: inlineResult.source, targetAccessRights: inlineResult.accessRights, targetEmbargoEndDate: (inlineResult.embargoEndDate == null?"":inlineResult.embargoEndDate)};
return claim;
}

View File

@ -25,34 +25,12 @@ import {Location} from '@angular/common';
})
export class HomeComponent {
private start ;private end ;
constructor ( private _router: Router, private location: Location) {
this.start = new Date().getTime();
}
ngOnInit() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngOnInit:Execution time: ' + time);
}
ngAfterContentInit() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterContentInit:Execution time: ' + time);
}
ngAfterViewChecked() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterViewChecked: Execution time: ' + time);
}
searchTerm(term: string) {
window.location.href="/search/find?keyword="+term;

View File

@ -13,10 +13,8 @@ import{TabsComponent} from './tabs.component';
})
export class DataProviderComponent {
private start ;private end ;
constructor (private _dataproviderService: DataProviderService, private route: ActivatedRoute) {
this.start = new Date().getTime();
constructor (private _dataproviderService: DataProviderService, private route: ActivatedRoute) {
}
ngOnInit() {
this.sub = this.route.queryParams.subscribe(data => {
@ -27,25 +25,12 @@ export class DataProviderComponent {
}else{
console.info("Datasource id not found");
}
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngOnInit:Execution time: ' + time);
});
}
ngAfterContentInit() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterContentInit:Execution time: ' + time);
}
ngAfterViewChecked() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterViewChecked: Execution time: ' + time);
}
ngOnDestroy() {
this.sub.unsubscribe();

View File

@ -29,7 +29,7 @@ import {Component, Input} from '@angular/core';
export class OrganizationsTabComponent {
@Input() organizations: {"name": string, "url": string}[];
@Input() organizations: {"name": string, "url": string}[] ;
constructor () {}

View File

@ -134,7 +134,7 @@
</div>
<div id="metricsTab" class="tab-pane fade panel-body">
<div class="well">
<b>Views: </b>{{metrics}}
<b>Views: </b>{{metrics}}
</div>
</div>
</div>

View File

@ -21,10 +21,8 @@ export class PublicationComponent {
public showAllFundedBy: boolean = false;
public showAllPublishedIn: boolean = false;
public start ;public end ;
constructor (private _publicationService: PublicationService, private route: ActivatedRoute) {
this.start = new Date().getTime();
}
constructor (private _publicationService: PublicationService, private route: ActivatedRoute) {
}
ngOnInit() {
this.sub = this.route.queryParams.subscribe(data => {
this.articleId = data['articleId'];
@ -34,26 +32,14 @@ export class PublicationComponent {
}else{
console.info("Article id not found");
}
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngOnInit:Execution time: ' + time);
});
}
ngAfterContentInit() {
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterContentInit:Execution time: ' + time);
}
ngAfterViewChecked() {
// console.info("indentifiers:"+(this.publicationInfo != undefined&& this.publicationInfo.identifiers!= undefined)?this.publicationInfo.identifiers.size:"-");
this.end = new Date().getTime();
var time = this.end - this.start;
console.log('ngAfterViewChecked: Execution time: ' + time);
}
ngOnDestroy() {
this.sub.unsubscribe();

View File

@ -80,7 +80,8 @@ export class SearchCompatibleDataprovidersComponent {
this.subResults.unsubscribe();
} }
private _getResults(parameters:string,refine:boolean, page: number, size: number){
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchDataprovidersService.searchCompatibleDataproviders(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, []).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -81,6 +81,8 @@ export class SearchEntityRegistriesComponent {
this.subResults.unsubscribe();
} }
private _getResults(parameters:string,refine:boolean, page: number, size: number){
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchDataprovidersService.searchEntityRegistries(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, []).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -216,6 +216,8 @@ public getResultsForDeposit(id:string, type:string, page: number, size: number)
if(!refine && !this.searchPage){
this.searchPage = new SearchPageComponent(this._location);
}
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchDataprovidersService.searchDataproviders(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -165,6 +165,8 @@ private _getResults(parameters:string,refine:boolean, page: number, size: number
if(!refine && !this.searchPage){
this.searchPage = new SearchPageComponent(this._location);
}
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchDatasetsService.searchDatasets(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -79,6 +79,8 @@ export class SearchOrganizationsComponent {
if(!refine && !this.searchPage){
this.searchPage = new SearchPageComponent(this._location);
}
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchOrganizationsService.searchOrganizations(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -152,7 +152,8 @@ public getResults(keyword:string,refine:boolean, page: number, size: number){
this._getResults(parameters,refine,page,this.searchUtils.size);
}
private _getResults(parameters:string,refine:boolean, page: number, size: number){
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this._searchPeopleService.searchPeople(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -84,6 +84,8 @@ export class SearchProjectsComponent {
if(!refine && !this.searchPage){
this.searchPage = new SearchPageComponent(this._location);
}
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchProjectsService.searchProjects(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -194,6 +194,8 @@ private _getResults(parameters:string,refine:boolean, page: number, size: number
if(!refine && !this.searchPage){
this.searchPage = new SearchPageComponent(this._location);
}
var errorCodes:ErrorCodes = new ErrorCodes();
this.searchUtils.status = errorCodes.LOADING;
this.subResults = this._searchPublicationsService.searchPublications(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
data => {
this.searchUtils.totalResults = data[0];

View File

@ -36,7 +36,7 @@ export class SearchPublicationsService {
return this.http.get(url)
.map(res => <any> res.json())
.do(res => console.info(res))
// .do(res => console.info(res))
.do(res => {
this._cache.set(key, res);
})

View File

@ -0,0 +1,88 @@
import { Component } from '@angular/core';
import 'rxjs/Rx';
@Component({
selector: 'bottom',
template: `
<div id="tm-bottom" class="tm-bottom uk-section uk-section-primary">
<div class="uk-container uk-container-expand">
<div class="uk-child-width-expand@m uk-grid-divider uk-grid-match" uk-grid>
<div class="uk-width-1-5@m">
<div class="uk-card uk-card-body uk-uk-panel menu-line uk-width-small" id="module-113">
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-side uk-nav-accordion" uk-nav>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/news-events/">News</a></li>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/events">Events</a></li>
<li><a href="https://blogs.openaire.eu/" target="_blank">Blog</a></li>
</ul>
</div>
</div>
<div class="uk-width-1-5@m">
<div class="uk-card uk-card-body uk-uk-panel menu-line uk-width-small" id="module-112">
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-side uk-nav-accordion" uk-nav>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/project-factsheets">About</a></li>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/project-partners/">Partners</a></li>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/contact-noads">NOADs</a></li>
</ul>
</div>
</div>
<div class="uk-width-1-5@m">
<div class="uk-card uk-card-body uk-uk-panel menu-line uk-width-small" id="module-114">
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-side uk-nav-accordion" uk-nav>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/faq">FAQ</a></li>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/support/helpdesk">Helpdesk</a></li>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/contact-us">Contact us</a></li>
</ul>
</div>
</div>
<div class="uk-width-1-5@m">
<div class="uk-card uk-card-body uk-uk-panel menu-line uk-width-small" id="module-115">
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-side uk-nav-accordion" uk-nav>
<li><a href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/public-documents">Documents</a></li>
<li><a href="https://guidelines.openaire.eu/wiki/Main_Page" target="_blank">Guidelines</a></li>
<li><a href="http://api.openaire.eu" target="_blank">APIs</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="uk-section uk-section-default">
<div class="uk-container">
<div class="uk-grid-collapse" uk-grid>
<div class="uk-width-1-1@m">
<div class="uk-margin-small uk-margin-remove-top">
<div class="uk-child-width-auto uk-flex-inline uk-grid-small" uk-grid>
<div>
<a uk-icon="icon: facebook" href="http://www.facebook.com/groups/openaire/" target="_blank" class="uk-icon-button"></a>
</div>
<div>
<a uk-icon="icon: twitter" href="http://www.twitter.com/OpenAIRE_eu" target="_blank" class="uk-icon-button"></a>
</div>
<div>
<a uk-icon="icon: linkedin" href="http://www.linkedin.com/groups/OpenAIRE-3893548" target="_blank" class="uk-icon-button"></a>
</div>
<div>
<a uk-icon="icon: social" href="http://www.slideshare.net/OpenAIRE_eu" target="_blank" class="uk-icon-button"></a>
</div>
<div>
<a uk-icon="icon: vimeo" href="http://vimeo.com/openaire" target="_blank" class="uk-icon-button"></a>
</div>
</div>
</div>
<div class="uk-margin-remove-top uk-margin-remove-bottom uk-text-left">
<img src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/?hash=36b3ee0eb00bbe4eb81727501e4e2fb8&amp;p=theme%2Fimage&amp;src=aW1hZ2VzL0VDX2xvZ29fYmx1ZV9tb25vX2hvcml6b250YWwucG5nP3RodW1ibmFpbD0xMDAlMkMzMCZzaXplcz04MCUyNSUyQzIwMCUyNQ%3D%3D&amp;option=com_ajax&amp;style=26" srcset="http://scoobydoo.di.uoa.gr:8083/joomlaNew/?hash=05230339e57360ccf3930f7fe2db8209&amp;p=theme%2Fimage&amp;src=aW1hZ2VzL0VDX2xvZ29fYmx1ZV9tb25vX2hvcml6b250YWwucG5nP3RodW1ibmFpbD04MCUyQzI0&amp;option=com_ajax&amp;style=26 80w, /joomlaNew/?hash=d70cbf90c0284dd70817456c2b07d40a&amp;p=theme%2Fimage&amp;src=aW1hZ2VzL0VDX2xvZ29fYmx1ZV9tb25vX2hvcml6b250YWwucG5nP3RodW1ibmFpbD0yMDAlMkM2MA%3D%3D&amp;option=com_ajax&amp;style=26 200w, /joomlaNew/?hash=36b3ee0eb00bbe4eb81727501e4e2fb8&amp;p=theme%2Fimage&amp;src=aW1hZ2VzL0VDX2xvZ29fYmx1ZV9tb25vX2hvcml6b250YWwucG5nP3RodW1ibmFpbD0xMDAlMkMzMCZzaXplcz04MCUyNSUyQzIwMCUyNQ%3D%3D&amp;option=com_ajax&amp;style=26 100w" sizes="(min-width: 100px) 100px, 100vw" alt="European Commission">
</div>
<div class="uk-margin">
<a href="#" uk-totop uk-scroll></a>
</div>
</div>
</div>
</div>
</div>
`
})
export class BottomComponent {
}

View File

@ -6,6 +6,26 @@ import {User} from '../utils/entities/user';
@Component({
selector: 'login',
template: `
<form class="uk-form uk-width-medium-1-3">
<fieldset>
<legend>Legend</legend>
<div class="uk-form-row">
<input placeholder="Text input" type="text">
</div>
<div class="uk-form-row">
<input placeholder="Password input" type="password">
</div>
<div class="uk-form-row">
<button class="uk-button">Login</button>
</div>
</fieldset>
</form>
<div class="uk-alert uk-alert-success"> ... </div>
<div class="uk-alert uk-alert-warning">...</div>
<div class="uk-alert uk-alert-danger">...</div>
<div class="container-fluid">
<div *ngIf="!loggedIn">
<div *ngIf="errorMessage.length > 0" class="alert alert-danger" role="alert">

View File

@ -4,11 +4,204 @@ import 'rxjs/Rx';
@Component({
selector: 'navbar',
template: `
<div>
<div class="tm-header-mobile uk-hidden@m">
<nav class="uk-navbar-container uk-navbar" uk-navbar="">
<div class="uk-navbar-left">
<a class="uk-navbar-toggle" href="#tm-mobile" uk-toggle="">
<div uk-navbar-toggle-icon="" class="uk-navbar-toggle-icon uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewbox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20y%3D%229%22%20width%3D%2220%22%20height%3D%222%22%3E%3C%2Frect%3E%0A%20%20%20%20%3Crect%20y%3D%223%22%20width%3D%2220%22%20height%3D%222%22%3E%3C%2Frect%3E%0A%20%20%20%20%3Crect%20y%3D%2215%22%20width%3D%2220%22%20height%3D%222%22%3E%3C%2Frect%3E%0A%3C%2Fsvg%3E" ratio="1">
<rect y="9" width="20" height="2"/>
<rect y="3" width="20" height="2"/>
<rect y="15" width="20" height="2"/>
</svg>
</div>
<span class="uk-margin-small-left">Menu</span>
</a>
</div>
<div class="uk-navbar-center">
<a class="uk-navbar-item uk-logo" href="/">
<img src="/joomlaNew/images/OpenAIRE_logo_image.png" alt="OpenAIRE SUPPORT" class="uk-responsive-height"> </a>
</div>
</nav>
<div id="tm-mobile" uk-offcanvas="" mode="reveal" overlay="" class="uk-offcanvas">
<div class="uk-offcanvas-bar">
<div class="uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
<div>
<div class="uk-panel" id="module-0">
<form id="search-0" action="/joomlaNew/" method="post" role="search" class="uk-search uk-search-default">
<span uk-search-icon="" class="uk-search-icon uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewbox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.1%22%20cx%3D%229%22%20cy%3D%229%22%20r%3D%227%22%3E%3C%2Fcircle%3E%0A%20%20%20%20%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.1%22%20d%3D%22M14%2C14%20L18%2C18%20L14%2C14%20Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E" ratio="1">
<circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"/>
<path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"/>
</svg>
</span>
<input name="searchword" placeholder="Search" class="uk-search-input" type="search">
<input name="task" value="search" type="hidden">
<input name="option" value="com_search" type="hidden">
<input name="Itemid" value="1725" type="hidden">
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="tm-toolbar uk-visible@m">
<div class="uk-container uk-flex uk-flex-middle uk-container-expand">
<div class="uk-margin-auto-left">
<div class="uk-grid-medium uk-child-width-auto uk-flex-middle uk-grid uk-grid-stack" uk-grid="margin: uk-margin-small-top">
<div class="uk-first-column">
<div class="uk-panel" id="module-351">
<ul class="uk-subnav uk-subnav-line">
<li><a href="/">Support</a></li>
<li><a href="http://www.cnn.com">Find &amp; Share</a></li>
<li><a href="http://www.cnn.com">Join</a></li>
<li><a href="http://www.cnn.com">Connect</a></li>
<li><a href="http://www.cnn.com">Monitor</a></li>
<li><a href="http://www.cnn.com">Develop</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="tm-header uk-visible@m">
<div class="uk-navbar-container" uk-sticky="{&quot;media&quot;:768,&quot;top&quot;:1,&quot;clsActive&quot;:&quot;uk-active uk-navbar-sticky&quot;}" style="">
<div class="uk-container ">
<nav uk-navbar="{&quot;align&quot;:&quot;left&quot;}" class="uk-navbar">
<div class="uk-navbar-left">
<a href="/" class="uk-logo uk-navbar-item">
<img src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/images/OpenAIRE_logo_image.png" alt="OpenAIRE SEARCH" class="uk-responsive-height"></a>
</div>
<div class="uk-navbar-right">
<ul class="uk-navbar-nav">
<li class="uk-active"><a href="/"><img class="uk-responsive-height uk-margin-small-right" src="/joomlaNew/images/home.png" alt="Home"></a></li>
<li class="uk-parent">
<a href="#">Search</a>
<div class="uk-navbar-dropdown uk-navbar-dropdown-width-2 uk-navbar-dropdown-bottom-left" >
<div class="uk-navbar-dropdown-grid uk-child-width-1-2 uk-grid uk-grid-stack" uk-grid="">
<div class="uk-first-column">
<ul class="uk-nav uk-navbar-dropdown-nav">
<li class="uk-parent"><a href="/search/find">Search</a>
<ul class="uk-nav-sub">
<li><a href="/search/find/publications">Publications</a></li>
<li><a href="/search/find/datasets">Datasets</a></li>
<li><a href="/search/find/projects">Projects</a></li>
<li><a href="/search/find/dataproviders">Data Providers</a></li>
<li><a href="/search/find/organizations">Organizations</a></li>
<li><a href="/search/find/people">People</a></li>
</ul>
</li>
<li class="uk-parent"><a href="/search/find">Repositories</a>
<ul class="uk-nav-sub">
<li><a href="/search/data-providers">Compatible Data providers</a></li>
<li><a href="/search/entity-registries">Entity Registries</a></li>
</ul>
</li>
</ul>
</div>
<div>
<ul class="uk-nav uk-navbar-dropdown-nav">
<li class="uk-parent"><a href="/search/find">Advanced Search</a>
<ul class="uk-nav-sub">
<li><a href="/search/advanced/publications">Advanced Search Publications</a></li>
<li><a href="/search/advanced/datasets">Advanced Search Research Data</a></li>
<li><a href="/search/advanced/projects">Advanced Search Projects</a></li>
<li><a href="/search/advanced/dataproviders">Advanced Search Data Providers</a></li>
<li><a href="/search/advanced/organizations">Advanced Search Organizations</a></li>
<li><a href="/search/advanced/people">Advanced Search People</a></li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</li>
<li class="uk-parent">
<a href="#">Deposit</a>
<div class="uk-navbar-dropdown">
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
<div>
<ul class="uk-nav uk-navbar-dropdown-nav">
<li><a href="/deposit-publications">Deposit Publications</a></li>
<li><a href="/deposit-datasets">Deposit Research Data</a></li>
</ul>
</div>
</div>
</div>
</li>
<li class="uk-parent">
<a href="#">Claiming</a>
<div class="uk-navbar-dropdown">
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
<div>
<ul class="uk-nav uk-navbar-dropdown-nav">
<li><a href="/claims">Claims Admin</a></li>
<li><a href="/myclaims">My Claims</a></li>
<li><a href="/linking">Linking</a></li>
<li><a href="/bulk-linking">Bulk Linking</a></li>
</ul>
</div>
</div>
</div>
</li>
<li class="uk-parent">
<a href="#">Landing</a>
<div class="uk-navbar-dropdown">
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
<div>
<ul class="uk-nav uk-navbar-dropdown-nav">
<li><a href = "search/publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication </a></li>
<li><a href = "search/dataset?datasetId=datacite____::430ac1c41b7f99b7b543ef737dc41a74" >Dataset </a></li>
<li><a href = "search/project?projectId=corda_______::2c37878a0cede85dbbd1081bb9b4a2f8" >Project </a></li>
<li><a href = "search/person?personId=datacite____::9da3a037961b36a634fcd40ab0bf6535" >Person </a></li>
<li><a href = "search/organization?organizationId=dedup_wf_001::f686277c34bf457bbdf19e03589b5e81" >Organization </a></li>
<li><a href = "search/dataprovider?datasourceId=opendoar____::798ed7d4ee7138d49b8828958048130a" >Data Provider </a></li>
</ul>
</div>
</div>
</div>
</li>
</ul>
<!--div class="uk-navbar-item" id="module-0">
<a href="#search-0-modal" uk-search-icon="" uk-toggle="" class="uk-search-icon uk-icon">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewbox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.1%22%20cx%3D%229%22%20cy%3D%229%22%20r%3D%227%22%3E%3C%2Fcircle%3E%0A%20%20%20%20%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.1%22%20d%3D%22M14%2C14%20L18%2C18%20L14%2C14%20Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E" ratio="1">
<circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"/>
<path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"/>
</svg>
</a>
</div-->
</div>
</nav>
</div>
</div>
<div class="uk-sticky-placeholder" style="height: 80px; margin: 0px;" hidden="hidden"></div>
</div>
<!--div>
<nav class="navbar navbar-default" id="top">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
@ -18,8 +211,7 @@ import 'rxjs/Rx';
<a class="navbar-brand" href="#">OpenAire</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Search <span class=""></span></a>
@ -60,7 +252,7 @@ import 'rxjs/Rx';
</ul>
</li>
<li><a href = "search/publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication </a></li>
<li><a href = "search/publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication </a></li>
<li><a href = "search/dataset?datasetId=datacite____::430ac1c41b7f99b7b543ef737dc41a74" >Dataset </a></li>
<li><a href = "search/project?projectId=corda_______::2c37878a0cede85dbbd1081bb9b4a2f8" >Project </a></li>
<li><a href = "search/person?personId=datacite____::9da3a037961b36a634fcd40ab0bf6535" >Person </a></li>
@ -68,12 +260,12 @@ import 'rxjs/Rx';
<li><a href = "search/dataprovider?datasourceId=opendoar____::798ed7d4ee7138d49b8828958048130a" >Data Provider </a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</div>
</div>
</nav>
</div>`
</div-->`
})
export class NavigationBarComponent {

View File

@ -5,6 +5,7 @@ import { FormsModule } from '@angular/forms';
import { RouterModule } from "@angular/router";
import {NavigationBarComponent} from './navigationBar.component';
import {BottomComponent} from './bottom.component';
import {LoginComponent} from './login.component';
@ -15,11 +16,13 @@ import {LoginComponent} from './login.component';
],
declarations: [
NavigationBarComponent,
BottomComponent,
LoginComponent
],
exports: [
NavigationBarComponent,
LoginComponent
NavigationBarComponent,
BottomComponent,
LoginComponent
]
})
export class SharedComponentsModule{ }

View File

@ -15,8 +15,10 @@ import {SearchFields} from '../utils/properties/searchFields';
@Component({
selector: 'test',
template: `
<i-frame [url]=url width="30%" height="250"></i-frame>
<div>Ready:{{ready}}</div>
<div *ngIf="ready">
<i-frame [url]=url width="30%" height="250"></i-frame>
</div>
<div style ="width:80%; height:250px;" >
<div>
@ -59,6 +61,15 @@ export class TestComponent {
public user:{password:string,email:string} = {password:"",email:""};
constructor(private _projectService: OpenaireProjectsService,private _searchProjectsService:SearchProjectsService,private _searchPubService:SearchPublicationsService,private _searchDataService:SearchDatasetsService, private _vocabulariesService: ISVocabulariesService) {
}
public ready:boolean = false;
ngAfterContentChecked(){
console.info("ngAfterContentChecked");
}
ngAfterViewChecked(){
this.ready=true;
console.info("ngAfterViewChecked");
}
ngOnInit() {
// this.lan = this._vocabulariesService.getLanguages();
// this.lan = this._vocabulariesService.getVocabularyFromService("dnet:languages.json");

View File

@ -40,12 +40,12 @@ export class OpenaireProperties {
// private searchAPIURL = "http://rudie.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2.0/api/";
// private static searchAPIURL = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/api/";
private static searchAPIURLLAst = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/api/"
// private static searchAPIURLLAst = "http://rudie.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/api/";
// private static searchAPIURLLAst = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT-new/rest/v2/api/";
private static searchAPIURLLAst = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT-new/rest/v2/api/";
private static searchResourcesAPIURL = "http://rudie.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/api/resources";
// private static searchResourcesAPIURL = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT-new/rest/v2/api/resources";
// private static searchResourcesAPIURL = "http://rudie.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/api/resources";
private static searchResourcesAPIURL = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT-new/rest/v2/api/resources";
//private static searchServiveURL = "http://astero.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/";
private static searchServiveURL = "http://scoobydoo.di.uoa.gr:8181/dnet-functionality-services-2.0.0-SNAPSHOT/";

View File

@ -19,17 +19,13 @@ export class SearchFields {
["pid"]:{name:"PID", type:"keyword", param:"pid", equalityOperator: " = "},
["resulthostingdatasourceid"]:{name:"Hosting Data Provider", type:"entity", param:"hostedBy", equalityOperator: " exact "},
["relpersonid"]:{name:"Person", type:"entity", param:"person", equalityOperator: " exact "},
["instancetypename"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["instancetypenameid"]:{name:"Type", type:"vocabulary", param:"type", equalityOperator: " exact "},
["resultlanguagename"]:{name:"Language", type:"refine", param:"lang", equalityOperator: " exact "},
["resultlanguageid"]:{name:"Language", type:"vocabulary", param:"lang", equalityOperator: " exact "},
["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 "},
["relfundinglevel0_id"]:{name:"Funding Stream", type:"refine", param:"funderlv0", equalityOperator: " exact "},
["relfundinglevel1_id"]:{name:"Funding Substream level 1", type:"refine", param:"funderlv1", equalityOperator: " exact "},

View File

@ -0,0 +1,164 @@
export class SearchFields {
//main Entities
//RESULTS
//Used for datasets and publications
//In case Datasets should display different fields, use seperate tables for fields
public RESULT_REFINE_FIELDS = ["instancetypename", "resultlanguagename", "community","relproject", "relfunder",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"resultacceptanceyear","resultbestlicense"];//,"collectedfrom"];
public RESULT_ADVANCED_FIELDS:string[] = ["q","resulttitle","relperson","resultpublisher","instancetypenameid",
"resultlanguageid", "community","relprojectid", "relfunder",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"resultacceptanceyear","resultbestlicenseid","pid","resulthostingdatasourceid","collectedfromdatasourceid","relpersonid"];
public RESULT_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["resulttitle"]:{name:"Title", type:"keyword", param:"title", equalityOperator: "="},
["relperson"]:{name:"Author", type:"keyword", param:"author", equalityOperator: "="},
["resultpublisher"]:{name:"Publisher", type:"keyword", param:"publisher", equalityOperator: "="},
["pid"]:{name:"PID", type:"keyword", param:"pid", equalityOperator: " = "},
["resulthostingdatasourceid"]:{name:"Hosting Data Provider", type:"entity", param:"hostedBy", equalityOperator: " exact "},
["relpersonid"]:{name:"Person", type:"entity", param:"person", equalityOperator: " exact "},
["instancetypename"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["instancetypenameid"]:{name:"Type", type:"vocabulary", param:"type", equalityOperator: " exact "},
["resultlanguagename"]:{name:"Language", type:"refine", param:"lang", equalityOperator: " exact "},
["resultlanguageid"]:{name:"Language", type:"vocabulary", param:"lang", equalityOperator: " exact "},
["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 "},
["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 "},
["resultacceptanceyear"]:{name:"Year", type:"year", param:"year", equalityOperator: " exact "},
["resultbestlicense"]:{name:"Access Mode", type:"refine", param:"access", equalityOperator: " exact "},
["resultbestlicenseid"]:{name:"Access Mode", type:"vocabulary", param:"access", equalityOperator: " exact "},
["collectedfrom"]:{name:"Datasource", type:"refine", param:"datasource", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
//PROJECT
public PROJECT_REFINE_FIELDS:string[] = ["funder","fundinglevel0_id","fundinglevel1_id",
"fundinglevel2_id","projectstartyear","projectendyear","projectecsc39"];
public PROJECT_ADVANCED_FIELDS:string[] = ["q","projectacronym","projecttitle","projectkeywords",
"funder", "fundinglevel0_id","fundinglevel1_id", "fundinglevel2_id",
"projectstartyear","projectendyear","projectecsc39",
"projectcode","relorganizationid", "collectedfromdatasourceid"];
public PROJECT_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["projectacronym"]:{name:"Acronym", type:"keyword", param:"acronym", equalityOperator: "="},
["projecttitle"]:{name:"Title", type:"keyword", param:"title", equalityOperator: "="},
["projectkeywords"]:{name:"Keywords", type:"keyword", param:"keywords", equalityOperator: "="},
["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 "},
["projectstartyear"]:{name:"Start Year", type:"year", param:"startyear", equalityOperator: " exact "},
["projectendyear"]:{name:"End Year", type:"year", param:"endyear", equalityOperator: " exact "},
["projectecsc39"]:{name:"Special Clause 39", type:"boolean", param:"sc39", equalityOperator: " exact "},
["projectcode"]:{name:"Project Code", type:"keyword", param:"code", equalityOperator: " exact "},
["relorganizationid"]:{name:"Organization", type:"entity", param:"organization", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
//DATAPROVIDERS
public DATASOURCE_REFINE_FIELDS:string[] = ["datasourcetypeuiname", "datasourceodlanguages", "datasourceodcontenttypes",
"datasourcecompatibilityname"];
public DATASOURCE_ADVANCED_FIELDS:string[] = ["q", "datasourceofficialname",
"datasourceenglishname","datasourceodsubjects", "datasourcetypeid","datasourceodlanguages",
"datasourceodcontenttypes", "datasourcecompatibilityid","relorganizationid", "collectedfromdatasourceid"];
public DATASOURCE_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["datasourceofficialname"]:{name:"English name", type:"keyword", param:"officialname", equalityOperator: "="},
["datasourceenglishname"]:{name:"Title", type:"keyword", param:"engname", equalityOperator: "="},
["datasourceodsubjects"]:{name:"Subject", type:"keyword", param:"subjects", equalityOperator: "="},
["datasourcetypeuiid"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["datasourcetypeuiname"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["datasourcetypeid"]:{name:"Type", type:"vocabulary", param:"type", equalityOperator: " exact "},
["datasourceodlanguages"]:{name:"Language", type:"vocabulary", param:"lang", equalityOperator: " exact "},
["datasourceodcontenttypes"]:{name:"Content", type:"refine", param:"content", equalityOperator: " exact "},
["datasourcecompatibilityid"]:{name:"Compatibility Level", type:"vocabulary", param:"compatibility", equalityOperator: " exact "},
["datasourcecompatibilityname"]:{name:"Compatibility Level", type:"refine", param:"compatibility", equalityOperator: " exact "},
["relorganizationid"]:{name:"Organization", type:"entity", param:"organization", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
public COMPATIBLE_DATAPROVIDER_FIELDS:string[] = ["datasourcetypeuiid","datasourcecompatibilityid"];
public ENTITY_REGISTRIES_FIELDS:string[] = ["datasourcetypeid","datasourcecompatibilityid"];
//ORGANIZATION
public ORGANIZATION_REFINE_FIELDS:string[] = ["organizationcountryname"]
public ORGANIZATION_ADVANCED_FIELDS:string[] = ["q",
"organizationlegalname","organizationlegalshortname","organizationcountryid"];
public ORGANIZATION_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["organizationlegalname"]:{name:"Legal Name", type:"keyword", param:"name", equalityOperator: "="},
["organizationlegalshortname"]:{name:"Legal Short Name", type:"keyword", param:"shortname", equalityOperator: "="},
["organizationcountryid"]:{name:"Country", type:"vocabulary", param:"country", equalityOperator: "="},
["organizationcountryname"]:{name:"Country", type:"refine", param:"country", equalityOperator: "="}
};
public ORGANIZATION_INDEX:string[] = ["organizationcountryname"]//,"organizationeclegalbody"];
public ADVANCED_SEARCH_ORGANIZATION_PARAM:string[] = ["q","contenttype","compatibility","country","type"];
public ORGANIZATION_INDEX_PARAM_MAP:{ [key:string]:string } = {["organizationlegalname"]:"contenttype", ["organizationlegalshortname"]:"type",
["organizationcountryname"]:"country"};//,["organizationeclegalbody"]:"type"};
public ORGANIZATION_FIELDS_MAP: { [key:string]:{ name:string, operator:string, type:string, indexField:string , equalityOperator:string}} ={
["q"]:{name:"All fields",operator:"op", type:"keyword", indexField:null, equalityOperator: "="},
["contenttype"]:{name:"Legal Name",operator:"cn", type:"keyword" , indexField:"organizationlegalname", equalityOperator: "="},
["compatibility"]:{name:"Legal Short Name",operator:"cm", type:"keyword", indexField:"organizationlegalshortname", equalityOperator: "="},
["country"]:{name:"Country",operator:"cu", type:"vocabulary", indexField:"organizationcountryname", equalityOperator: " exact "},
["type"]:{name:"Type",operator:"tp", type:"refine", indexField:"organizationeclegalbody", equalityOperator: " exact "},
};
//PERSON
public PERSON_REFINE_FIELDS:string[] = [];
public PERSON_ADVANCED_FIELDS:string[] = ["q","personsecondnames","personfirstname","personfullname"];
public PERSON_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["personsecondnames"]:{name:"Surname", type:"keyword", param:"surname", equalityOperator: "="},
["personfirstname"]:{name:"First Name",type:"keyword", param:"name", equalityOperator: "="},
["personfullname"]:{name:"Full name", type:"keyword", param:"fullname", equalityOperator: "="}
};
public HIDDEN_FIELDS:string[] = ["fundinglevel0_id","fundinglevel1_id","fundinglevel2_id",
"relfundinglevel0_id","relfundinglevel1_id,relfundinglevel2_id"];
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"};
public ADVANCED_SEARCH_OPERATORS:[{name:string, id:string}] = [{name:"AND",id:"and"},{name:"OR",id:"or"},{name:"NOT",id:"not"}];
constructor (){
}
getFieldName(fieldId:string,fieldType:string):string{
if(fieldType == "publication" || fieldType == "dataset"){
return this.RESULT_FIELDS[fieldId].name;
}else if(fieldType == "project"){
return this.PROJECT_FIELDS[fieldId].name;
}else if(fieldType == "organization"){
return this.ORGANIZATION_FIELDS[fieldId].name;
}else if(fieldType == "datasource"){
return this.DATASOURCE_FIELDS[fieldId].name;
}else{
return "UNDEFINED";
}
}
}
class FieldDetails{
name:string;
type:string;
param:string;
equalityOperator:string;
}

View File

@ -0,0 +1,164 @@
export class SearchFields {
//main Entities
//RESULTS
//Used for datasets and publications
//In case Datasets should display different fields, use seperate tables for fields
public RESULT_REFINE_FIELDS = ["instancetypename", "resultlanguagename", "community","relproject", "relfunderid",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"resultacceptanceyear","resultbestlicense"];//,"collectedfrom"];
public RESULT_ADVANCED_FIELDS:string[] = ["q","resulttitle","relperson","resultpublisher","instancetypenameid",
"resultlanguageid", "community","relprojectid", "relfunderid",
"relfundinglevel0_id","relfundinglevel1_id","relfundinglevel2_id",
"resultacceptanceyear","resultbestlicenseid","pid","resulthostingdatasourceid","collectedfromdatasourceid","relpersonid"];
public RESULT_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["resulttitle"]:{name:"Title", type:"keyword", param:"title", equalityOperator: "="},
["relperson"]:{name:"Author", type:"keyword", param:"author", equalityOperator: "="},
["resultpublisher"]:{name:"Publisher", type:"keyword", param:"publisher", equalityOperator: "="},
["pid"]:{name:"PID", type:"keyword", param:"pid", equalityOperator: " = "},
["resulthostingdatasourceid"]:{name:"Hosting Data Provider", type:"entity", param:"hostedBy", equalityOperator: " exact "},
["relpersonid"]:{name:"Person", type:"entity", param:"person", equalityOperator: " exact "},
["instancetypename"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["instancetypenameid"]:{name:"Type", type:"vocabulary", param:"type", equalityOperator: " exact "},
["resultlanguagename"]:{name:"Language", type:"refine", param:"lang", equalityOperator: " exact "},
["resultlanguageid"]:{name:"Language", type:"vocabulary", param:"lang", equalityOperator: " exact "},
["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 "},
["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 "},
["resultacceptanceyear"]:{name:"Year", type:"year", param:"year", equalityOperator: " exact "},
["resultbestlicense"]:{name:"Access Mode", type:"refine", param:"access", equalityOperator: " exact "},
["resultbestlicenseid"]:{name:"Access Mode", type:"vocabulary", param:"access", equalityOperator: " exact "},
["collectedfrom"]:{name:"Datasource", type:"refine", param:"datasource", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
//PROJECT
public PROJECT_REFINE_FIELDS:string[] = ["funderid","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",
"projectstartyear","projectendyear","projectecsc39",
"projectcode","relorganizationid", "collectedfromdatasourceid"];
public PROJECT_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["projectacronym"]:{name:"Acronym", type:"keyword", param:"acronym", equalityOperator: "="},
["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 "},
["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 "},
["projectstartyear"]:{name:"Start Year", type:"year", param:"startyear", equalityOperator: " exact "},
["projectendyear"]:{name:"End Year", type:"year", param:"endyear", equalityOperator: " exact "},
["projectecsc39"]:{name:"Special Clause 39", type:"boolean", param:"sc39", equalityOperator: " exact "},
["projectcode"]:{name:"Project Code", type:"keyword", param:"code", equalityOperator: " exact "},
["relorganizationid"]:{name:"Organization", type:"entity", param:"organization", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
//DATAPROVIDERS
public DATASOURCE_REFINE_FIELDS:string[] = ["datasourcetypeuiname", "datasourceodlanguages", "datasourceodcontenttypes",
"datasourcecompatibilityname"];
public DATASOURCE_ADVANCED_FIELDS:string[] = ["q", "datasourceofficialname",
"datasourceenglishname","datasourceodsubjects", "datasourcetypeid","datasourceodlanguages",
"datasourceodcontenttypes", "datasourcecompatibilityid","relorganizationid", "collectedfromdatasourceid"];
public DATASOURCE_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["datasourceofficialname"]:{name:"English name", type:"keyword", param:"officialname", equalityOperator: "="},
["datasourceenglishname"]:{name:"Title", type:"keyword", param:"engname", equalityOperator: "="},
["datasourceodsubjects"]:{name:"Subject", type:"keyword", param:"subjects", equalityOperator: "="},
["datasourcetypeuiid"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["datasourcetypeuiname"]:{name:"Type", type:"refine", param:"type", equalityOperator: " exact "},
["datasourcetypeid"]:{name:"Type", type:"vocabulary", param:"type", equalityOperator: " exact "},
["datasourceodlanguages"]:{name:"Language", type:"vocabulary", param:"lang", equalityOperator: " exact "},
["datasourceodcontenttypes"]:{name:"Content", type:"refine", param:"content", equalityOperator: " exact "},
["datasourcecompatibilityid"]:{name:"Compatibility Level", type:"vocabulary", param:"compatibility", equalityOperator: " exact "},
["datasourcecompatibilityname"]:{name:"Compatibility Level", type:"refine", param:"compatibility", equalityOperator: " exact "},
["relorganizationid"]:{name:"Organization", type:"entity", param:"organization", equalityOperator: " exact "},
["collectedfromdatasourceid"]:{name:"Collected from Datasource", type:"entity", param:"collectedFrom", equalityOperator: " exact "}
};
public COMPATIBLE_DATAPROVIDER_FIELDS:string[] = ["datasourcetypeuiid","datasourcecompatibilityid"];
public ENTITY_REGISTRIES_FIELDS:string[] = ["datasourcetypeid","datasourcecompatibilityid"];
//ORGANIZATION
public ORGANIZATION_REFINE_FIELDS:string[] = ["organizationcountryname"]
public ORGANIZATION_ADVANCED_FIELDS:string[] = ["q",
"organizationlegalname","organizationlegalshortname","organizationcountryid"];
public ORGANIZATION_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["organizationlegalname"]:{name:"Legal Name", type:"keyword", param:"name", equalityOperator: "="},
["organizationlegalshortname"]:{name:"Legal Short Name", type:"keyword", param:"shortname", equalityOperator: "="},
["organizationcountryid"]:{name:"Country", type:"vocabulary", param:"country", equalityOperator: "="},
["organizationcountryname"]:{name:"Country", type:"refine", param:"country", equalityOperator: "="}
};
public ORGANIZATION_INDEX:string[] = ["organizationcountryname"]//,"organizationeclegalbody"];
public ADVANCED_SEARCH_ORGANIZATION_PARAM:string[] = ["q","contenttype","compatibility","country","type"];
public ORGANIZATION_INDEX_PARAM_MAP:{ [key:string]:string } = {["organizationlegalname"]:"contenttype", ["organizationlegalshortname"]:"type",
["organizationcountryname"]:"country"};//,["organizationeclegalbody"]:"type"};
public ORGANIZATION_FIELDS_MAP: { [key:string]:{ name:string, operator:string, type:string, indexField:string , equalityOperator:string}} ={
["q"]:{name:"All fields",operator:"op", type:"keyword", indexField:null, equalityOperator: "="},
["contenttype"]:{name:"Legal Name",operator:"cn", type:"keyword" , indexField:"organizationlegalname", equalityOperator: "="},
["compatibility"]:{name:"Legal Short Name",operator:"cm", type:"keyword", indexField:"organizationlegalshortname", equalityOperator: "="},
["country"]:{name:"Country",operator:"cu", type:"vocabulary", indexField:"organizationcountryname", equalityOperator: " exact "},
["type"]:{name:"Type",operator:"tp", type:"refine", indexField:"organizationeclegalbody", equalityOperator: " exact "},
};
//PERSON
public PERSON_REFINE_FIELDS:string[] = [];
public PERSON_ADVANCED_FIELDS:string[] = ["q","personsecondnames","personfirstname","personfullname"];
public PERSON_FIELDS: { [key:string]:FieldDetails}={
["q"]:{name:"All fields", type:"keyword", param:"q", equalityOperator: "="},
["personsecondnames"]:{name:"Surname", type:"keyword", param:"surname", equalityOperator: "="},
["personfirstname"]:{name:"First Name",type:"keyword", param:"name", equalityOperator: "="},
["personfullname"]:{name:"Full name", type:"keyword", param:"fullname", equalityOperator: "="}
};
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",
["relfundinglevel1_id"]:"relfundinglevel0_id", ["relfundinglevel2_id"]:"relfundinglevel1_id"};
public ADVANCED_SEARCH_OPERATORS:[{name:string, id:string}] = [{name:"AND",id:"and"},{name:"OR",id:"or"},{name:"NOT",id:"not"}];
constructor (){
}
getFieldName(fieldId:string,fieldType:string):string{
if(fieldType == "publication" || fieldType == "dataset"){
return this.RESULT_FIELDS[fieldId].name;
}else if(fieldType == "project"){
return this.PROJECT_FIELDS[fieldId].name;
}else if(fieldType == "organization"){
return this.ORGANIZATION_FIELDS[fieldId].name;
}else if(fieldType == "datasource"){
return this.DATASOURCE_FIELDS[fieldId].name;
}else{
return "UNDEFINED";
}
}
}
class FieldDetails{
name:string;
type:string;
param:string;
equalityOperator:string;
}

View File

@ -1,48 +1,65 @@
<!doctype html>
<html>
<head>
<title>OpenAIRE</title>
<meta charset="UTF-8">
<meta name="description" content="Open Access Infrastructure for Europe ">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<!--script src="/node_modules/bootstrap/dist/js/bootstrap.min.js" ></script-->
<!--script src="node_modules/ng2-bootstrap/bundles/ng2-bootstrap.min.js"></script-->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<html lang="en-gb" dir="ltr" vocab="http://schema.org/">
<head>
<link href="http://scoobydoo.di.uoa.gr:3000" rel="canonical" />
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/templates/yootheme/vendor/yootheme/theme/platforms/joomla/assets/images/favicon.png">
<link rel="apple-touch-icon-precomposed" href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/templates/yootheme/vendor/yootheme/theme/platforms/joomla/assets/images/apple-touch-icon.png">
<base href="/" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="author" content="Super User" />
<meta name="description" content="open access infrastructure, research information, open data, scientific publication, scientific information system, European Commission, EC, FP7, ERC, Horizon 2020, H2020, linked data" />
<title>OpenAIRE</title>
<link href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/favicon.ico" rel="shortcut icon" type="image/vnd.microsoft.icon" />
<link href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/components/com_jevents/assets/css/jevcustom.css?3.4.5" rel="stylesheet" type="text/css" />
<link href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/templates/yootheme/css/theme.css" rel="stylesheet" type="text/css" id="theme-style-css" />
<link href="//fonts.googleapis.com/css?family=Josefin+Sans%7CRoboto%7COpen+Sans+Condensed%7CAdvent+Pro" rel="stylesheet" type="text/css" id="google-fonts-css" />
<link href="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/widgetkit/wk-styles-994eec94.css" rel="stylesheet" type="text/css" id="wk-styles-css" />
<style type="text/css">
#mailto2ce-modal-window-709581649 .modal-body{overflow-y:hidden;padding:3px}#mailto2ce-modal-window-709581649 iframe{border:0;max-height:400px}
</style>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/jui/js/jquery.min.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/jui/js/jquery-noconflict.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/jui/js/jquery-migrate.min.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/jui/js/bootstrap.min.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/modules/mod_news_pro_gk5/interface/scripts/engine.jquery.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/plugins/system/jcemediabox/js/jcemediabox.js?2ee2100a9127451a41de5a4c2c62e127" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/media/com_acymailing/js/acymailing_module.js?v=490" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/templates/yootheme/vendor/assets/uikit/js/uikit.min.js" type="text/javascript"></script>
<script src="http://scoobydoo.di.uoa.gr:8083/joomlaNew/templates/yootheme/js/theme.js" type="text/javascript"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" integrity="sha384-y3tfxAZXuh4HwSYylfB+J125MxIs6mR5FOHamPBG064zB+AFeWH94NdvaCBm8qnd" crossorigin="anonymous">
<!--link rel="stylesheet" href="bootstrap/dist/css/bootstrap.min.css"-->
<!-- Google sitename markup-->
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "WebSite",
"name" : "OpenAIRE",
"url" : "http://scoobydoo.di.uoa.gr:3000"
}
</script>
<!-- End of Google sitename markup-->
<!-- Google sitelinks search markup-->
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"url" : "http://scoobydoo.di.uoa.gr:3000",
"potentialAction": {
"@type": "SearchAction",
"target": "http://scoobydoo.di.uoa.gr:3000/search/find/?keyword={search_term_string}",
"query-input": "required name=search_term_string"
}
}
</script>
<!-- End of Google sitelinks search markup-->
</head>
<body class="">
<script async src="/main.bundle.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="icon" href="data:;base64,iVBORw0KGgo=">
<!-- Temporarily add here custom style -->
<style>
.custom-hidden-dropdown-menu {position:static !important;}
.searchFilterBox .values {overflow:auto; max-height:200px; }
.selected-filters-box {margin:5px; background-color:#F8F8F8; }
.search-form {margin:5px; }
.clickable { cursor:pointer; }
.OPEN {
background: rgba(0, 0, 0, 0) url("/assets/openAccess.png") no-repeat scroll right center;
padding-right: 18px;
}
.EMBARGO, .CLOSED, .RESTRICTED {
background: rgba(0, 0, 0, 0) url("/assets/closedAccess.png") no-repeat scroll right center;
padding-right: 18px;
}
</style>
<base href="/">
</head>
<body>
<app>
Loading Universal ...
</app>
<script async src="/main.bundle.js"></script>
</body>
<app>
Loading Universal ...
</app>
</body>
</html>