diff --git a/src/app/monitor/monitor-routing.module.ts b/src/app/monitor/monitor-routing.module.ts
index 6393522..758d752 100644
--- a/src/app/monitor/monitor-routing.module.ts
+++ b/src/app/monitor/monitor-routing.module.ts
@@ -7,7 +7,10 @@ import {MonitorComponent} from "./monitor.component";
@NgModule({
imports: [
RouterModule.forChild([
- { path: ':id', component: MonitorComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] }
+ { path: ':stakeholder', component: MonitorComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] },
+ { path: ':stakeholder/:topic', component: MonitorComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] },
+ { path: ':stakeholder/:topic/:category', component: MonitorComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] },
+ { path: ':stakeholder/:topic/:category/:subCategory', component: MonitorComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] }
])
]
})
diff --git a/src/app/monitor/monitor.component.html b/src/app/monitor/monitor.component.html
index bcf7580..27dbbec 100644
--- a/src/app/monitor/monitor.component.html
+++ b/src/app/monitor/monitor.component.html
@@ -3,9 +3,33 @@
name="OpenAIRE Monitor">
-
0"
- [texts]="pageContents['top']">
+
+
+
+
+
+
+ {{stakeholder.index_name}}
+ Monitor Dashboard
+
+
+
+
+
+
+
diff --git a/src/app/monitor/monitor.component.ts b/src/app/monitor/monitor.component.ts
index 9630b83..c72faff 100644
--- a/src/app/monitor/monitor.component.ts
+++ b/src/app/monitor/monitor.component.ts
@@ -1,10 +1,7 @@
import {Component} from '@angular/core';
-import {ActivatedRoute, Router} from '@angular/router';
+import {ActivatedRoute, Params, Router} from '@angular/router';
import {Meta, Title} from '@angular/platform-browser';
import {EnvProperties} from '../openaireLibrary/utils/properties/env-properties';
-import {CommunitiesService} from '../openaireLibrary/connect/communities/communities.service';
-import {SubscribeService} from '../openaireLibrary/utils/subscribe/subscribe.service';
-import {CommunityInfo} from '../openaireLibrary/connect/community/communityInfo';
import {PiwikService} from '../openaireLibrary/utils/piwik/piwik.service';
import {StringUtils} from '../openaireLibrary/utils/string-utils.class';
@@ -14,19 +11,23 @@ import {ErrorMessagesComponent} from '../openaireLibrary/utils/errorMessages.com
import {HelperService} from "../openaireLibrary/utils/helper/helper.service";
import {SEOService} from "../openaireLibrary/sharedComponents/SEO/SEO.service";
import {StakeholderService} from "../services/stakeholder.service";
-import {Stakeholder} from "../stakeholder";
+import {Category, Stakeholder, SubCategory, Topic} from "../utils/entities/stakeholder";
+import {MenuItem, RootMenuItem, SideMenuItem} from "../openaireLibrary/sharedComponents/menu";
@Component({
selector: 'monitor',
templateUrl: 'monitor.component.html',
})
-
export class MonitorComponent {
public piwiksub: any;
public pageContents = null;
public divContents = null;
public status: number;
public loading: boolean = true;
+ public activeTopic: Topic = null;
+ public activeCategory: Category = null;
+ public activeSubCategory: SubCategory = null;
+ public sideMenuItems: SideMenuItem[] = null;
public errorCodes: ErrorCodes;
public stakeholder: Stakeholder;
private errorMessages: ErrorMessagesComponent;
@@ -52,25 +53,31 @@ export class MonitorComponent {
this.route.params.subscribe( params => {
this.properties = data.envSpecific;
var url = data.envSpecific.baseLink + this._router.url;
- this.stakeholderService.getStakeholder(params['id']).subscribe(stakeholder => {
- this.stakeholder = stakeholder;
- this.seoService.createLinkForCanonicalURL(url, false);
- this._meta.updateTag({content: url}, "property='og:url'");
- var description = "Monitor | " + this.stakeholder.index_name;
- var title = "Monitor | " + this.stakeholder.index_shortName;
- this._meta.updateTag({content: description}, "name='description'");
- this._meta.updateTag({content: description}, "property='og:description'");
- this._meta.updateTag({content: title}, "property='og:title'");
- this._title.setTitle(title);
- if (this.properties.enablePiwikTrack && (typeof document !== 'undefined')) {
- this.piwiksub = this._piwikService.trackView(this.properties, title, this.properties.piwikSiteId).subscribe();
- }
- //this.getDivContents();
- this.getPageContents();
- }, error => {
- console.log(error);
- this._router.navigate(['']);
- })
+ if(!this.stakeholder || this.stakeholder.index_id !== params['stakeholder']) {
+ this.status = this.errorCodes.LOADING;
+ this.stakeholderService.getStakeholder(params['stakeholder']).subscribe(stakeholder => {
+ this.stakeholder = stakeholder;
+ this.seoService.createLinkForCanonicalURL(url, false);
+ this._meta.updateTag({content: url}, "property='og:url'");
+ var description = "Monitor Dashboard | " + this.stakeholder.index_name;
+ var title = "Monitor Dashboard | " + this.stakeholder.index_shortName;
+ this._meta.updateTag({content: description}, "name='description'");
+ this._meta.updateTag({content: description}, "property='og:description'");
+ this._meta.updateTag({content: title}, "property='og:title'");
+ this._title.setTitle(title);
+ if (this.properties.enablePiwikTrack && (typeof document !== 'undefined')) {
+ this.piwiksub = this._piwikService.trackView(this.properties, title, this.properties.piwikSiteId).subscribe();
+ }
+ //this.getDivContents();
+ this.getPageContents();
+ this.status = this.errorCodes.DONE;
+ this.setView(params);
+ }, error => {
+ this.navigateToError();
+ })
+ } else {
+ this.setView(params);
+ }
});
});
}
@@ -87,6 +94,74 @@ export class MonitorComponent {
})
}
+ private setView(params: Params) {
+ if(params && params['topic']) {
+ this.activeTopic = this.stakeholder.topics.filter(topic => topic.alias === decodeURIComponent(params['topic']))[0];
+ if(this.activeTopic) {
+ if(params['category']) {
+ this.activeCategory = this.activeTopic.categories.filter(category =>
+ category.alias === decodeURIComponent(params['category']))[0];
+ } else {
+ let category: Category = this.activeTopic.categories[0];
+ this.navigateTo(this.stakeholder.alias, this.activeTopic.alias, category.alias);
+ return;
+ }
+ if(this.activeCategory) {
+ if(params['subCategory']) {
+ this.activeSubCategory = this.activeCategory.subCategories.filter(subCategory =>
+ subCategory.alias = decodeURIComponent(params['subCategory']))[0];
+ } else {
+ this.activeSubCategory = this.activeCategory.subCategories.filter(subCategory => !subCategory.alias)[0];
+ }
+ if(this.activeSubCategory) {
+ this.setSideBar();
+ return;
+ }
+ }
+ }
+ this.navigateToError();
+ } else {
+ let topic: Topic = this.stakeholder.topics[0];
+ let category: Category = topic.categories[0];
+ this.navigateTo(this.stakeholder.alias, topic.alias, category.alias);
+ }
+ }
+
+ private setSideBar() {
+ this.sideMenuItems = [];
+ this.activeTopic.categories.forEach(category => {
+ let rootItem: MenuItem = new MenuItem(category.alias, category.name, null, (
+ '/monitor/' + this.stakeholder.alias + '/' + this.activeTopic.alias + '/' + category.alias),
+ false, null, null, null);
+ let items: RootMenuItem[] = [];
+ category.subCategories.forEach(subCategory => {
+ if(subCategory.alias != null) {
+ items.push({
+ items: [],
+ rootItem: new MenuItem(subCategory.alias, subCategory.name, null, (
+ '/monitor/' + this.stakeholder.alias + '/' + this.activeTopic.alias + '/' + category.alias + '/' + subCategory.alias),
+ false, null, null, null)
+ });
+ }
+ });
+ this.sideMenuItems.push({
+ rootItem: rootItem,
+ items: items,
+ ukIcon: null
+ });
+ });
+ }
+
+ public navigateToError() {
+ this._router.navigate(['/error'],{queryParams: {'page': this._router.url}});
+ }
+
+ public navigateTo(stakeholder: string, topic: string, category: string = null, subcategory: string = null) {
+ let url = 'monitor/' + stakeholder+ '/' + topic + ((category)?('/'
+ + category):'') + ((subcategory)?('/' + subcategory):'');
+ return this._router.navigate([url]);
+ }
+
public quote(param: string): string {
return StringUtils.quote(param);
}
diff --git a/src/app/monitor/monitor.module.ts b/src/app/monitor/monitor.module.ts
index ed57fbc..86b1ba5 100644
--- a/src/app/monitor/monitor.module.ts
+++ b/src/app/monitor/monitor.module.ts
@@ -14,11 +14,12 @@ import {SEOServiceModule} from "../openaireLibrary/sharedComponents/SEO/SEOServi
import {MonitorRoutingModule} from "./monitor-routing.module";
import {MonitorComponent} from "./monitor.component";
import {StakeholderService} from "../services/stakeholder.service";
+import {SideBarModule} from "../openaireLibrary/sharedComponents/sidebar/sideBar.module";
@NgModule({
imports: [
CommonModule, FormsModule, RouterModule, ErrorMessagesModule,
- HelperModule, Schema2jsonldModule, SEOServiceModule, MonitorRoutingModule
+ HelperModule, Schema2jsonldModule, SEOServiceModule, MonitorRoutingModule, SideBarModule
],
declarations: [
MonitorComponent
diff --git a/src/app/services/stakeholder.service.ts b/src/app/services/stakeholder.service.ts
index d51abce..bd8a87d 100644
--- a/src/app/services/stakeholder.service.ts
+++ b/src/app/services/stakeholder.service.ts
@@ -1,20 +1,20 @@
import {Injectable} from "@angular/core";
import {HttpClient, HttpErrorResponse} from "@angular/common/http";
import {Observable} from "rxjs";
-import {Stakeholder} from "../stakeholder";
+import {Stakeholder} from "../utils/entities/stakeholder";
import {map} from "rxjs/operators";
@Injectable()
export class StakeholderService {
-
constructor(private http: HttpClient) {
}
- getStakeholder(id: string): Observable {
+ getStakeholder(alias: string): Observable {
return this.http.get('./assets/stakeholders.json').pipe(map(json => {
- let stakeholder = json.stakeholders.filter(stakeholder => stakeholder.index_id === id)[0];
- if(stakeholder) {
+ let stakeholder = json.stakeholders.filter(stakeholder => stakeholder.alias === alias)[0];
+ if (stakeholder) {
+ stakeholder.topics = stakeholder.topics.filter(topic => topic.isActive && topic.isPublic);
return stakeholder;
} else {
throw new HttpErrorResponse({
diff --git a/src/app/stakeholder.ts b/src/app/utils/entities/stakeholder.ts
similarity index 93%
rename from src/app/stakeholder.ts
rename to src/app/utils/entities/stakeholder.ts
index a08ab22..d503698 100644
--- a/src/app/stakeholder.ts
+++ b/src/app/utils/entities/stakeholder.ts
@@ -4,6 +4,7 @@ export class Stakeholder {
index_id;
index_name: string;
index_shortName:string;
+ alias: string;
isDefaultProfile: boolean;
isActive: boolean;
isPublic: boolean;
@@ -14,6 +15,7 @@ export class Stakeholder {
}
export class Topic {
name: string;
+ alias: string;
description: string;
isActive: boolean;
isPublic: boolean;
@@ -21,6 +23,7 @@ export class Topic {
}
export class Category {
name: string;
+ alias: string;
description: string;
isActive: boolean;
isPublic: boolean;
@@ -30,6 +33,7 @@ export class Category {
export class SubCategory {
name: string;
+ alias: string;
description: string;
isActive: boolean;
isPublic: boolean;
diff --git a/src/assets/monitor-custom.css b/src/assets/monitor-custom.css
index 2c11db0..d3ec973 100644
--- a/src/assets/monitor-custom.css
+++ b/src/assets/monitor-custom.css
@@ -16,12 +16,6 @@
--monitor-portal-lower-tone: #7c9144;
--connect-portal-lower-tone: #b48536;
--develop-portal-lower-tone: #9f4e7e;
-
- --community_main_color: #4C9CD5;
- --community_main_color_rgb: 76,156,213;
- --community_secondary_color:#24857F;
- --community_main_dark_color:#2276B9;
-
}
.tm-toolbar .uk-subnav-line .custom-monitor-li {
@@ -67,3 +61,13 @@ div:not(.connect_App) bottom .uk-totop{
.uk-breadcrumb .active{
font-weight: bold;
}
+
+.uk-light .topic-nav .uk-navbar-nav > li > a {
+ font-size: 20px;
+ text-transform: unset;
+}
+
+.uk-light .topic-nav .uk-navbar-nav > li.uk-active > a, .uk-light .topic-nav .uk-navbar-nav > li > a:hover,
+.uk-light .topic-nav .uk-navbar-nav > li > a:focus {
+ color: white !important;
+}
diff --git a/src/assets/stakeholders.json b/src/assets/stakeholders.json
index dcb9c45..7fe1f9d 100644
--- a/src/assets/stakeholders.json
+++ b/src/assets/stakeholders.json
@@ -1,153 +1,312 @@
{
- "stakeholders":[
- {
- "id": "1",
- "type": "funder",
- "index_id": "EC",
- "index_name": "European Comission",
- "index_shortName": "EC",
- "isDefaultProfile": false,
- "isActive": true,
- "isPublic": true,
- "creationDate": "08-10-2019",
- "updateDate": "08-10-2019",
- "managers": null,
-
- "topics": [{
- "name": "Open Science",
- "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "stakeholders": [
+ {
+ "id": "1",
+ "type": "funder",
+ "index_id": "EC",
+ "index_name": "European Comission",
+ "index_shortName": "EC",
+ "alias": "EC",
+ "isDefaultProfile": false,
"isActive": true,
"isPublic": true,
- "categories": [
+ "creationDate": "08-10-2019",
+ "updateDate": "08-10-2019",
+ "managers": null,
+ "topics": [
{
- "name": "Overview",
- "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
- "isOverview": true,
- "isActive": true,
- "isPublic": true,
- "subCategories": [{
- "name": null,
- "description": null,
- "isActive": true,
- "isPublic": true,
- "numbers": ["1","2","3"],
- "charts": ["4"]
- }]
- },
- {
- "name": "Publications",
+ "name": "OpenScience",
+ "alias": "openScience",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
- "isOverview": false,
"isActive": true,
"isPublic": true,
- "subCategories": [{
- "name": null,
- "description": null,
- "isActive": true,
- "isPublic": true,
- "numbers": ["1","2","3"],
- "charts": ["4"]
- }]
+ "categories": [
+ {
+ "name": "Overview",
+ "alias": "overView",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": true,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ "1",
+ "2",
+ "3"
+ ],
+ "charts": [
+ "4"
+ ]
+ },
+ {
+ "name": "Open",
+ "description": "open",
+ "alias": "open",
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ "1",
+ "2",
+ "3"
+ ],
+ "charts": [
+ "4"
+ ]
+ }
+ ]
+ },
+ {
+ "name": "Publications",
+ "alias": "publications",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": false,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ "1",
+ "2",
+ "3"
+ ],
+ "charts": [
+ "4"
+ ]
+ }
+ ]
+ },
+ {
+ "name": "Research data",
+ "alias": "researchData",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": false,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ ],
+ "charts": [
+ ]
+ }
+ ]
+ },
+ {
+ "name": "Software",
+ "alias": "software",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": false,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ ],
+ "charts": [
+ ]
+ }
+ ]
+ },
+ {
+ "name": "Other",
+ "alias": "other",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": false,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ ],
+ "charts": [
+ ]
+ }
+ ]
+ }
+ ]
},
{
- "name": "Research data",
+ "name": "Collaboration",
+ "alias": "collaboration",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
- "isOverview": false,
"isActive": true,
"isPublic": true,
- "subCategories": [{
- "name": null,
- "description": null,
- "isActive": true,
- "isPublic": true,
- "numbers": [
- ],
- "charts": [
- ]
- }]
+ "categories": [
+ {
+ "name": "Overview",
+ "alias": "overView",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": true,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ "1",
+ "2",
+ "3"
+ ],
+ "charts": [
+ "4"
+ ]
+ }
+ ]
+ }
+ ]
},
{
- "name": "Software",
+ "name": "Impact/Correlation",
+ "alias": "impact-correlation",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
- "isOverview": false,
"isActive": true,
"isPublic": true,
- "subCategories": [{
- "name": null,
- "description": null,
- "isActive": true,
- "isPublic": true,
- "numbers": [
- ],
- "charts": [
- ]
- }]
- }, {
- "name": "Other",
- "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
- "isOverview": false,
- "isActive": true,
- "isPublic": true,
- "subCategories": [{
- "name": null,
- "description": null,
- "isActive": true,
- "isPublic": true,
- "numbers": [
- ],
- "charts": [
- ]
- }]
+ "categories": [
+ {
+ "name": "Overview",
+ "alias": "overView",
+ "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do...",
+ "isOverview": true,
+ "isActive": true,
+ "isPublic": true,
+ "subCategories": [
+ {
+ "name": null,
+ "description": null,
+ "alias": null,
+ "isActive": true,
+ "isPublic": true,
+ "numbers": [
+ "1",
+ "2",
+ "3"
+ ],
+ "charts": [
+ "4"
+ ]
+ }
+ ]
+ }
+ ]
}
]
- }]
- }],
- "indicators": [{
- "id": "1",
- "type": "number",
- "name": "Total",
- "description": "Total number of publications",
- "tags":["publications"],
- "width": "small",
- "indicatorPaths":[{"type":"",
- "url": "/stats-api/funders/{index_shortname}",
- "jsonPath":["statistics","publications"]}]
- },
+ }
+ ],
+ "indicators": [
+ {
+ "id": "1",
+ "type": "number",
+ "name": "Total",
+ "description": "Total number of publications",
+ "tags": [
+ "publications"
+ ],
+ "width": "small",
+ "indicatorPaths": [
+ {
+ "type": "",
+ "url": "/stats-api/funders/{index_shortname}",
+ "jsonPath": [
+ "statistics",
+ "publications"
+ ]
+ }
+ ]
+ },
{
"id": "2",
"type": "number",
"name": "Open",
"description": "Total number of open access publications",
- "tags":["publication", "open access"],
+ "tags": [
+ "publication",
+ "open access"
+ ],
"width": "small",
- "indicatorPaths": [{"type":"",
- "url": "/stats-api/funders/{index_shortname}",
- "jsonPath":["statistics","open"]}]
+ "indicatorPaths": [
+ {
+ "type": "",
+ "url": "/stats-api/funders/{index_shortname}",
+ "jsonPath": [
+ "statistics",
+ "open"
+ ]
+ }
+ ]
},
{
"id": "3",
"type": "number",
"name": "Embargo",
"description": "Total number of embargoed publications",
- "tags":["publication", "embargo"],
+ "tags": [
+ "publication",
+ "embargo"
+ ],
"width": "small",
- "indicatorPaths": [{"type":"",
- "url": "/stats-api/funders/{index_shortname}",
- "jsonPath":["statistics","embargo"]}]
+ "indicatorPaths": [
+ {
+ "type": "",
+ "url": "/stats-api/funders/{index_shortname}",
+ "jsonPath": [
+ "statistics",
+ "embargo"
+ ]
+ }
+ ]
},
{
"id": "4",
"type": "charts",
"name": "Number of publications by project",
"description": "Number of publications by project",
- "tags":["publication", "project"],
+ "tags": [
+ "publication",
+ "project"
+ ],
"width": "large",
- "indicatorPaths":[{ "type":"bar graph",
- "url": "https://www.openaire.eu/stats/chart.php?com=query&data={%22table%22%3A%22result%22%2C%22fields%22%3A[{%22fld%22%3A%22number%22%2C%22agg%22%3A%22count%22%2C%22type%22%3A%22bar%22%2C%22yaxis%22%3A1%2C%22c%22%3Afalse}]%2C%22xaxis%22%3A{%22name%22%3A%22result_projects-project-acronym%22%2C%22agg%22%3A%22avg%22}%2C%22group%22%3A%22%22%2C%22color%22%3A%22%22%2C%22type%22%3A%22chart%22%2C%22size%22%3A30%2C%22sort%22%3A%22count-number%22%2C%22yaxisheaders%22%3A[%22%22]%2C%22fieldsheaders%22%3A[%22publications%22]%2C%22in%22%3A[]%2C%22filters%22%3A[{%22name%22%3A%22result_projects-project-funding_lvl0%22%2C%22values%22%3A[%22H2020%22]%2C%22to%22%3A%22-1%22}%2C{%22name%22%3A%22type%22%2C%22values%22%3A[%22publication%22]%2C%22to%22%3A%22-1%22}]%2C%22having%22%3A[]%2C%22xStyle%22%3A{%22r%22:%22-%22,%22s%22:%22-%22,%22l%22:%22-%22,%22ft%22:%22-%22,%22wt%22:%22-%22}%2C%22title%22%3A%22H2020%20Publications%20per%20project%20%28top%2030%29%22%2C%22subtitle%22%3A%22%22%2C%22xaxistitle%22%3A%22project%22%2C%22order%22%3A%22d%22}&h=100%&w=80%",
- "jsonPath":[]},
- { "type":"table",
- "url":"https://www.openaire.eu/stats/gtable.php?com=query&data={%22table%22:%22result%22,%22fields%22:[{%22fld%22:%22number%22,%22agg%22:%22count%22,%22type%22:%22pie%22,%22yaxis%22:1,%22c%22:false}],%22xaxis%22:{%22name%22:%22result_projects-project-title%22,%22agg%22:%22avg%22},%22group%22:%22%22,%22color%22:%22%22,%22type%22:%22chart%22,%22size%22:%2230%22,%22sort%22:%22count-number%22,%22yaxisheaders%22:[%22%22],%22fieldsheaders%22:[%22publications%22],%22in%22:[],%22filters%22:[{%22name%22:%22result_projects-project-funder%22,%22values%22:[%22{index_name}%22],%22to%22:%22-1%22},{%22name%22:%22type%22,%22values%22:[%22publication%22],%22to%22:%22-1%22}],%22having%22:[],%22xStyle%22:{%22r%22:-90,%22s%22:%22-%22,%22l%22:%22-%22,%22ft%22:10,%22wt%22:%22-%22},%22title%22:%22{index_shortname}%20Publications%20by%20project%20(top%2030)%22,%22subtitle%22:%22%22,%22xaxistitle%22:%22project%22,%22order%22:%22d%22}",
- "jsonPath":[]}
+ "indicatorPaths": [
+ {
+ "type": "bar graph",
+ "url": "https://www.openaire.eu/stats/chart.php?com=query&data={%22table%22%3A%22result%22%2C%22fields%22%3A[{%22fld%22%3A%22number%22%2C%22agg%22%3A%22count%22%2C%22type%22%3A%22bar%22%2C%22yaxis%22%3A1%2C%22c%22%3Afalse}]%2C%22xaxis%22%3A{%22name%22%3A%22result_projects-project-acronym%22%2C%22agg%22%3A%22avg%22}%2C%22group%22%3A%22%22%2C%22color%22%3A%22%22%2C%22type%22%3A%22chart%22%2C%22size%22%3A30%2C%22sort%22%3A%22count-number%22%2C%22yaxisheaders%22%3A[%22%22]%2C%22fieldsheaders%22%3A[%22publications%22]%2C%22in%22%3A[]%2C%22filters%22%3A[{%22name%22%3A%22result_projects-project-funding_lvl0%22%2C%22values%22%3A[%22H2020%22]%2C%22to%22%3A%22-1%22}%2C{%22name%22%3A%22type%22%2C%22values%22%3A[%22publication%22]%2C%22to%22%3A%22-1%22}]%2C%22having%22%3A[]%2C%22xStyle%22%3A{%22r%22:%22-%22,%22s%22:%22-%22,%22l%22:%22-%22,%22ft%22:%22-%22,%22wt%22:%22-%22}%2C%22title%22%3A%22H2020%20Publications%20per%20project%20%28top%2030%29%22%2C%22subtitle%22%3A%22%22%2C%22xaxistitle%22%3A%22project%22%2C%22order%22%3A%22d%22}&h=100%&w=80%",
+ "jsonPath": []
+ },
+ {
+ "type": "table",
+ "url": "https://www.openaire.eu/stats/gtable.php?com=query&data={%22table%22:%22result%22,%22fields%22:[{%22fld%22:%22number%22,%22agg%22:%22count%22,%22type%22:%22pie%22,%22yaxis%22:1,%22c%22:false}],%22xaxis%22:{%22name%22:%22result_projects-project-title%22,%22agg%22:%22avg%22},%22group%22:%22%22,%22color%22:%22%22,%22type%22:%22chart%22,%22size%22:%2230%22,%22sort%22:%22count-number%22,%22yaxisheaders%22:[%22%22],%22fieldsheaders%22:[%22publications%22],%22in%22:[],%22filters%22:[{%22name%22:%22result_projects-project-funder%22,%22values%22:[%22{index_name}%22],%22to%22:%22-1%22},{%22name%22:%22type%22,%22values%22:[%22publication%22],%22to%22:%22-1%22}],%22having%22:[],%22xStyle%22:{%22r%22:-90,%22s%22:%22-%22,%22l%22:%22-%22,%22ft%22:10,%22wt%22:%22-%22},%22title%22:%22{index_shortname}%20Publications%20by%20project%20(top%2030)%22,%22subtitle%22:%22%22,%22xaxistitle%22:%22project%22,%22order%22:%22d%22}",
+ "jsonPath": []
+ }
]
- }]
+ }
+ ]
}