Add super admin and monitor options in sidebar. Change tabs in methodology

This commit is contained in:
Konstantinos Triantafyllou 2022-04-07 20:31:55 +03:00
parent 38373ef725
commit daf12522c2
9 changed files with 220 additions and 212 deletions

View File

@ -24,7 +24,8 @@ const routes: Routes = [
{ {
path: 'admin', path: 'admin',
loadChildren: () => import('./manageStakeholders/manageStakeholders.module').then(m => m.ManageStakeholdersModule), loadChildren: () => import('./manageStakeholders/manageStakeholders.module').then(m => m.ManageStakeholdersModule),
canActivateChild: [LoginGuard] canActivateChild: [LoginGuard],
data: {hasAdminMenu: true}
}, },
{ {
path: 'admin/admin-tools', path: 'admin/admin-tools',

View File

@ -2,13 +2,13 @@
<loading [full]="true"></loading> <loading [full]="true"></loading>
</div> </div>
<div *ngIf="!loading"> <div *ngIf="!loading">
<div class="sidebar_main_swipe" [class.sidebar_main_active]="open && hasSidebar" <div class="sidebar_main_swipe" [class.sidebar_main_active]="open && hasSidebar && (!hasAdminMenu || hasAdminMenu && adminMenuItems?.length > 0)"
[class.sidebar_mini]="!open && hasSidebar" [class.stakeholderPage]="isFrontPage"> [class.sidebar_mini]="!open && hasSidebar && (!hasAdminMenu || hasAdminMenu && adminMenuItems?.length > 0)" [class.stakeholderPage]="isFrontPage">
<navbar *ngIf="hasHeader" portal="monitor_dashboard" [header]="menuHeader" <navbar *ngIf="hasHeader" portal="monitor_dashboard" [header]="menuHeader"
[userMenuItems]=userMenuItems [menuItems]="menuItems" [user]="user" [offCanvasFlip]="true"></navbar> [userMenuItems]=userMenuItems [menuItems]="menuItems" [user]="user" [offCanvasFlip]="true"></navbar>
<div> <div>
<dashboard-sidebar *ngIf="stakeholder && isFrontPage && hasSidebar" [items]="sideBarItems" [activeItem]="activeTopic?activeTopic.alias:null"></dashboard-sidebar> <dashboard-sidebar *ngIf="stakeholder && isFrontPage && hasSidebar" [items]="sideBarItems" [activeItem]="activeTopic?activeTopic.alias:null"></dashboard-sidebar>
<dashboard-sidebar *ngIf="hasAdminMenu" [items]="adminMenuItems" [specialMenuItem]="specialSideBarMenuItem"></dashboard-sidebar> <dashboard-sidebar *ngIf="hasAdminMenu && adminMenuItems?.length > 0" [items]="adminMenuItems" [specialMenuItem]="specialSideBarMenuItem"></dashboard-sidebar>
<main> <main>
<router-outlet></router-outlet> <router-outlet></router-outlet>
</main> </main>

View File

@ -267,7 +267,7 @@ export class AppComponent implements OnInit, OnDestroy {
this.userMenuItems.push(new MenuItem("", "User information", "", "/user-info", false, [], [], {})); this.userMenuItems.push(new MenuItem("", "User information", "", "/user-info", false, [], [], {}));
} }
if (this.stakeholder) { if (this.stakeholder) {
this.menuItems.push({ this.menuItems.push({
rootItem: new MenuItem("dashboard", "Dashboard", rootItem: new MenuItem("dashboard", "Dashboard",
"", "/" + this.stakeholder.alias, false, [], null, {} "", "/" + this.stakeholder.alias, false, [], null, {}
@ -303,7 +303,7 @@ export class AppComponent implements OnInit, OnDestroy {
, null, null, null, null), items: [] , null, null, null, null), items: []
}); });
} }
if (!this.hasAdminMenu && this.isFrontPage) { if (!this.hasAdminMenu && this.isFrontPage) {
this.menuHeader = { this.menuHeader = {
route: "/" + this.stakeholder.alias, route: "/" + this.stakeholder.alias,
@ -333,16 +333,15 @@ export class AppComponent implements OnInit, OnDestroy {
// "", '/' + this.stakeholder.alias + '/', false, [], null, {}), items: [] // "", '/' + this.stakeholder.alias + '/', false, [], null, {}), items: []
// }); // });
this.adminMenuItems.push(new MenuItem("general", "General", "", "/admin/" + this.stakeholder.alias, false, [], [], {}, {name: 'badge'})); this.adminMenuItems.push(new MenuItem("general", "General", "", "/admin/" + this.stakeholder.alias, false, [], [], {}, {name: 'badge'}));
this.adminMenuItems.push(new MenuItem("indicators", "Indicators", "", "/admin/" + this.stakeholder.alias + '/indicators', false, [], [], {}, {name: 'analytics'})); this.adminMenuItems.push(new MenuItem("indicators", "Indicators", "", "/admin/" + this.stakeholder.alias + '/indicators', false, [], [], {}, {name: 'bar_chart'}));
if (this.stakeholder.defaultId) { if (this.stakeholder.defaultId) {
this.adminMenuItems.push(new MenuItem("users", "Users", "", "/admin/" + this.stakeholder.alias + "/users", false, [], [], {}, {name: 'group'}, null, null, "/admin/" + this.stakeholder.alias+"/users")); this.adminMenuItems.push(new MenuItem("users", "Users", "", "/admin/" + this.stakeholder.alias + "/users", false, [], [], {}, {name: 'group'}, null, null, "/admin/" + this.stakeholder.alias + "/users"));
if (Session.isPortalAdministrator(this.user)) { if (Session.isPortalAdministrator(this.user)) {
this.adminMenuItems.push(new MenuItem("admin-tools", "Pages & Entities", "", "/admin/" + this.stakeholder.alias + "/admin-tools/pages", false, [], [], {}, null, null, null, "/admin/" + this.stakeholder.alias + "/admin-tools")); this.adminMenuItems.push(new MenuItem("admin-tools", "Pages & Entities", "", "/admin/" + this.stakeholder.alias + "/admin-tools/pages", false, [], [], {}, {name: 'description'}, null, null, "/admin/" + this.stakeholder.alias + "/admin-tools"));
} }
} }
this.specialSideBarMenuItem = new MenuItem("back", "Manage profiles", "", "/admin", false, [], null, {}); this.specialSideBarMenuItem = new MenuItem("back", "Manage profiles", "", "/admin", false, [], null, {});
this.specialSideBarMenuItem.icon = {name: 'search', class: 'uk-text-secondary'}; this.specialSideBarMenuItem.icon = {name: 'search', class: 'uk-text-secondary'};
this.specialSideBarMenuItem.customClass = 'uk-text-uppercase uk-text-bold uk-text-secondary';
} }
} else { } else {
if (this.isFrontPage || !this.hasAdminMenu) { if (this.isFrontPage || !this.hasAdminMenu) {
@ -386,6 +385,11 @@ export class AppComponent implements OnInit, OnDestroy {
}; };
this.adminMenuItems = []; this.adminMenuItems = [];
this.specialSideBarMenuItem = null; this.specialSideBarMenuItem = null;
if (Session.isPortalAdministrator(this.user)) {
this.adminMenuItems.push(new MenuItem("stakeholders", "Manage profiles", "", "/admin", false, [], [], {}, {name: 'settings'}));
this.adminMenuItems.push(new MenuItem("super_admin", "Super Admin Options", "", "/admin/admin-tools/portals", false, [], [], {}, {name: 'settings'}));
this.adminMenuItems.push(new MenuItem("stakeholders", "Monitor Options", "", "/admin/monitor/admin-tools/pages", false, [], [], {}, {name: 'settings'}));
}
} }
} }

View File

@ -7,12 +7,9 @@ import {IconsModule} from "../../openaireLibrary/utils/icons/icons.module";
import {IconsService} from "../../openaireLibrary/utils/icons/icons.service"; import {IconsService} from "../../openaireLibrary/utils/icons/icons.service";
import {cloud_upload, edit, remove} from "../../openaireLibrary/utils/icons/icons"; import {cloud_upload, edit, remove} from "../../openaireLibrary/utils/icons/icons";
import {NotifyFormModule} from "../../openaireLibrary/notifications/notify-form/notify-form.module"; import {NotifyFormModule} from "../../openaireLibrary/notifications/notify-form/notify-form.module";
import {
AdvancedSearchInputModule
} from "../../openaireLibrary/sharedComponents/advanced-search-input/advanced-search-input.module";
@NgModule({ @NgModule({
imports: [CommonModule, InputModule, ReactiveFormsModule, IconsModule, NotifyFormModule, AdvancedSearchInputModule], imports: [CommonModule, InputModule, ReactiveFormsModule, IconsModule, NotifyFormModule],
declarations: [EditStakeholderComponent], declarations: [EditStakeholderComponent],
exports: [EditStakeholderComponent] exports: [EditStakeholderComponent]
}) })

View File

@ -54,8 +54,8 @@
<ng-template #stakeholderBox let-stakeholder="stakeholder"> <ng-template #stakeholderBox let-stakeholder="stakeholder">
<div *ngIf="stakeholder"> <div *ngIf="stakeholder">
<div class="uk-card uk-card-default uk-card-body uk-position-relative uk-visible-toggle"> <div class="uk-card uk-card-default uk-card-body uk-position-relative">
<div class="uk-position-top-right uk-margin-small-right uk-margin-small-top uk-invisible-hover"> <div class="uk-position-top-right uk-margin-small-right uk-margin-small-top">
<a class="uk-link-reset uk-flex uk-flex-middle"> <a class="uk-link-reset uk-flex uk-flex-middle">
<icon [flex]="true" [name]="stakeholderUtils.visibilityIcon.get(stakeholder.visibility)" ratio="0.6"></icon> <icon [flex]="true" [name]="stakeholderUtils.visibilityIcon.get(stakeholder.visibility)" ratio="0.6"></icon>
<icon [flex]="true" name="more_vert"></icon> <icon [flex]="true" name="more_vert"></icon>
@ -85,13 +85,13 @@
</div> </div>
</div> </div>
<a class="uk-display-block uk-text-center" [routerLink]="'/admin/' + stakeholder.alias"> <a class="uk-display-block uk-text-center" [routerLink]="'/admin/' + stakeholder.alias">
<div class="titleContainer uk-h6 uk-margin-remove multi-line-ellipsis lines-2"> <div class="titleContainer uk-h6 uk-margin-remove-bottom uk-margin-top multi-line-ellipsis lines-2">
<p *ngIf="stakeholder.name" class="uk-margin-remove"> <p *ngIf="stakeholder.name" class="uk-margin-remove">
{{stakeholder.name}} {{stakeholder.name}}
</p> </p>
</div> </div>
<div class="logoContainer uk-margin-medium-top uk-flex uk-flex-column uk-flex-center uk-flex-middle"> <div class="logoContainer uk-margin-top uk-flex uk-flex-column uk-flex-center uk-flex-middle">
<img *ngIf="stakeholder.logoUrl" [src]="stakeholder | logoUrl" class="uk-blend-multiply" style="max-height: 100px;"> <img *ngIf="stakeholder.logoUrl" [src]="stakeholder | logoUrl" class="uk-blend-multiply" style="max-height: 80px;">
</div> </div>
</a> </a>
</div> </div>

View File

@ -185,6 +185,7 @@ export class ManageStakeholdersComponent implements OnInit, OnDestroy {
this.alias[index] = stakeholder.alias; this.alias[index] = stakeholder.alias;
} }
}; };
this.editStakeholderModal.alertTitle = 'Edit ' + this.stakeholder.name;
this.editStakeholderModal.okButtonText = 'Save Changes'; this.editStakeholderModal.okButtonText = 'Save Changes';
} else { } else {
this.callback = (stakeholder: Stakeholder) => { this.callback = (stakeholder: Stakeholder) => {
@ -195,6 +196,7 @@ export class ManageStakeholdersComponent implements OnInit, OnDestroy {
} }
this.alias.push(stakeholder.alias); this.alias.push(stakeholder.alias);
}; };
this.editStakeholderModal.alertTitle = 'Create a new ' + (isDefault?'Default ':'') + 'Profile';
this.editStakeholderModal.okButtonText = 'Create'; this.editStakeholderModal.okButtonText = 'Create';
} }
this.editStakeholderModal.cancelButtonText = 'Cancel'; this.editStakeholderModal.cancelButtonText = 'Cancel';

View File

@ -11,7 +11,7 @@ import {ReactiveFormsModule} from "@angular/forms";
import {EditStakeholderModule} from "../general/edit-stakeholder/edit-stakeholder.module"; import {EditStakeholderModule} from "../general/edit-stakeholder/edit-stakeholder.module";
import {IconsModule} from "../openaireLibrary/utils/icons/icons.module"; import {IconsModule} from "../openaireLibrary/utils/icons/icons.module";
import {IconsService} from "../openaireLibrary/utils/icons/icons.service"; import {IconsService} from "../openaireLibrary/utils/icons/icons.service";
import {incognito, restricted} from "../openaireLibrary/utils/icons/icons"; import {earth, incognito, restricted} from "../openaireLibrary/utils/icons/icons";
import {PageContentModule} from "../openaireLibrary/dashboard/sharedComponents/page-content/page-content.module"; import {PageContentModule} from "../openaireLibrary/dashboard/sharedComponents/page-content/page-content.module";
import {LogoUrlPipeModule} from "../openaireLibrary/utils/pipes/logoUrlPipe.module"; import {LogoUrlPipeModule} from "../openaireLibrary/utils/pipes/logoUrlPipe.module";
import {SearchInputModule} from "../openaireLibrary/sharedComponents/search-input/search-input.module"; import {SearchInputModule} from "../openaireLibrary/sharedComponents/search-input/search-input.module";
@ -39,6 +39,6 @@ import {SearchInputModule} from "../openaireLibrary/sharedComponents/search-inpu
}) })
export class ManageStakeholdersModule { export class ManageStakeholdersModule {
constructor(private iconsService: IconsService) { constructor(private iconsService: IconsService) {
this.iconsService.registerIcons([incognito, restricted]); this.iconsService.registerIcons([earth, incognito, restricted]);
} }
} }

View File

@ -15,196 +15,200 @@ import {ActivatedRoute, Router} from "@angular/router";
<h1>Terminology and <br> construction<span class="uk-text-primary">.</span></h1> <h1>Terminology and <br> construction<span class="uk-text-primary">.</span></h1>
</div> </div>
<div class="uk-section uk-container uk-container-large"> <div class="uk-section uk-container uk-container-large">
<my-tabs> <ul class="uk-tab" uk-tab>
<my-tab [tabTitle]="'Entities'" [tabId]="'entities'" class="uk-active"> <li>
<ng-container> <a>Entities</a>
<dl class="uk-description-list uk-description-list-divider"> </li>
<div class="uk-grid uk-padding-small" uk-grid> <li>
<dt class="uk-width-1-5@m uk-width-1-1 uk-text-primary">Research Outcomes</dt> <a>Attributes of Entities</a>
<dd class="uk-width-expand"> </li>
<div>There are currently four different types of research outcomes in the OpenAIRE Research <br> Graph:</div> </ul>
<ul class="uk-list uk-list-disc"> <ul class="uk-switcher">
<li>Publication</li> <li>
<li>Dataset</li> <dl class="uk-description-list uk-description-list-divider">
<li>Software</li> <div class="uk-grid uk-padding-small" uk-grid>
<li>Other Research Product</li> <dt class="uk-width-1-5@m uk-width-1-1 uk-text-primary">Research Outcomes</dt>
</ul> <dd class="uk-width-expand">
<div class="uk-margin-small-top"> <div>There are currently four different types of research outcomes in the OpenAIRE Research <br> Graph:</div>
OpenAIRE deduplicates (merges) different records of research outcomes and keeps the <br> metadata of all instances. <ul class="uk-list uk-list-disc">
</div> <li>Publication</li>
</dd> <li>Dataset</li>
</div> <li>Software</li>
<hr> <li>Other Research Product</li>
<div class="uk-grid uk-padding-small" uk-grid> </ul>
<dt class="uk-width-1-5@m uk-width-1-1">Publication</dt> <div class="uk-margin-small-top">
<dd class="uk-width-expand"> OpenAIRE deduplicates (merges) different records of research outcomes and keeps the <br> metadata of all instances.
Research outcomes intended for human reading (published articles, pre-prints, conference <br> papers, presentations, technical reports, etc.) </div>
</dd> </dd>
</div> </div>
<hr> <hr>
<div class="uk-grid uk-padding-small" uk-grid> <div class="uk-grid uk-padding-small" uk-grid>
<dt class="uk-width-1-5@m uk-width-1-1">Dataset</dt> <dt class="uk-width-1-5@m uk-width-1-1">Publication</dt>
<dd class="uk-width-expand"> <dd class="uk-width-expand">
<div>Research data</div> Research outcomes intended for human reading (published articles, pre-prints, conference <br> papers, presentations, technical reports, etc.)
<div>Granularity is not defined by OpenAIRE, it reflects the granularity supported by </dd>
the sources <br> from which the description of the dataset has been collected.</div> </div>
</dd> <hr>
</div> <div class="uk-grid uk-padding-small" uk-grid>
<hr> <dt class="uk-width-1-5@m uk-width-1-1">Dataset</dt>
<div class="uk-grid uk-padding-small" uk-grid> <dd class="uk-width-expand">
<dt class="uk-width-1-5@m uk-width-1-1">Software</dt> <div>Research data</div>
<dd class="uk-width-expand"> <div>Granularity is not defined by OpenAIRE, it reflects the granularity supported by
Source code or software package developed and/or used in a research context the sources <br> from which the description of the dataset has been collected.</div>
</dd> </dd>
</div> </div>
<hr> <hr>
<div class="uk-grid uk-padding-small" uk-grid> <div class="uk-grid uk-padding-small" uk-grid>
<dt class="uk-width-1-5@m uk-width-1-1">Other Research Product</dt> <dt class="uk-width-1-5@m uk-width-1-1">Software</dt>
<dd class="uk-width-expand"> <dd class="uk-width-expand">
Anything that does not fall in the previous categories (e.g. workflow, methods, protocols) Source code or software package developed and/or used in a research context
</dd> </dd>
</div> </div>
</dl> <hr>
</ng-container> <div class="uk-grid uk-padding-small" uk-grid>
</my-tab> <dt class="uk-width-1-5@m uk-width-1-1">Other Research Product</dt>
<my-tab [tabTitle]="'Attributes of Entities'" [tabId]="'attributes'"> <dd class="uk-width-expand">
<ng-container> Anything that does not fall in the previous categories (e.g. workflow, methods, protocols)
<dl class="uk-description-list uk-description-list-divider"> </dd>
<div class="uk-grid uk-padding-small" uk-grid> </div>
<dt class="uk-width-1-5@m uk-width-1-1">Organization & Country</dt> </dl>
<dd class="uk-width-expand"> </li>
<p><span class="uk-text-bold">For research outcomes:</span> the affiliated organizations of its <li>
authors (and their country)</p> <dl class="uk-description-list uk-description-list-divider">
<p><span class="uk-text-bold">For projects:</span> the organizations participating in the project <div class="uk-grid uk-padding-small" uk-grid>
(i.e. beneficiaries of the grant) and <dt class="uk-width-1-5@m uk-width-1-1">Organization & Country</dt>
their countries <dd class="uk-width-expand">
</p> <p><span class="uk-text-bold">For research outcomes:</span> the affiliated organizations of its
<p> authors (and their country)</p>
<span class="uk-text-bold">Country code mapping: </span> <p><span class="uk-text-bold">For projects:</span> the organizations participating in the project
<a href="https://api.openaire.eu/vocabularies/dnet:countries" target="_blank"> (i.e. beneficiaries of the grant) and
https://api.openaire.eu/vocabularies/dnet:countries</a> their countries
</p> </p>
</dd> <p>
</div> <span class="uk-text-bold">Country code mapping: </span>
<hr> <a href="https://api.openaire.eu/vocabularies/dnet:countries" target="_blank">
<div class="uk-grid uk-padding-small" uk-grid> https://api.openaire.eu/vocabularies/dnet:countries</a>
<dt class="uk-width-1-5@m uk-width-1-1">Type</dt> </p>
<dd class="uk-width-expand"> </dd>
<p>The sub-type of a research outcome (e.g., a publication can be a pre-print, conference proceeding, </div>
article, <hr>
etc.)</p> <div class="uk-grid uk-padding-small" uk-grid>
<p><span class="uk-text-bold">Resource type mapping: </span> <dt class="uk-width-1-5@m uk-width-1-1">Type</dt>
<a href="https://api.openaire.eu/vocabularies/dnet:result_typologies" target="_blank">https://api.openaire.eu/vocabularies/dnet:result_typologies</a> <dd class="uk-width-expand">
(click on the code to see the specific types for each result type) <p>The sub-type of a research outcome (e.g., a publication can be a pre-print, conference proceeding,
</p> article,
</dd> etc.)</p>
</div> <p><span class="uk-text-bold">Resource type mapping: </span>
<hr> <a href="https://api.openaire.eu/vocabularies/dnet:result_typologies" target="_blank">https://api.openaire.eu/vocabularies/dnet:result_typologies</a>
<div class="uk-grid uk-padding-small" uk-grid> (click on the code to see the specific types for each result type)
<dt class="uk-width-1-5@m uk-width-1-1">Access mode</dt> </p>
<dd class="uk-width-expand"> </dd>
<p>The best available (across all instances) access rights of a research outcome</p> </div>
<p>Types: open, restricted, closed, embargo (= closed for a specific period of time, then open)</p> <hr>
<p><span class="uk-text-bold">Note:</span> definition of <span class="uk-text-bold">restricted</span> <div class="uk-grid uk-padding-small" uk-grid>
may vary by data source.</p> <dt class="uk-width-1-5@m uk-width-1-1">Access mode</dt>
</dd> <dd class="uk-width-expand">
</div> <p>The best available (across all instances) access rights of a research outcome</p>
<hr> <p>Types: open, restricted, closed, embargo (= closed for a specific period of time, then open)</p>
<div class="uk-grid uk-padding-small" uk-grid> <p><span class="uk-text-bold">Note:</span> definition of <span class="uk-text-bold">restricted</span>
<dt class="uk-width-1-5@m uk-width-1-1">PID (persistent identifier)</dt> may vary by data source.</p>
<dd class="uk-width-expand"> </dd>
<p>A long-lasting reference to a resource</p> </div>
<p><span class="uk-text-bold">Types: </span> <a <hr>
href="http://api.openaire.eu/vocabularies/dnet:pid_types" target="_blank">http://api.openaire.eu/vocabularies/dnet:pid_types</a> <div class="uk-grid uk-padding-small" uk-grid>
</p> <dt class="uk-width-1-5@m uk-width-1-1">PID (persistent identifier)</dt>
</dd> <dd class="uk-width-expand">
</div> <p>A long-lasting reference to a resource</p>
<hr> <p><span class="uk-text-bold">Types: </span> <a
<div class="uk-grid uk-padding-small" uk-grid> href="http://api.openaire.eu/vocabularies/dnet:pid_types" target="_blank">http://api.openaire.eu/vocabularies/dnet:pid_types</a>
<dt class="uk-width-1-5@m uk-width-1-1">Context</dt> </p>
<dd class="uk-width-expand"> </dd>
Related research community, initiative or infrastructure. </div>
</dd> <hr>
</div> <div class="uk-grid uk-padding-small" uk-grid>
<hr> <dt class="uk-width-1-5@m uk-width-1-1">Context</dt>
<div class="uk-grid uk-padding-small" uk-grid> <dd class="uk-width-expand">
<dt class="uk-width-1-5@m uk-width-1-1">Journal</dt> Related research community, initiative or infrastructure.
<dd class="uk-width-expand"> </dd>
The scientific journal an article is published in. </div>
</dd> <hr>
</div> <div class="uk-grid uk-padding-small" uk-grid>
<hr> <dt class="uk-width-1-5@m uk-width-1-1">Journal</dt>
<div class="uk-grid uk-padding-small" uk-grid> <dd class="uk-width-expand">
<dt class="uk-width-1-5@m uk-width-1-1">Publisher</dt> The scientific journal an article is published in.
<dd class="uk-width-expand"> </dd>
The publisher of the venue (journal, book, etc.) of a research outcome. </div>
</dd> <hr>
</div> <div class="uk-grid uk-padding-small" uk-grid>
<hr> <dt class="uk-width-1-5@m uk-width-1-1">Publisher</dt>
<div class="uk-grid uk-padding-small" uk-grid> <dd class="uk-width-expand">
<dt class="uk-width-1-5@m uk-width-1-1">Content Providers (Datasources)</dt> The publisher of the venue (journal, book, etc.) of a research outcome.
<dd class="uk-width-expand"> </dd>
<p>The different data sources ingested in the OpenAIRE Research Graph.</p> </div>
<div class="uk-text-bold">Content Provider Types:</div> <hr>
<ul class="uk-list uk-list-disc"> <div class="uk-grid uk-padding-small" uk-grid>
<li>Repositories</li> <dt class="uk-width-1-5@m uk-width-1-1">Content Providers (Datasources)</dt>
<li>Open Access Publishers & Journals</li> <dd class="uk-width-expand">
<li>Aggregators</li> <p>The different data sources ingested in the OpenAIRE Research Graph.</p>
<li>Entity Registries</li> <div class="uk-text-bold">Content Provider Types:</div>
<li>Journal Aggregators</li> <ul class="uk-list uk-list-disc">
<li>CRIS (Current Research Information System)</li> <li>Repositories</li>
</ul> <li>Open Access Publishers & Journals</li>
</dd> <li>Aggregators</li>
</div> <li>Entity Registries</li>
<hr> <li>Journal Aggregators</li>
<div class="uk-grid uk-padding-small" uk-grid> <li>CRIS (Current Research Information System)</li>
<dt class="uk-width-1-5@m uk-width-1-1">Repositories</dt> </ul>
<dd class="uk-width-expand"> </dd>
Information systems where scientists upload the bibliographic metadata and payloads of their </div>
research outcomes (e.g. PDFs of their scientific articles, CSVs of their data, archive with their <hr>
software), due to obligations from their organizations, their funders, or due to community practices <div class="uk-grid uk-padding-small" uk-grid>
(e.g. ArXiv, Europe PMC, Zenodo). <dt class="uk-width-1-5@m uk-width-1-1">Repositories</dt>
</dd> <dd class="uk-width-expand">
</div> Information systems where scientists upload the bibliographic metadata and payloads of their
<hr> research outcomes (e.g. PDFs of their scientific articles, CSVs of their data, archive with their
<div class="uk-grid uk-padding-small" uk-grid> software), due to obligations from their organizations, their funders, or due to community practices
<dt class="uk-width-1-5@m uk-width-1-1">Open Access Publishers & Journals</dt> (e.g. ArXiv, Europe PMC, Zenodo).
<dd class="uk-width-expand"> </dd>
Information systems of open access publishers or relative journals, which offer bibliographic </div>
metadata and PDFs of their published articles. <hr>
</dd> <div class="uk-grid uk-padding-small" uk-grid>
</div> <dt class="uk-width-1-5@m uk-width-1-1">Open Access Publishers & Journals</dt>
<hr> <dd class="uk-width-expand">
<div class="uk-grid uk-padding-small" uk-grid> Information systems of open access publishers or relative journals, which offer bibliographic
<dt class="uk-width-1-5@m uk-width-1-1">Aggregators</dt> metadata and PDFs of their published articles.
<dd class="uk-width-expand"> </dd>
Information systems that collect descriptive metadata about research products from multiple sources </div>
in order to enable cross-data source discovery of given research products (e,g, DataCite, <hr>
BASE, DOAJ). <div class="uk-grid uk-padding-small" uk-grid>
</dd> <dt class="uk-width-1-5@m uk-width-1-1">Aggregators</dt>
</div> <dd class="uk-width-expand">
<hr> Information systems that collect descriptive metadata about research products from multiple sources
<div class="uk-grid uk-padding-small" uk-grid> in order to enable cross-data source discovery of given research products (e,g, DataCite,
<dt class="uk-width-1-5@m uk-width-1-1">Entity Registries</dt> BASE, DOAJ).
<dd class="uk-width-expand"> </dd>
Information systems created with the intent of maintaining authoritative registries of given </div>
entities in the scholarly communication, such as OpenDOAR for the institutional repositories, re3data <hr>
for the data repositories, CORDA and other funder databases for projects and funding information. <div class="uk-grid uk-padding-small" uk-grid>
</dd> <dt class="uk-width-1-5@m uk-width-1-1">Entity Registries</dt>
</div> <dd class="uk-width-expand">
<hr> Information systems created with the intent of maintaining authoritative registries of given
<div class="uk-grid uk-padding-small" uk-grid> entities in the scholarly communication, such as OpenDOAR for the institutional repositories, re3data
<dt class="uk-width-1-5@m uk-width-1-1">CRIS (Current Research Information System)</dt> for the data repositories, CORDA and other funder databases for projects and funding information.
<dd class="uk-width-expand"> </dd>
Information systems adopted by research and academic organizations to keep track of their research </div>
administration records and relative results; examples of CRIS content are articles or datasets funded <hr>
by projects, their principal investigators, facilities acquired thanks to funding, etc. <div class="uk-grid uk-padding-small" uk-grid>
</dd> <dt class="uk-width-1-5@m uk-width-1-1">CRIS (Current Research Information System)</dt>
</div> <dd class="uk-width-expand">
</dl> Information systems adopted by research and academic organizations to keep track of their research
</ng-container> administration records and relative results; examples of CRIS content are articles or datasets funded
</my-tab> by projects, their principal investigators, facilities acquired thanks to funding, etc.
</my-tabs> </dd>
</div>
</dl>
</li>
</ul>
<div class="uk-margin-medium-top graph"> <div class="uk-margin-medium-top graph">
<icon name="graph" customClass="uk-text-primary"></icon> <icon name="graph" customClass="uk-text-primary"></icon>
<span class="uk-margin-small-left uk-text-baseline uk-text-muted">More information for <a <span class="uk-margin-small-left uk-text-baseline uk-text-muted">More information for <a

View File

@ -14,7 +14,7 @@
</li> </li>
</ul> </ul>
</div> </div>
<div class="menu_section uk-margin-medium-top"> <div class="menu_section uk-margin-large-top">
<div *ngIf="stakeholder.topics[topicIndex]" class="active" [style]="'--index: ' + topicIndex + '; --size: ' + (stakeholder.topics[topicIndex].icon?'40px':0)"></div> <div *ngIf="stakeholder.topics[topicIndex]" class="active" [style]="'--index: ' + topicIndex + '; --size: ' + (stakeholder.topics[topicIndex].icon?'40px':0)"></div>
<ul class="uk-list"> <ul class="uk-list">
<ng-template ngFor [ngForOf]="stakeholder.topics" let-topic let-i="index"> <ng-template ngFor [ngForOf]="stakeholder.topics" let-topic let-i="index">