Adding the portal version that uses the uoa-services-library
git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-portal/trunk@50359 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
parent
82965faa51
commit
6a5911c5f0
|
@ -0,0 +1,110 @@
|
||||||
|
{
|
||||||
|
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
||||||
|
"project": {
|
||||||
|
"name": "ng-universal-demo"
|
||||||
|
},
|
||||||
|
"apps": [
|
||||||
|
{
|
||||||
|
"root": "src",
|
||||||
|
"outDir": "dist/browser",
|
||||||
|
"assets": [
|
||||||
|
"assets",
|
||||||
|
"favicon.ico"
|
||||||
|
],
|
||||||
|
"index": "index.html",
|
||||||
|
"main": "main.ts",
|
||||||
|
"polyfills": "polyfills.ts",
|
||||||
|
"test": "test.ts",
|
||||||
|
"tsconfig": "tsconfig.app.json",
|
||||||
|
"testTsconfig": "tsconfig.spec.json",
|
||||||
|
"prefix": "app",
|
||||||
|
"styles": [
|
||||||
|
"styles.css",
|
||||||
|
"../node_modules/datatables.net-dt/css/jquery.dataTables.css"
|
||||||
|
],
|
||||||
|
"scripts": [
|
||||||
|
"../node_modules/jquery/dist/jquery.js",
|
||||||
|
"../node_modules/datatables.net/js/jquery.dataTables.js"
|
||||||
|
],
|
||||||
|
"environmentSource": "environments/environment.ts",
|
||||||
|
"environments": {
|
||||||
|
"dev": "environments/environment.ts",
|
||||||
|
"prod": "environments/environment.prod.ts"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"platform": "server",
|
||||||
|
"root": "src",
|
||||||
|
"outDir": "dist/server",
|
||||||
|
"assets": [
|
||||||
|
"assets",
|
||||||
|
"favicon.ico"
|
||||||
|
],
|
||||||
|
"index": "index.html",
|
||||||
|
"main": "main.server.ts",
|
||||||
|
"test": "test.ts",
|
||||||
|
"tsconfig": "tsconfig.server.json",
|
||||||
|
"testTsconfig": "tsconfig.spec.json",
|
||||||
|
"prefix": "app",
|
||||||
|
"styles": [
|
||||||
|
"styles.css"
|
||||||
|
],
|
||||||
|
"scripts": [],
|
||||||
|
"environmentSource": "environments/environment.ts",
|
||||||
|
"environments": {
|
||||||
|
"dev": "environments/environment.ts",
|
||||||
|
"prod": "environments/environment.prod.ts"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"e2e": {
|
||||||
|
"protractor": {
|
||||||
|
"config": "./protractor.conf.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"lint": [
|
||||||
|
{
|
||||||
|
"project": "src/tsconfig.app.json",
|
||||||
|
"exclude": "**/node_modules/**"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"project": "src/tsconfig.spec.json",
|
||||||
|
"exclude": "**/node_modules/**"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"project": "e2e/tsconfig.e2e.json",
|
||||||
|
"exclude": "**/node_modules/**"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"test": {
|
||||||
|
"karma": {
|
||||||
|
"config": "./karma.conf.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"defaults": {
|
||||||
|
"styleExt": "css",
|
||||||
|
"component": {
|
||||||
|
"spec": false,
|
||||||
|
"inlineStyle": true,
|
||||||
|
"inlineTemplate": true
|
||||||
|
},
|
||||||
|
"directive": {
|
||||||
|
"spec": false
|
||||||
|
},
|
||||||
|
"class": {
|
||||||
|
"spec": false
|
||||||
|
},
|
||||||
|
"guard": {
|
||||||
|
"spec": false
|
||||||
|
},
|
||||||
|
"module": {
|
||||||
|
"spec": false
|
||||||
|
},
|
||||||
|
"pipe": {
|
||||||
|
"spec": false
|
||||||
|
},
|
||||||
|
"service": {
|
||||||
|
"spec": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,54 @@
|
||||||
|
# Angular Universal & Anguar-CLI minimal starter
|
||||||
|
|
||||||
|
> This demo is built following the [Angular-CLI Wiki guide](https://github.com/angular/angular-cli/wiki/stories-universal-rendering)
|
||||||
|
|
||||||
|
We're utilizing packages from the [Angular Universal @nguniversal](https://github.com/angular/universal) repo, such as [ng-module-map-ngfactory-loader](https://github.com/angular/universal/tree/master/modules/module-map-ngfactory-loader) to enable Lazy Loading.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Static or Dynamic
|
||||||
|
This repo demonstrates the use of 2 different forms of Server Side Rendering.
|
||||||
|
|
||||||
|
**Static** Also known as "prerendering"
|
||||||
|
* Happens at build time
|
||||||
|
* Renders your application and replaces the dist index.html with a version rendered at the route `/`.
|
||||||
|
|
||||||
|
**Dynamic**
|
||||||
|
* Happens at runtime
|
||||||
|
* Uses `ngExpressEngine` to render you application on the fly at the requested url.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
* `npm install` or `yarn`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Development (Client-side only rendering)
|
||||||
|
* run `npm run start` which will start `ng serve` (project served at the standard: localhost:4200)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Production
|
||||||
|
|
||||||
|
Depending on whether you're publishing dynamic or static prerendering, run the build command, and then serve up your dist folder assets.
|
||||||
|
|
||||||
|
> **NOTE**: To deploy your **Static** site to a static hosting platform you will have to deploy the *`dist/browser`* folder, rather than the usual *`dist`*
|
||||||
|
|
||||||
|
ie: `npm run build:dynamic` or `npm run build:static`. All of the files that need to be served will be found within the `/dist` folder.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Testing Universal (dynamic or static) builds -Locally-
|
||||||
|
|
||||||
|
**Dynamic** : **`npm run start:dynamic`**
|
||||||
|
|
||||||
|
Compiles your application and spins up a Node Express to dynamically serve your Universal application on `http://localhost:4000`.
|
||||||
|
|
||||||
|
**Static** : **`npm run start:static`**
|
||||||
|
|
||||||
|
- Compiles your application and prerenders your applications files, spinning up a demo http-server so you can view it on `http://127.0.0.1:8080`
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
rm -rf node_modules/ng-openaire-library/;
|
||||||
|
npm install /home/argirok/projects/openaire/uoa-services-library/trunk/ng-openaire-library/dist/ng-openaire-library-1.0.0.tgz;
|
||||||
|
npm start;
|
|
@ -0,0 +1,62 @@
|
||||||
|
{
|
||||||
|
"name": "openaire-search",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"license": "Openaire",
|
||||||
|
"contributors": [
|
||||||
|
"Argiro Kokogiannaki <argirok@di.uoa.gr>",
|
||||||
|
"Konstantina Galouni <kgalouni@di.uoa.gr>"
|
||||||
|
],
|
||||||
|
"scripts": {
|
||||||
|
"ng": "ng",
|
||||||
|
"start": "PORT=5000 ng serve --disable-host-check --host 0.0.0.0",
|
||||||
|
"start:dynamic": "PORT=5000 npm run build:dynamic && npm run serve:dynamic",
|
||||||
|
"start:static": "npm run build:static && npm run serve:static",
|
||||||
|
"build": "ng build",
|
||||||
|
"build:client-and-server-bundles": "ng build --prod -sm --stats-json && ng build --prod --app 1 --output-hashing=false",
|
||||||
|
"build:static": "npm run build:client-and-server-bundles && npm run webpack:server && npm run generate:static",
|
||||||
|
"build:dynamic": "npm run build:client-and-server-bundles && npm run webpack:server",
|
||||||
|
"generate:static": "cd dist && node prerender",
|
||||||
|
"webpack:server": "webpack --config webpack.server.config.js --progress --colors",
|
||||||
|
"serve:static": "cd dist/browser && http-server",
|
||||||
|
"serve:dynamic": "node dist/server"
|
||||||
|
},
|
||||||
|
"private": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@angular/animations": "^4.2.4",
|
||||||
|
"@angular/common": "^4.2.4",
|
||||||
|
"@angular/compiler": "^4.2.4",
|
||||||
|
"@angular/core": "^4.2.4",
|
||||||
|
"@angular/forms": "^4.2.4",
|
||||||
|
"@angular/http": "^4.2.4",
|
||||||
|
"@angular/platform-browser": "^4.2.4",
|
||||||
|
"@angular/platform-browser-dynamic": "^4.2.4",
|
||||||
|
"@angular/platform-server": "^4.2.4",
|
||||||
|
"@angular/router": "^4.2.4",
|
||||||
|
"@nguniversal/express-engine": "^1.0.0-beta.3",
|
||||||
|
"@nguniversal/module-map-ngfactory-loader": "^1.0.0-beta.3",
|
||||||
|
"angular-datatables": "^4.4.0",
|
||||||
|
"citation-js": "^0.3.4",
|
||||||
|
"clipboard": "^1.5.16",
|
||||||
|
"core-js": "^2.4.1",
|
||||||
|
"datatables.net": "^1.10.16",
|
||||||
|
"datatables.net-dt": "^1.10.16",
|
||||||
|
"jquery": "^3.2.1",
|
||||||
|
"rxjs": "^5.4.2",
|
||||||
|
"ts-md5": "^1.2.0",
|
||||||
|
"wikidata-sdk": "^5.2.9",
|
||||||
|
"zone.js": "^0.8.14"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@angular/cli": "^1.3.0",
|
||||||
|
"@angular/compiler-cli": "^4.2.4",
|
||||||
|
"@angular/language-service": "^4.2.4",
|
||||||
|
"@types/datatables.net": "^1.10.8",
|
||||||
|
"@types/jquery": "^3.2.17",
|
||||||
|
"@types/node": "^8.0.30",
|
||||||
|
"cpy-cli": "^1.0.1",
|
||||||
|
"http-server": "^0.10.0",
|
||||||
|
"reflect-metadata": "^0.1.10",
|
||||||
|
"ts-loader": "^2.3.7",
|
||||||
|
"typescript": "~2.3.3"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,45 @@
|
||||||
|
// Load zone.js for the server.
|
||||||
|
import 'zone.js/dist/zone-node';
|
||||||
|
import 'reflect-metadata';
|
||||||
|
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
||||||
|
import { join } from 'path';
|
||||||
|
|
||||||
|
import { enableProdMode } from '@angular/core';
|
||||||
|
// Faster server renders w/ Prod mode (dev mode never needed)
|
||||||
|
enableProdMode();
|
||||||
|
|
||||||
|
// Express Engine
|
||||||
|
import { ngExpressEngine } from '@nguniversal/express-engine';
|
||||||
|
// Import module map for lazy loading
|
||||||
|
import { provideModuleMap } from '@nguniversal/module-map-ngfactory-loader';
|
||||||
|
import { renderModuleFactory } from '@angular/platform-server';
|
||||||
|
import { ROUTES } from './static.paths';
|
||||||
|
|
||||||
|
// * NOTE :: leave this as require() since this file is built Dynamically from webpack
|
||||||
|
const { AppServerModuleNgFactory, LAZY_MODULE_MAP } = require('./dist/server/main.bundle');
|
||||||
|
|
||||||
|
const BROWSER_FOLDER = join(process.cwd(), 'browser');
|
||||||
|
|
||||||
|
// Load the index.html file containing referances to your application bundle.
|
||||||
|
const index = readFileSync(join('browser', 'index.html'), 'utf8');
|
||||||
|
|
||||||
|
let previousRender = Promise.resolve();
|
||||||
|
|
||||||
|
// Iterate each route path
|
||||||
|
ROUTES.forEach(route => {
|
||||||
|
var fullPath = join(BROWSER_FOLDER, route);
|
||||||
|
|
||||||
|
// Make sure the directory structure is there
|
||||||
|
if(!existsSync(fullPath)){
|
||||||
|
mkdirSync(fullPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Writes rendered HTML to index.html, replacing the file if it already exists.
|
||||||
|
previousRender = previousRender.then(_ => renderModuleFactory(AppServerModuleNgFactory, {
|
||||||
|
document: index,
|
||||||
|
url: route,
|
||||||
|
extraProviders: [
|
||||||
|
provideModuleMap(LAZY_MODULE_MAP)
|
||||||
|
]
|
||||||
|
})).then(html => writeFileSync(join(fullPath, 'index.html'), html));
|
||||||
|
});
|
|
@ -0,0 +1,58 @@
|
||||||
|
import 'zone.js/dist/zone-node';
|
||||||
|
import 'reflect-metadata';
|
||||||
|
import { renderModuleFactory } from '@angular/platform-server';
|
||||||
|
import { enableProdMode } from '@angular/core';
|
||||||
|
|
||||||
|
import * as express from 'express';
|
||||||
|
import { join } from 'path';
|
||||||
|
import { readFileSync } from 'fs';
|
||||||
|
|
||||||
|
// Faster server renders w/ Prod mode (dev mode never needed)
|
||||||
|
enableProdMode();
|
||||||
|
|
||||||
|
// Express server
|
||||||
|
const app = express();
|
||||||
|
|
||||||
|
const PORT = process.env.PORT || 4000;
|
||||||
|
const DIST_FOLDER = join(process.cwd(), 'dist');
|
||||||
|
|
||||||
|
// Our index.html we'll use as our template
|
||||||
|
const template = readFileSync(join(DIST_FOLDER, 'browser', 'index.html')).toString();
|
||||||
|
|
||||||
|
// * NOTE :: leave this as require() since this file is built Dynamically from webpack
|
||||||
|
const { AppServerModuleNgFactory, LAZY_MODULE_MAP } = require('./dist/server/main.bundle');
|
||||||
|
|
||||||
|
// Express Engine
|
||||||
|
import { ngExpressEngine } from '@nguniversal/express-engine';
|
||||||
|
// Import module map for lazy loading
|
||||||
|
import { provideModuleMap } from '@nguniversal/module-map-ngfactory-loader';
|
||||||
|
|
||||||
|
// Our Universal express-engine (found @ https://github.com/angular/universal/tree/master/modules/express-engine)
|
||||||
|
app.engine('html', ngExpressEngine({
|
||||||
|
bootstrap: AppServerModuleNgFactory,
|
||||||
|
providers: [
|
||||||
|
provideModuleMap(LAZY_MODULE_MAP)
|
||||||
|
]
|
||||||
|
}));
|
||||||
|
|
||||||
|
app.set('view engine', 'html');
|
||||||
|
app.set('views', join(DIST_FOLDER, 'browser'));
|
||||||
|
|
||||||
|
/* - Example Express Rest API endpoints -
|
||||||
|
app.get('/api/**', (req, res) => { });
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Server static files from /browser
|
||||||
|
app.get('*.*', express.static(join(DIST_FOLDER, 'browser'), {
|
||||||
|
maxAge: '1y'
|
||||||
|
}));
|
||||||
|
|
||||||
|
// ALl regular routes use the Universal engine
|
||||||
|
app.get('*', (req, res) => {
|
||||||
|
res.render('index', { req });
|
||||||
|
});
|
||||||
|
|
||||||
|
// Start up the Node server
|
||||||
|
app.listen(PORT, () => {
|
||||||
|
console.log(`Node Express server listening on http://localhost:${PORT}`);
|
||||||
|
});
|
|
@ -0,0 +1,173 @@
|
||||||
|
import { Component, Directive, ElementRef, Renderer, ChangeDetectionStrategy, ViewEncapsulation } from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
import { OpenaireProperties} from './utils/openaireProperties';
|
||||||
|
@Component({
|
||||||
|
//changeDetection: ChangeDetectionStrategy.Default,
|
||||||
|
//encapsulation: ViewEncapsulation.Emulated,
|
||||||
|
selector: 'app-root',
|
||||||
|
styles: [`
|
||||||
|
`],
|
||||||
|
template: `
|
||||||
|
|
||||||
|
<navbar portal="explore" onlyTop=false [userMenuItems]=userMenuItems [menuItems]=menuItems [logInUrl]=logInUrl [logOutUrl]=logOutUrl></navbar>
|
||||||
|
<div class="custom-main-content" >
|
||||||
|
<main>
|
||||||
|
<router-outlet></router-outlet>
|
||||||
|
</main>
|
||||||
|
</div>
|
||||||
|
<feedback *ngIf= "isClient" portalName="Explore" [feedbackmail]=feedbackmail></feedback>
|
||||||
|
<cookie-law *ngIf= "isClient" position="bottom">
|
||||||
|
OpenAIRE uses cookies in order to function properly.<br>
|
||||||
|
Cookies are small pieces of data that websites store in your browser to allow us to give you the best browsing experience possible.
|
||||||
|
By using the OpenAIRE portal you accept our use of cookies. <a href="//ec.europa.eu/ipg/basics/legal/cookies/index_en.htm" target="_blank"> Read more <span class="uk-icon">
|
||||||
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="chevron-right" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.03" points="7 4 13 10 7 16"></polyline></svg>
|
||||||
|
</span></a>
|
||||||
|
</cookie-law>
|
||||||
|
<bottom *ngIf= "isClient"></bottom>
|
||||||
|
|
||||||
|
`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class AppComponent {
|
||||||
|
isClient:boolean = false;
|
||||||
|
feedbackmail:string = OpenaireProperties.getFeedbackMail();
|
||||||
|
|
||||||
|
|
||||||
|
userMenuItems = [
|
||||||
|
{title: "My profile",
|
||||||
|
url:"",
|
||||||
|
route:"",
|
||||||
|
needsAuthorization:false},
|
||||||
|
{title: "My claims",
|
||||||
|
url:"",
|
||||||
|
route:"/myclaims",
|
||||||
|
needsAuthorization:false},
|
||||||
|
{title: "Manage all claims",
|
||||||
|
url:"",
|
||||||
|
route:"/claims",
|
||||||
|
needsAuthorization:true
|
||||||
|
}
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
menuItems = [
|
||||||
|
{rootItem:{
|
||||||
|
id:"search",
|
||||||
|
title: "Search",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find"
|
||||||
|
|
||||||
|
},items:[
|
||||||
|
{title: "Publications",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/publications",
|
||||||
|
entitiesRequired:["publication"],
|
||||||
|
routeRequired:["/search/find/publications"]},
|
||||||
|
{title: "Research Data",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/datasets",
|
||||||
|
entitiesRequired:["dataset"],
|
||||||
|
routeRequired:["/search/find/datasets"]},
|
||||||
|
{title: "Software",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/software",
|
||||||
|
entitiesRequired:["software"],
|
||||||
|
routeRequired:["/search/find/software"]},
|
||||||
|
{title: "Projects",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/projects",
|
||||||
|
entitiesRequired:["projects"],
|
||||||
|
routeRequired:["/search/find/projects"]},
|
||||||
|
{title: "Content Providers",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/dataproviders",
|
||||||
|
entitiesRequired:["projects"],
|
||||||
|
routeRequired:["/search/find/projects"]},
|
||||||
|
{title: "Organizations",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/organizations",
|
||||||
|
entitiesRequired:["projects"],
|
||||||
|
routeRequired:["/search/find/projects"]},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{rootItem:{
|
||||||
|
id:"share",
|
||||||
|
title: "Share",
|
||||||
|
url:"",
|
||||||
|
route:""
|
||||||
|
|
||||||
|
},items:[
|
||||||
|
{title: "Publications",
|
||||||
|
url:"",
|
||||||
|
route:"/participate/deposit-publications",
|
||||||
|
entitiesRequired:["publication"],
|
||||||
|
routeRequired:["/participate/deposit-publications"]},
|
||||||
|
{title: "Research Data",
|
||||||
|
url:"",
|
||||||
|
route:"/participate/deposit-datasets",
|
||||||
|
entitiesRequired:["dataset"],
|
||||||
|
routeRequired:["/participate/deposit-datasets"]}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
{rootItem:{
|
||||||
|
id:"link",
|
||||||
|
title: "Link",
|
||||||
|
url:"",
|
||||||
|
route:"/participate/claim",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:["/participate/claim"]
|
||||||
|
|
||||||
|
},items:[]
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{rootItem:{
|
||||||
|
id:"dataproviders",
|
||||||
|
title: "Content Providers",
|
||||||
|
url:"",
|
||||||
|
route:""
|
||||||
|
|
||||||
|
|
||||||
|
},items:[
|
||||||
|
{title: "Data Policies",
|
||||||
|
url:"https://beta.openaire.eu/oa-policies-mandates",
|
||||||
|
route:"",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:[]},
|
||||||
|
{title: "Repositories",
|
||||||
|
url:"",
|
||||||
|
route:"/search/content-providers",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:["/search/content-providers"]},
|
||||||
|
{title: "Journals",
|
||||||
|
url:"",
|
||||||
|
route:"/search/journals",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:["/search/journals"]},
|
||||||
|
{title: "Registries",
|
||||||
|
url:"",
|
||||||
|
route:"/search/entity-registries",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:["/search/entity-registries"]},
|
||||||
|
{title: "Browse all",
|
||||||
|
url:"",
|
||||||
|
route:"/search/find/dataproviders",
|
||||||
|
entitiesRequired:[],
|
||||||
|
routeRequired:["/search/find/dataproviders"]}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
];
|
||||||
|
logInUrl = OpenaireProperties.getLoginURL();
|
||||||
|
logOutUrl = OpenaireProperties.getLogoutURL();
|
||||||
|
ngOnInit() {
|
||||||
|
|
||||||
|
if (typeof document !== 'undefined') {
|
||||||
|
try{
|
||||||
|
this.isClient = true;
|
||||||
|
}catch (e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,77 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from './shared/shared.module';
|
||||||
|
import { BrowserModule } from '@angular/platform-browser';
|
||||||
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
import { APP_BASE_HREF, CommonModule } from '@angular/common';
|
||||||
|
import { HttpModule } from '@angular/http';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { AppComponent } from './app.component';
|
||||||
|
|
||||||
|
import {NavigationBarModule, FeedbackModule, BottomModule, CookieLawModule, ErrorModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenaireErrorPageComponent } from './error/errorPage.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
|
||||||
|
imports: [
|
||||||
|
SharedModule,
|
||||||
|
NoopAnimationsModule,
|
||||||
|
CommonModule,
|
||||||
|
HttpModule,
|
||||||
|
ErrorModule,
|
||||||
|
NavigationBarModule, FeedbackModule, BottomModule,
|
||||||
|
CookieLawModule,
|
||||||
|
BrowserModule.withServerTransition({appId: 'my-app'}),
|
||||||
|
RouterModule.forRoot([
|
||||||
|
{ path: '', loadChildren: './home/home.module#HomeModule'},
|
||||||
|
{ path: 'home', loadChildren: './home/home.module#HomeModule'},
|
||||||
|
{ path: 'search/publication', loadChildren: './landingPages/publication/libPublication.module#LibPublicationModule' },
|
||||||
|
{ path: 'search/dataset', loadChildren: './landingPages/dataset/libDataset.module#LibDatasetModule' },
|
||||||
|
{ path: 'search/software', loadChildren: './landingPages/software/libSoftware.module#LibSoftwareModule' },
|
||||||
|
{ path: 'search/project', loadChildren: './landingPages/project/libProject.module#LibProjectModule' },
|
||||||
|
{ path: 'search/dataprovider', loadChildren: '././landingPages/dataProvider/libDataProvider.module#LibDataProviderModule' },
|
||||||
|
{ path: 'search/organization', loadChildren: './landingPages/organization/libOrganization.module#LibOrganizationModule' },
|
||||||
|
{ path: 'participate/deposit-datasets', loadChildren: './deposit/datasets/depositDatasets.module#LibDepositDatasetsModule' },
|
||||||
|
{ path: 'participate/deposit-datasets-result', loadChildren: './deposit/datasets/depositDatasetsResults.module#LibDepositDatasetsResultsModule' },
|
||||||
|
{ path: 'participate/deposit-subject-result', loadChildren: './deposit/datasets/depositBySubjectResults.module#LibDepositBySubjectResultsModule' },
|
||||||
|
{ path: 'participate/deposit-publications', loadChildren: './deposit/publications/depositPublications.module#LibDepositPublicationsModule' },
|
||||||
|
{ path: 'participate/deposit-publications-result', loadChildren: './deposit/publications/depositPublicationsResults.module#LibDepositPublicationsResultsModule' },
|
||||||
|
{ path: 'search/find', loadChildren: './searchPages/find/libSearch.module#LibMainSearchModule' },
|
||||||
|
{ path: 'search/find/publications', loadChildren: './searchPages/simple/searchPublications.module#LibSearchPublicationsModule' },
|
||||||
|
{ path: 'search/find/datasets', loadChildren: './searchPages/simple/searchDatasets.module#LibSearchDatasetsModule' },
|
||||||
|
{ path: 'search/find/software', loadChildren: './searchPages/simple/searchSoftware.module#LibSearchSoftwareModule' },
|
||||||
|
{ path: 'search/find/projects', loadChildren: './searchPages/simple/searchProjects.module#LibSearchProjectsModule' },
|
||||||
|
{ path: 'search/find/dataproviders', loadChildren: './searchPages/simple/searchDataProviders.module#LibSearchDataProvidersModule' },
|
||||||
|
{ path: 'search/find/organizations', loadChildren: './searchPages/simple/searchOrganizations.module#LibSearchOrganizationsModule' },
|
||||||
|
{ path: 'search/content-providers', loadChildren: './searchPages/dataProviders/compatibleDataProviders.module#LibCompatibleDataProvidersModule' },
|
||||||
|
{ path: 'search/content-providers-table', loadChildren: './searchPages/dataProviders/compatibleDataProvidersTable.module#CompatibleDataProvidersTableModule' },
|
||||||
|
{ path: 'search/entity-registries', loadChildren: './searchPages/dataProviders/entityRegistries.module#LibEntityRegistriesModule' },
|
||||||
|
{ path: 'search/entity-registries-table', loadChildren: './searchPages/dataProviders/entityRegistriesTable.module#EntityRegistriesTableModule' },
|
||||||
|
{ path: 'search/journals', loadChildren: './searchPages/dataProviders/journals.module#LibJournalsModule' },
|
||||||
|
{ path: 'search/journals-table', loadChildren: './searchPages/dataProviders/journalsTable.module#JournalsTableModule' },
|
||||||
|
{ path: 'search/advanced/publications', loadChildren: './searchPages/advanced/advancedSearchPublications.module#LibAdvancedSearchPublicationsModule' },
|
||||||
|
{ path: 'search/advanced/datasets', loadChildren: './searchPages/advanced/advancedSearchDatasets.module#LibAdvancedSearchDatasetsModule' },
|
||||||
|
{ path: 'search/advanced/software', loadChildren: './searchPages/advanced/advancedSearchSoftware.module#LibAdvancedSearchSoftwareModule' },
|
||||||
|
{ path: 'search/advanced/organizations', loadChildren: './searchPages/advanced/advancedSearchOrganizations.module#LibAdvancedSearchOrganizationsModule' },
|
||||||
|
{ path: 'search/advanced/dataproviders', loadChildren: './searchPages/advanced/advancedSearchDataProviders.module#LibAdvancedSearchDataProvidersModule' },
|
||||||
|
{ path: 'search/advanced/projects', loadChildren: './searchPages/advanced/advancedSearchProjects.module#LibAdvancedSearchProjectsModule' },
|
||||||
|
{ path: 'project-report', loadChildren: './landingPages/htmlProjectReport/libHtmlProjectReport.module#LibHtmlProjectReportModule' },
|
||||||
|
{ path: 'myclaims', loadChildren: './claims/myClaims/myClaims.module#LibMyClaimsModule' },
|
||||||
|
{ path: 'claims', loadChildren: './claims/claimsAdmin/claimsAdmin.module#LibClaimsAdminModule' },
|
||||||
|
{ path: 'participate/claim', loadChildren: './claims/linking/linkingGeneric.module#LibLinkingGenericModule' },
|
||||||
|
{ path: 'participate/direct-claim', loadChildren: './claims/directLinking/directLinking.module#LibDirectLinkingModule' },
|
||||||
|
{ path: 'claims-project-manager', loadChildren: './claims/claimsByToken/claimsByToken.module#LibClaimsByTokenModule' },
|
||||||
|
{ path: 'reload', loadChildren: './reload/libReload.module#LibReloadModule' },
|
||||||
|
{ path: 'user-info', loadChildren: './login/libUser.module#LibUserModule' },
|
||||||
|
{ path: 'error', component: OpenaireErrorPageComponent },
|
||||||
|
{ path: '**',pathMatch: 'full',component: OpenaireErrorPageComponent }
|
||||||
|
]),
|
||||||
|
],
|
||||||
|
declarations: [ AppComponent, OpenaireErrorPageComponent],
|
||||||
|
exports: [ AppComponent ],
|
||||||
|
providers:[ ],
|
||||||
|
bootstrap: [AppComponent]
|
||||||
|
})
|
||||||
|
//
|
||||||
|
export class AppModule {}
|
|
@ -0,0 +1,20 @@
|
||||||
|
import {NgModule} from '@angular/core';
|
||||||
|
import {ServerModule} from '@angular/platform-server';
|
||||||
|
import {ModuleMapLoaderModule} from '@nguniversal/module-map-ngfactory-loader';
|
||||||
|
|
||||||
|
import {AppModule} from './app.module';
|
||||||
|
import {AppComponent} from './app.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
// The AppServerModule should import your AppModule followed
|
||||||
|
// by the ServerModule from @angular/platform-server.
|
||||||
|
AppModule,
|
||||||
|
ServerModule,
|
||||||
|
ModuleMapLoaderModule,
|
||||||
|
],
|
||||||
|
// Since the bootstrapped component is not inherited from your
|
||||||
|
// imported AppModule, it needs to be repeated here.
|
||||||
|
bootstrap: [AppComponent],
|
||||||
|
})
|
||||||
|
export class AppServerModule {}
|
|
@ -0,0 +1,68 @@
|
||||||
|
// import { NgModule} from '@angular/core';
|
||||||
|
// import { CommonModule } from '@angular/common';
|
||||||
|
// import { FormsModule } from '@angular/forms';
|
||||||
|
// //
|
||||||
|
// import {UtilsModule} from '../utils/utils.module';
|
||||||
|
// import {ServicesModule} from '../services/services.module';
|
||||||
|
//
|
||||||
|
// import { ClaimsService} from '../services/claims.service';
|
||||||
|
// //main
|
||||||
|
// import {ClaimComponent} from './claim/claim.component';
|
||||||
|
// import {ClaimsAdminComponent} from './claims/claimsAdmin.component';
|
||||||
|
// import {MyClaimsComponent} from './myClaims/myClaims.component';
|
||||||
|
// import {LinkingHomeComponent} from './linking/linkingHome.component';
|
||||||
|
// import {LinkingComponent} from './linking/linking.component';
|
||||||
|
// import { BulkLinkingComponent } from './linking/bulkLinking.component';
|
||||||
|
//
|
||||||
|
// import {BulkClaimComponent} from './linking/bulkClaim/bulkClaim.component';
|
||||||
|
// import {ClaimsComponent} from './claim-utils/claims.component';
|
||||||
|
//
|
||||||
|
// import {ClaimContextComponent} from './claim-utils/claimContext.component';
|
||||||
|
// import {ClaimProjectsComponent} from './claim-utils/claimProject.component';
|
||||||
|
// import {ClaimResultComponent} from './claim-utils/claimResult.component';
|
||||||
|
// import {ClaimPublicationComponent} from './claim-utils/claimPublication.component';
|
||||||
|
// import {ClaimDatasetComponent} from './claim-utils/claimDataset.component';
|
||||||
|
//
|
||||||
|
// import {ClaimInsertComponent} from './linking/insertClaim/insertClaim.component';
|
||||||
|
//
|
||||||
|
// import {ClaimSelectedContextsComponent} from './linking/selected/selectedContexts.component';
|
||||||
|
// import {ClaimSelectedComponent} from './linking/selected/selected.component';
|
||||||
|
// import {ClaimSelectedDatasetsComponent} from './linking/selected/selectedDatasets.component';
|
||||||
|
// import {ClaimSelectedResultsComponent} from './linking/selected/selectedResults.component';
|
||||||
|
// import {ClaimSelectedProjectsComponent} from './linking/selected/selectedProjects.component';
|
||||||
|
// import {ClaimSelectedPublicationsComponent} from './linking/selected/selectedPublications.component';
|
||||||
|
//
|
||||||
|
// import {LinkingGenericComponent} from './linking/linkingGeneric.component';
|
||||||
|
//
|
||||||
|
// import {InlineClaimContextComponent} from './inlineClaims/inlineClaimContext.component';
|
||||||
|
// import {InlineClaimProjectComponent} from './inlineClaims/inlineClaimProject.component';
|
||||||
|
// import {InlineClaimResultComponent} from './inlineClaims/inlineClaimResult.component';
|
||||||
|
// import {ClaimEntityFormatter} from '../utils/claimEntityFormatter.component';
|
||||||
|
//
|
||||||
|
// import { Claim } from '../utils/entities/claim';
|
||||||
|
// //helpers
|
||||||
|
//
|
||||||
|
// import { ClaimRoutingModule } from './claim-routing.module';
|
||||||
|
// @NgModule({
|
||||||
|
// imports: [
|
||||||
|
// CommonModule, FormsModule,
|
||||||
|
// UtilsModule,
|
||||||
|
// ServicesModule,
|
||||||
|
// ClaimRoutingModule
|
||||||
|
//
|
||||||
|
// ],
|
||||||
|
// declarations: [
|
||||||
|
// ClaimsAdminComponent, MyClaimsComponent, ClaimComponent, ClaimsComponent,
|
||||||
|
// BulkLinkingComponent, LinkingComponent, LinkingHomeComponent, LinkingGenericComponent,
|
||||||
|
// InlineClaimContextComponent, InlineClaimProjectComponent, InlineClaimResultComponent, ClaimSelectedComponent,
|
||||||
|
// ClaimContextComponent, ClaimSelectedContextsComponent, ClaimInsertComponent, ClaimProjectsComponent, ClaimSelectedProjectsComponent,
|
||||||
|
// ClaimResultComponent, ClaimSelectedPublicationsComponent, ClaimSelectedDatasetsComponent, ClaimSelectedResultsComponent, ClaimPublicationComponent,
|
||||||
|
// ClaimDatasetComponent, BulkClaimComponent,
|
||||||
|
// ClaimEntityFormatter
|
||||||
|
// ],
|
||||||
|
// providers: [ ClaimsService ],
|
||||||
|
// exports: [
|
||||||
|
// InlineClaimContextComponent, InlineClaimProjectComponent, InlineClaimResultComponent
|
||||||
|
// ]
|
||||||
|
// })
|
||||||
|
// export class ClaimModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireClaimsAdminComponent } from './claimsAdmin.component';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled ,AdminLoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireClaimsAdminComponent, canActivate: [IsRouteEnabled, AdminLoginGuard],
|
||||||
|
data: {redirect: '/error'}, canDeactivate: [PreviousRouteRecorder]}])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ClaimsAdminRoutingModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import {Component, ViewChild, Input} from '@angular/core';
|
||||||
|
import {Location} from '@angular/common';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-claims-admin',
|
||||||
|
template: `
|
||||||
|
<claims-admin>
|
||||||
|
</claims-admin>
|
||||||
|
|
||||||
|
`,
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireClaimsAdminComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { OpenaireClaimsAdminComponent } from './claimsAdmin.component';
|
||||||
|
import { ClaimsAdminRoutingModule } from './claimsAdmin-routing.module';
|
||||||
|
import{ClaimsAdminModule, PreviousRouteRecorder, IsRouteEnabled ,AdminLoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
SharedModule,
|
||||||
|
ClaimsAdminRoutingModule,
|
||||||
|
ClaimsAdminModule
|
||||||
|
],
|
||||||
|
providers:[AdminLoginGuard, PreviousRouteRecorder,IsRouteEnabled],
|
||||||
|
declarations: [
|
||||||
|
OpenaireClaimsAdminComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibClaimsAdminModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireClaimsByTokenComponent } from './claimsByToken.component';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled ,LoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireClaimsByTokenComponent, canActivate: [IsRouteEnabled, LoginGuard],
|
||||||
|
data: {redirect: '/error'}, canDeactivate: [PreviousRouteRecorder]}])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ClaimsByTokenRoutingModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import {Component} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-claims-project-manager',
|
||||||
|
template: `
|
||||||
|
<p>TODO: fix library issue<p>
|
||||||
|
<!--claims-project-manager>
|
||||||
|
</claims-project-manager-->
|
||||||
|
`,
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireClaimsByTokenComponent {
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { OpenaireClaimsByTokenComponent } from './claimsByToken.component';
|
||||||
|
//ClaimsByTokenModule,
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled ,LoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule,
|
||||||
|
SharedModule
|
||||||
|
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
LoginGuard, PreviousRouteRecorder, IsRouteEnabled
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireClaimsByTokenComponent
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireClaimsByTokenComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibClaimsByTokenModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireDirectLinkingComponent } from './directLinking.component';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDirectLinkingComponent, canActivate: [IsRouteEnabled, LoginGuard], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder]},
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DirectLinkingRoutingModule { }
|
|
@ -0,0 +1,8 @@
|
||||||
|
import {Component, Input} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-directLinking',
|
||||||
|
template: `<directLinking></directLinking>`
|
||||||
|
})
|
||||||
|
export class OpenaireDirectLinkingComponent {
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { OpenaireDirectLinkingComponent } from './directLinking.component';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard, DirectLinkingModule} from 'ng-openaire-library';
|
||||||
|
import {DirectLinkingRoutingModule} from './directLinking-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
SharedModule, DirectLinkingModule, DirectLinkingRoutingModule
|
||||||
|
],
|
||||||
|
providers:[LoginGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
declarations: [
|
||||||
|
OpenaireDirectLinkingComponent
|
||||||
|
], exports:[OpenaireDirectLinkingComponent]
|
||||||
|
})
|
||||||
|
export class LibDirectLinkingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireLinkingComponent } from './linkingGeneric.component';
|
||||||
|
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireLinkingComponent, canActivate: [IsRouteEnabled, LoginGuard], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder]},
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LinkingRoutingModule { }
|
|
@ -0,0 +1,12 @@
|
||||||
|
import {Component, Input} from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
import {ActivatedRoute, Router} from '@angular/router';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-linking-generic',
|
||||||
|
template: `<linking-generic></linking-generic>`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireLinkingComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import {OpenaireLinkingComponent} from './linkingGeneric.component';
|
||||||
|
import {LinkingRoutingModule} from './linking-routing.module';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard, LinkingGenericModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
SharedModule, LinkingRoutingModule, LinkingGenericModule
|
||||||
|
],
|
||||||
|
providers:[LoginGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
declarations: [
|
||||||
|
OpenaireLinkingComponent
|
||||||
|
], exports:[
|
||||||
|
OpenaireLinkingComponent ]
|
||||||
|
})
|
||||||
|
export class LibLinkingGenericModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {OpenaireMyClaimsComponent } from './myClaims.component';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireMyClaimsComponent, canActivate: [IsRouteEnabled, LoginGuard],
|
||||||
|
data: {redirect: '/error'}, canDeactivate: [PreviousRouteRecorder]}])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class MyClaimsRoutingModule { }
|
|
@ -0,0 +1,21 @@
|
||||||
|
import {Component, Input} from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-my-claims',
|
||||||
|
template: `
|
||||||
|
<my-claims>
|
||||||
|
</my-claims>
|
||||||
|
`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireMyClaimsComponent {
|
||||||
|
constructor () {
|
||||||
|
|
||||||
|
}
|
||||||
|
ngOnInit() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { OpenaireMyClaimsComponent } from './myClaims.component';
|
||||||
|
import { MyClaimsRoutingModule } from './myClaims-routing.module';
|
||||||
|
import{ PreviousRouteRecorder, IsRouteEnabled, LoginGuard, MyClaimsModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
SharedModule,
|
||||||
|
MyClaimsRoutingModule,
|
||||||
|
MyClaimsModule
|
||||||
|
|
||||||
|
],
|
||||||
|
providers:[LoginGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
declarations: [
|
||||||
|
OpenaireMyClaimsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibMyClaimsModule { }
|
|
@ -0,0 +1,51 @@
|
||||||
|
// import {Component, Input} from '@angular/core';
|
||||||
|
// import {Observable} from 'rxjs/Observable';
|
||||||
|
// import { Router } from '@angular/router';
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// @Component({
|
||||||
|
// selector: 'my-claims-demo',
|
||||||
|
// template: `
|
||||||
|
// <div *ngIf="user" class="container">
|
||||||
|
// <div class="page-header">
|
||||||
|
// <h1> My Claims Demo</h1>
|
||||||
|
// </div>
|
||||||
|
// <div>
|
||||||
|
// <div class=""><a routerLink="/Linking">Linking</a></div>
|
||||||
|
// <div class=""><a routerLink]="/MyClaims">MyClaims</a></div>
|
||||||
|
// <div class=""><a routerLink="/Claims">Claims Admin</a></div>
|
||||||
|
// <p> Extra parameters for claims admin</p>
|
||||||
|
// <div class=""><a href="claims?fetchBy=User&fetchId=amelie.baecker@uni-bielefeld.de">Claims By user</a></div>
|
||||||
|
// <div class=""><a href="claims?fetchBy=Project&fetchId=corda_______::2c37878a0cede85dbbd1081bb9b4a2f8">Claims By project</a></div>
|
||||||
|
// <div class=""><a href="claims?fetchBy=Context&fetchId=egi::country::gr">Claims By context</a></div>
|
||||||
|
//
|
||||||
|
// <!-- <p>Orcid
|
||||||
|
// <p>N.M.
|
||||||
|
// 0000-0002-3477-3082
|
||||||
|
// </p>
|
||||||
|
// </p> -->
|
||||||
|
// <div class=""><a href="publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication od_______908::3a5b2885656a91307156325644e73b92</a></div>
|
||||||
|
// <!--<div class=""><a href="publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication od_______908::3a5b2885656a91307156325644e73b92</a></div>
|
||||||
|
// <div class=""><a href="publication?articleId=od_______908::3a5b2885656a91307156325644e73b92" >Publication od_______908::3a5b2885656a91307156325644e73b92</a></div>-->
|
||||||
|
// </div>
|
||||||
|
// </div>
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// `
|
||||||
|
// //(click)="changeOrderby('target')"
|
||||||
|
// //od_______908::3a5b2885656a91307156325644e73b92
|
||||||
|
//
|
||||||
|
// })
|
||||||
|
// export class MyClaimsDemoComponent {
|
||||||
|
// constructor ( private _router: Router ) {
|
||||||
|
// }
|
||||||
|
// user:string="argirok@di.uoa.gr";
|
||||||
|
// ngOnInit() {
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
// goToPub(id: number){
|
||||||
|
// this._router.navigate( ['Publication', { articleId: id}] );
|
||||||
|
// }
|
||||||
|
// }
|
|
@ -0,0 +1,17 @@
|
||||||
|
// import {Component, Input} from '@angular/core';
|
||||||
|
// import {Observable} from 'rxjs/Observable';
|
||||||
|
// import { Router } from '@angular/router';
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// @Component({
|
||||||
|
// selector: 'openaire-deposit-by-subject',
|
||||||
|
// template: `
|
||||||
|
// <deposit-by-subject>
|
||||||
|
// </deposit-by-subject>
|
||||||
|
// `
|
||||||
|
// })
|
||||||
|
//
|
||||||
|
// export class OpenaireDepositBySubjectComponent {
|
||||||
|
//
|
||||||
|
// }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireDepositBySubjectResultComponent } from './depositBySubjectResult.component';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDepositBySubjectResultComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositBySubjectResultsRoutingModule { }
|
|
@ -0,0 +1,12 @@
|
||||||
|
import {Component, Input} from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-deposit-by-subject-result',
|
||||||
|
template:`<deposit-by-subject-result></deposit-by-subject-result>`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireDepositBySubjectResultComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OpenaireDepositBySubjectResultComponent } from './depositBySubjectResult.component';
|
||||||
|
|
||||||
|
import {DepositBySubjectResultsRoutingModule} from './depositBySubjectResult-routing.module';
|
||||||
|
import {DepositBySubjectResultsModule, FreeGuard,PreviousRouteRecorder,IsRouteEnabled } from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepositBySubjectResultsModule,
|
||||||
|
DepositBySubjectResultsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
OpenaireDepositBySubjectResultComponent
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireDepositBySubjectResultComponent
|
||||||
|
],
|
||||||
|
providers: [FreeGuard,PreviousRouteRecorder, IsRouteEnabled]
|
||||||
|
})
|
||||||
|
export class LibDepositBySubjectResultsModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireDepositDatasetsComponent } from './depositDatasets.component';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDepositDatasetsComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsRoutingModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import {Component} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-deposit-datasets',
|
||||||
|
template: `
|
||||||
|
<deposit-datasets>
|
||||||
|
|
||||||
|
</deposit-datasets>
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireDepositDatasetsComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OpenaireDepositDatasetsComponent } from './depositDatasets.component';
|
||||||
|
import {DepositDatasetsRoutingModule} from './depositDatasets-routing.module';
|
||||||
|
import {DepositDatasetsModule, FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepositDatasetsModule,
|
||||||
|
DepositDatasetsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
OpenaireDepositDatasetsComponent
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireDepositDatasetsComponent
|
||||||
|
],
|
||||||
|
providers: [FreeGuard,PreviousRouteRecorder, IsRouteEnabled]
|
||||||
|
})
|
||||||
|
export class LibDepositDatasetsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import {Component} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-deposit-datasets-result',
|
||||||
|
template: `
|
||||||
|
<deposit-datasets-result></deposit-datasets-result>
|
||||||
|
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireDepositDatasetsResultComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireDepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDepositDatasetsResultComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsResultsRoutingModule { }
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OpenaireDepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
|
||||||
|
import {DepositDatasetsResultsRoutingModule} from './depositDatasetsResults-routing.module';
|
||||||
|
import {DepositDatasetsResultsModule, FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepositDatasetsResultsModule,
|
||||||
|
DepositDatasetsResultsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
OpenaireDepositDatasetsResultComponent,
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireDepositDatasetsResultComponent,
|
||||||
|
],
|
||||||
|
providers: [FreeGuard,PreviousRouteRecorder, IsRouteEnabled]
|
||||||
|
})
|
||||||
|
export class LibDepositDatasetsResultsModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireDepositPublicationsComponent } from './depositPublications.component';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDepositPublicationsComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsRoutingModule { }
|
|
@ -0,0 +1,11 @@
|
||||||
|
import {Component} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-deposit-publications',
|
||||||
|
template: `
|
||||||
|
<deposit-publications></deposit-publications>
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireDepositPublicationsComponent {
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OpenaireDepositPublicationsComponent } from './depositPublications.component';
|
||||||
|
|
||||||
|
import {DepositPublicationsRoutingModule} from './depositPublications-routing.module';
|
||||||
|
import {DepositPublicationsModule, FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepositPublicationsModule,
|
||||||
|
DepositPublicationsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireDepositPublicationsComponent
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireDepositPublicationsComponent,
|
||||||
|
],
|
||||||
|
providers: [FreeGuard,PreviousRouteRecorder, IsRouteEnabled]
|
||||||
|
})
|
||||||
|
export class LibDepositPublicationsModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OpenaireDepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDepositPublicationsResultComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsResultRoutingModule { }
|
|
@ -0,0 +1,12 @@
|
||||||
|
import {Component} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-deposit-publications-result',
|
||||||
|
template: `
|
||||||
|
<deposit-publications-result></deposit-publications-result>
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireDepositPublicationsResultComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OpenaireDepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
||||||
|
|
||||||
|
import {DepositPublicationsResultRoutingModule} from './depositPublicationsResult-routing.module';
|
||||||
|
import {DepositPublicationsResultsModule, FreeGuard,PreviousRouteRecorder,IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepositPublicationsResultsModule,
|
||||||
|
DepositPublicationsResultRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireDepositPublicationsResultComponent
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireDepositPublicationsResultComponent
|
||||||
|
],
|
||||||
|
providers: [FreeGuard,PreviousRouteRecorder, IsRouteEnabled]
|
||||||
|
})
|
||||||
|
export class LibDepositPublicationsResultsModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { Component, Input } from '@angular/core';
|
||||||
|
import { Location } from '@angular/common';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-error',
|
||||||
|
template: `
|
||||||
|
<error></error>
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireErrorPageComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{HomeComponent} from './home.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: HomeComponent, canActivate: [FreeGuard], canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class HomeRoutingModule { }
|
|
@ -0,0 +1,343 @@
|
||||||
|
|
||||||
|
|
||||||
|
<div class="image-front-topbar uk-section-default uk-position-relative" uk-scrollspy="{"target":"[uk-scrollspy-class]","cls":"uk-animation-fade","delay":false}" tm-header-transparent="light">
|
||||||
|
<div
|
||||||
|
class="mainPageSearchForm uk-background-norepeat uk-background-cover uk-background-bottom-center uk-section uk-padding-remove-bottom uk-flex uk-flex-middle" uk-height-viewport="offset-top: true;offset-bottom: 20">
|
||||||
|
<div class="uk-position-cover" style="background-color: rgba(255, 255, 255, 0.37);"></div>
|
||||||
|
<div class="uk-width-1-1">
|
||||||
|
<div class="uk-position-relative">
|
||||||
|
<div class="uk-container uk-margin-medium">
|
||||||
|
<div class="tm-header-placeholder uk-margin-medium" style="height: 84px;"></div>
|
||||||
|
<div class="search_box_bg uk-grid-large uk-flex-middle uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<div data-id="page#4">
|
||||||
|
<search-form placeholderText="Search in OA scholarly works..." link=true></search-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-container uk-container-large uk-margin-medium explore-numbers">
|
||||||
|
<div class="search_box_bg uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<h1 id="page#7" class="uk-margin uk-margin-remove-bottom uk-width-xxlarge uk-margin-auto uk-text-center uk-h2 uk-text-primary uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="font-weight: 600 !important;">
|
||||||
|
<span *ngIf="showPublications && publicationsSize" >{{publicationsSize.number}} {{publicationsSize.size}} publications - </span>
|
||||||
|
<span *ngIf="showDatasets && datasetsSize">{{datasetsSize.number}} {{datasetsSize.size}} research data - </span>
|
||||||
|
<span *ngIf="showDataProviders && datasourcesSize" >{{datasourcesSize.number}} {{datasourcesSize.size}} data sources - </span>
|
||||||
|
<span *ngIf="showProjects && fundersSize">{{fundersSize.number}} {{fundersSize.size}} funders</span>
|
||||||
|
6900 data sources - 15 funders
|
||||||
|
</h1>
|
||||||
|
<h2 *ngIf = "showPublications || showDatasets || showProjects || showDataProviders" id="page#8" class="uk-margin-medium uk-width-xlarge uk-margin-auto uk-text-center uk-h2 uk-text-primary uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="font-weight: normal !important;
|
||||||
|
color: #4E81A2 !important;">
|
||||||
|
... linked together
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-section-muted uk-section uk-section-small uk-flex uk-flex-middle" uk-scrollspy="{"target":"[uk-scrollspy-class]","cls":"uk-animation-slide-top-medium","delay":false}" uk-height-viewport="offset-top: true" style="box-sizing: border-box; min-height: 100vh; height: 100vh;" style="background-color: #1F5A88 !important;">
|
||||||
|
<div class="uk-width-1-1">
|
||||||
|
<div class="uk-container">
|
||||||
|
<div class="uk-margin-small uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<h6 id="page#12" class="uk-margin uk-text-center uk-h4 uk-text-muted uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" style="">
|
||||||
|
Learn more on OpenAIRE discovery and sharing services
|
||||||
|
</h6>
|
||||||
|
<hr class="uk-width-small uk-margin-auto uk-divider-small uk-text-center uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" style="">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-container uk-container-large uk-margin-large">
|
||||||
|
<div uk-grid="" class="uk-grid uk-grid-stack">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<div class="uk-margin uk-grid-match uk-child-width-1-1 uk-child-width-1-1@s uk-child-width-1-3@m uk-child-width-1-3@l uk-child-width-1-3@xl uk-grid-parallax uk-grid uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" uk-grid-parallax="translate: " uk-lightbox="toggle: a[data-type]" style="margin-bottom: 0px;">
|
||||||
|
<div class="uk-first-column">
|
||||||
|
<div uk-scrollspy-class="" class="el-item uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" style="">
|
||||||
|
<a routerLinkActive="uk-link" routerLink="/search/find" class="el-link uk-position-cover uk-position-z-index uk-margin-remove-adjacent" data-caption="<h4 class='uk-margin-remove'>Explore </h4><div>Search for publications-data-software and other research artefacts. See how these are linked together and how they are linked to funding and organizations.</div>
|
||||||
|
<p>View statistics on projects and institutions.</p>"></a>
|
||||||
|
<div class="uk-card-media-top"><img src="assets/explrore.jpg" sizes="(min-width: 711px) 711px, 100vw" class="el-image" alt="" width="711"></div>
|
||||||
|
<div class="uk-card-body">
|
||||||
|
<h3 class="el-title uk-margin uk-h2 uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Explore
|
||||||
|
</h3>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Discover linked open research</div>
|
||||||
|
<div class="el-content uk-margin">
|
||||||
|
<div>Search for
|
||||||
|
publications-data-software and other research artefacts. See how these
|
||||||
|
are linked together and how they are linked to funding and
|
||||||
|
organizations.
|
||||||
|
</div>
|
||||||
|
<p>View statistics on projects and institutions.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div uk-scrollspy-class="" class="el-item uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" style="">
|
||||||
|
<a routerLinkActive="uk-link" routerLink="/participate/deposit-publications" class="el-link uk-position-cover uk-position-z-index uk-margin-remove-adjacent" data-caption="<h4 class='uk-margin-remove'>Share</h4><div class="uk-margin-bottom">Select an OpenAIRE compatible repository (2.0 +) so that your research is linked to your funding information.</div>
|
||||||
|
<div>Use <a href="http://www.zenodo.org" target="_blank" rel="noopener">ZENODO</a>, a catch-all repository hosted by CERN to deposit all your research results (publications, data, software, etc.)</div>"></a>
|
||||||
|
<div class="uk-card-media-top"><img src="assets/open.jpg" sizes="(min-width: 1090px) 1090px, 100vw" class="el-image" alt="" width="1090"></div>
|
||||||
|
<div class="uk-card-body">
|
||||||
|
<h3 class="el-title uk-margin uk-h2 uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Share
|
||||||
|
</h3>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Deposit in a repository of your choice</div>
|
||||||
|
<div class="el-content uk-margin">
|
||||||
|
<div class="uk-margin-bottom">Select an OpenAIRE compatible repository (2.0 +) so that your research is linked to your funding information.</div>
|
||||||
|
<div>Use <a href="http://www.zenodo.org/" target="_blank" rel="noopener">ZENODO</a>, a catch-all repository hosted by CERN to deposit all your research results (publications, data, software, etc.)</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div uk-scrollspy-class="" class="el-item uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" style="">
|
||||||
|
<a routerLinkActive="uk-link" routerLink="/participate/claim" class="el-link uk-position-cover uk-position-z-index uk-margin-remove-adjacent" data-caption="<h4 class='uk-margin-remove'>Link</h4><div class="uk-margin-bottom">If you don't find your research results in OpenAIRE, don't worry!</div>
|
||||||
|
<div>Use our <strong>LINK OUT service</strong>, that reaches out to many external sources via APIs, to connect your research results and <em>claim</em> them to your project.</div>"></a>
|
||||||
|
<div class="uk-card-media-top"><img src="assets/link.jpg" sizes="(min-width: 693px) 693px, 100vw" class="el-image" alt="" width="693"></div>
|
||||||
|
<div class="uk-card-body">
|
||||||
|
<h3 class="el-title uk-margin uk-h2 uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Link
|
||||||
|
</h3>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Connect all your research</div>
|
||||||
|
<div class="el-content uk-margin">
|
||||||
|
<div class="uk-margin-bottom">If you don't find your research results in OpenAIRE, don't worry!</div>
|
||||||
|
<div>Use our <strong>LINK OUT service</strong>, that reaches out to many external sources via APIs, to connect your research results and <em>claim</em> them to your project.</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="uk-section-default uk-section">
|
||||||
|
<div class="uk-container">
|
||||||
|
<div class="uk-grid-small uk-margin-medium uk-grid" uk-grid="">
|
||||||
|
<div class="uk-width-expand@m uk-first-column">
|
||||||
|
<h3 class="uk-margin-small uk-h3 uk-heading-line uk-text-primary">
|
||||||
|
<span>New content providers</span>
|
||||||
|
</h3>
|
||||||
|
<div class="uk-margin-remove-vertical uk-grid-match uk-child-width-1-1 uk-child-width-1-1@m uk-child-width-1-1@l uk-child-width-1-1@xl uk-grid-small uk-grid-divider uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-first-column">
|
||||||
|
<div class="el-item uk-panel">
|
||||||
|
<h6 class="el-title uk-margin uk-h6 uk-text-primary uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Aaltodoc Publication Archive
|
||||||
|
</h6>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Aalto University</div>
|
||||||
|
<div class="el-content uk-margin"><span class="uk-label">IR</span> <span class=" uk-label uk-label-danger">Data</span> <span class="uk-label uk-label-success">OpenAIRE 3.0</span><br>
|
||||||
|
12469 datasets
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-grid-margin uk-first-column">
|
||||||
|
<div class="el-item uk-panel">
|
||||||
|
<h6 class="el-title uk-margin uk-h6 uk-text-primary uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Cambridge Server
|
||||||
|
</h6>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Cambridge Uviversity</div>
|
||||||
|
<div class="el-content uk-margin"><span class="uk-label">IR</span> <span class=" uk-label uk-label-warning">Literature</span> <span class="uk-label uk-label-success" style="background-color:orange!important">OpenAIRE 2.0</span><br>
|
||||||
|
4567 publications
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
<div class="uk-margin">
|
||||||
|
<a class="el-content uk-button uk-button-text" routerLinkActive="uk-link" routerLink="/search/find/dataproviders" >
|
||||||
|
View all
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-width-expand@m">
|
||||||
|
<h2 class="uk-h3 uk-heading-line uk-text-primary">
|
||||||
|
<span>New funders</span>
|
||||||
|
</h2>
|
||||||
|
<div class="uk-margin uk-text-meta">
|
||||||
|
Latest funding database incorporated in OpenAIRE
|
||||||
|
</div>
|
||||||
|
<div class="uk-margin-remove-vertical uk-grid-match uk-child-width-1-1 uk-child-width-1-1@m uk-child-width-1-1@l uk-child-width-1-1@xl uk-grid-small uk-grid-divider uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-first-column">
|
||||||
|
<div class="el-item uk-panel">
|
||||||
|
<h6 class="el-title uk-margin uk-h6 uk-text-primary uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Swiss National Science Foundation
|
||||||
|
</h6>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Switzerland</div>
|
||||||
|
<div class="el-content uk-margin"><span class="uk-label">OA mandate</span><br> 47.509 publications</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-grid-margin uk-first-column">
|
||||||
|
<div class="el-item uk-panel">
|
||||||
|
<h6 class="el-title uk-margin uk-h6 uk-text-primary uk-margin-remove-adjacent uk-margin-remove-bottom">
|
||||||
|
Ministry of Education, Science and Technological Development of Republic of Serbia
|
||||||
|
</h6>
|
||||||
|
<div class="el-meta uk-margin uk-text-meta">Serbia</div>
|
||||||
|
<div class="el-content uk-margin">7.942 publicatios</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-width-expand@m uk-grid-item-match">
|
||||||
|
|
||||||
|
|
||||||
|
<div class="uk-tile-secondary uk-tile uk-tile-xsmall" style="background-color: #4E81A2 !important;">
|
||||||
|
<h4 class="uk-margin-remove-top uk-h4">
|
||||||
|
Our data policies
|
||||||
|
</h4>
|
||||||
|
<ul class="uk-margin-small uk-list uk-list-large">
|
||||||
|
<li class="el-item">
|
||||||
|
<h3 class="el-title uk-h3 uk-margin-remove">Data acquisition</h3>
|
||||||
|
<div class="el-content">
|
||||||
|
<a href="/www.cnn.com">How we retrieve data, how often, what processes it goes through (aggregating cleaning, trasnforming, inferring, de-duplicating), what are the quality checks along all data processing stages.</a>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li class="el-item">
|
||||||
|
<h3 class="el-title uk-h3 uk-margin-remove">Data usage</h3>
|
||||||
|
<div class="el-content">
|
||||||
|
<a href="/www.cnn.com">Who is able to retrieve our data, what are the licences, what about specific SLAs.</a>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="uk-margin uk-margin-remove-bottom uk-text-left">
|
||||||
|
<a class="el-content uk-link-text" href="/www.cnn.com" target="_blank">
|
||||||
|
Learn more
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-section-default" uk-scrollspy="{"target":"[uk-scrollspy-class]","cls":"uk-animation-fade","delay":false}">
|
||||||
|
<div style="background-image: url('assets/sky_bw3.png');" class="uk-background-norepeat uk-background-cover uk-background-center-center uk-background-fixed uk-section uk-section-small">
|
||||||
|
<div class="uk-container">
|
||||||
|
<div class="uk-grid-divider uk-margin-remove-vertical uk-grid" uk-grid="">
|
||||||
|
<div class="uk-width-expand@m uk-width-1-2@s uk-dark uk-first-column">
|
||||||
|
<h4 class="uk-margin-medium uk-text-center uk-h4 uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
A content provider?
|
||||||
|
</h4>
|
||||||
|
<div class="custom-uk-text-light uk-margin-medium uk-width-xlarge uk-margin-auto uk-text-center uk-text-lead uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
Join OpenAIRE, use our tools and make your content more visible around the world.
|
||||||
|
</div>
|
||||||
|
<div id="page#37" class=" uk-margin-medium uk-text-center uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
<a class="providelink el-content uk-button uk-button-default uk-button-small" href="https://provide.openaire.eu" target="_blank" style="">
|
||||||
|
OpenAIRE.PROVIDE
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-width-expand@m uk-width-1-2@s uk-dark">
|
||||||
|
<h4 class="uk-margin-medium uk-text-center uk-h4 uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
A research manager?
|
||||||
|
</h4>
|
||||||
|
<div class="custom-uk-text-light uk-margin-medium uk-width-xlarge uk-margin-auto uk-text-center uk-text-lead uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
Use our monitoring services and easily track all relevant research results.
|
||||||
|
</div>
|
||||||
|
<div id="page#41" class=" uk-margin-medium uk-text-center uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
<a class="monitorlink el-content uk-button uk-button-default uk-button-small" href="https://monitor.openaire.eu" target="_blank">
|
||||||
|
OpenAIRE.MONITOR
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-width-expand@m uk-width-1-2@s uk-dark">
|
||||||
|
<h4 class="uk-margin-medium uk-text-center uk-h4 uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
A research community?
|
||||||
|
</h4>
|
||||||
|
<div class="custom-uk-text-light uk-margin-medium uk-width-xlarge uk-margin-auto uk-text-center uk-text-lead uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
Use a trusted partner to share, link, disseminate and monitor your research.
|
||||||
|
</div>
|
||||||
|
<div id="page#45" class=" uk-margin-medium uk-text-center uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
<a class="connectlink el-content uk-button uk-button-default uk-button-small" href="https://connect.openaire.eu" target="_blank">
|
||||||
|
OpenAIRE.CONNECT
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-width-expand@m uk-width-1-2@s uk-dark">
|
||||||
|
<h4 class="uk-margin-medium uk-text-center uk-h4 uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
A developer?
|
||||||
|
</h4>
|
||||||
|
<div id="page#48" class="custom-uk-text-light uk-margin-medium uk-width-xlarge uk-margin-auto uk-text-center uk-text-lead uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
Get access to OpenAIRE data and capitalize on on Europe's open linked research.
|
||||||
|
</div>
|
||||||
|
<div id="page#49" class=" uk-margin-medium uk-text-center uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" style="">
|
||||||
|
<a class="developlink el-content uk-button uk-button-default uk-button-small" href="https://develop.openaire.eu" target="_blank">
|
||||||
|
OpenAIRE.DEVELOP
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!--div class="image-front-topbar uk-section-secondary uk-position-relative" uk-scrollspy="{"target":"[uk-scrollspy-class]","cls":"uk-animation-fade","delay":false}" tm-header-transparent="light">
|
||||||
|
<div style="" class="mainPageSearchForm uk-background-norepeat uk-background-cover uk-background-fixed uk-section uk-padding-remove-bottom uk-flex uk-flex-middle" uk-height-viewport="offset-top: true;offset-bottom: ! +">
|
||||||
|
<div class="uk-position-cover"></div>
|
||||||
|
<div class="uk-width-1-1">
|
||||||
|
<div class="uk-position-relative">
|
||||||
|
<div class="uk-container uk-margin-medium">
|
||||||
|
<div class="tm-header-placeholder uk-margin-medium" style="height: 84px;"></div>
|
||||||
|
<div class="search_box_bg uk-grid-large uk-flex-middle uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<div data-id="page#4">
|
||||||
|
<search-form placeholderText="Search in OpenAIRE information space" link=true></search-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="uk-container uk-container-large uk-margin-medium">
|
||||||
|
<div class="search_box_bg uk-grid uk-grid-stack" uk-grid="">
|
||||||
|
<div class="uk-width-1-1@m uk-first-column">
|
||||||
|
<div class="search_box_bg uk-margin-large uk-margin-remove-bottom uk-text-center uk-grid-match uk-child-width-1-2 uk-child-width-1-2@s uk-child-width-1-4@m uk-child-width-1-4@l uk-child-width-1-4@xl uk-grid-collapse uk-grid-divider uk-grid uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" uk-grid="" data-id="page#7" style="">
|
||||||
|
<div *ngIf="showPublications && publicationsSize" class="uk-first-column">
|
||||||
|
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
|
||||||
|
<h2 class="el-title uk-margin uk-h2">
|
||||||
|
<span>{{publicationsSize.number}} {{publicationsSize.size}} publications</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="showDatasets && datasetsSize">
|
||||||
|
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
|
||||||
|
<h2 class="el-title uk-margin uk-h2">
|
||||||
|
<span>{{datasetsSize.number}} {{datasetsSize.size}} research data</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="showDataProviders && datasourcesSize" >
|
||||||
|
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
|
||||||
|
<h2 class="el-title uk-margin uk-h2">
|
||||||
|
<span>{{datasourcesSize.number}} {{datasourcesSize.size}} data sources</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="showProjects && fundersSize">
|
||||||
|
<div uk-scrollspy-class="" class="uk-width-medium uk-margin-auto el-item uk-panel uk-scrollspy-inview uk-animation-fade" style="">
|
||||||
|
<h2 class="el-title uk-margin uk-h2">
|
||||||
|
<span>{{fundersSize.number}} {{fundersSize.size}} funders</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div *ngIf = "showPublications || showDatasets || showProjects || showDataProviders" class="uk-margin-large uk-margin-remove-bottom uk-text-center uk-text-meta uk-scrollspy-inview uk-animation-fade" uk-scrollspy-class="" data-id="page#8" style="">
|
||||||
|
<span style="color:#fff!important; font-size:30pt!important">all linked together</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tm-main uk-container" style="min-height:200px">
|
||||||
|
<helper position="bottom"></helper>
|
||||||
|
</div-->
|
|
@ -0,0 +1,173 @@
|
||||||
|
import {Component, Input, Output, EventEmitter, ViewChild, ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
import {ActivatedRoute, Router} from '@angular/router';
|
||||||
|
import {Location} from '@angular/common';
|
||||||
|
import "rxjs/add/observable/zip";
|
||||||
|
import { Meta, MetaDefinition, ConfigurationService} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import {SearchPublicationsService, SearchDataprovidersService, SearchProjectsService, SearchDatasetsService, SearchOrganizationsService, OpenaireProperties, SearchFields} from 'ng-openaire-library';
|
||||||
|
import { ErrorCodes, RouterHelper, NumberUtils, RefineFieldResultsService, PiwikService} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'home',
|
||||||
|
templateUrl: 'home.component.html',
|
||||||
|
})
|
||||||
|
export class HomeComponent {
|
||||||
|
public piwiksub: any;
|
||||||
|
public subfunders: any;
|
||||||
|
|
||||||
|
public pageTitle = "OpenAIRE"
|
||||||
|
public keyword:string = "";
|
||||||
|
|
||||||
|
public searchFields:SearchFields = new SearchFields();
|
||||||
|
public errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
public routerHelper:RouterHelper = new RouterHelper();
|
||||||
|
|
||||||
|
public publicationsSize:any = null;
|
||||||
|
public datasetsSize:any = null;
|
||||||
|
public fundersSize:any = null;
|
||||||
|
public projectsSize:any = null;
|
||||||
|
public datasourcesSize:any = null;
|
||||||
|
|
||||||
|
showPublications:boolean= false;
|
||||||
|
showDatasets:boolean= false;
|
||||||
|
showProjects:boolean= false;
|
||||||
|
showDataProviders:boolean= false;
|
||||||
|
|
||||||
|
public subPub;public subData;public subProjects;public subOrg; public subDataPr;
|
||||||
|
|
||||||
|
constructor (
|
||||||
|
private route: ActivatedRoute,
|
||||||
|
private _router: Router,
|
||||||
|
private _searchPublicationsService: SearchPublicationsService,
|
||||||
|
private _searchDataprovidersService: SearchDataprovidersService,
|
||||||
|
private _searchProjectsService: SearchProjectsService,
|
||||||
|
private _searchDatasetsService: SearchDatasetsService,
|
||||||
|
private _searchOrganizationsService: SearchOrganizationsService,
|
||||||
|
private _refineFieldResultsService:RefineFieldResultsService,
|
||||||
|
private location: Location, private _meta: Meta,private _piwikService:PiwikService,
|
||||||
|
private config: ConfigurationService
|
||||||
|
) {
|
||||||
|
|
||||||
|
var description = "open access, research, scientific publication, European Commission, EC, FP7, ERC, Horizon 2020, H2020, search, projects ";
|
||||||
|
|
||||||
|
var title = "OpenAIRE";
|
||||||
|
|
||||||
|
var url = OpenaireProperties.getBaseLink()+this._router.url;
|
||||||
|
this._meta.setTitle(title);
|
||||||
|
this._meta.updateMeta("description", description);
|
||||||
|
this._meta.updateProperty("og:description", description);
|
||||||
|
this._meta.updateProperty("og:title", title);
|
||||||
|
this._meta.updateProperty("og:url", url);
|
||||||
|
|
||||||
|
const entityOne = this.config.isEntityEnabled("publication");
|
||||||
|
const entityTwo = this.config.isEntityEnabled("dataset");
|
||||||
|
const entityThree = this.config.isEntityEnabled("project");
|
||||||
|
const entityFour = this.config.isEntityEnabled("datasource");
|
||||||
|
const example = Observable.zip(entityOne,entityTwo,entityThree,entityFour);
|
||||||
|
|
||||||
|
// wait until all observables have emitted a value then emit all as an array
|
||||||
|
example.subscribe(data => {
|
||||||
|
this.showPublications = data[0];
|
||||||
|
this.showDatasets = data[1];
|
||||||
|
this.showProjects = data[2];
|
||||||
|
this.showDataProviders = data[3];
|
||||||
|
this.getNumbers();
|
||||||
|
});
|
||||||
|
if(OpenaireProperties.isPiwikTrackEnabled() && (typeof document !== 'undefined')){
|
||||||
|
this.piwiksub = this._piwikService.trackView("OpenAIRE").subscribe();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public ngOnInit() {
|
||||||
|
}
|
||||||
|
public ngOnDestroy() {
|
||||||
|
if(this.piwiksub){
|
||||||
|
this.piwiksub.unsubscribe();
|
||||||
|
}
|
||||||
|
if(this.subfunders){
|
||||||
|
this.subfunders.unsubscribe();
|
||||||
|
}
|
||||||
|
if(this.subPub){
|
||||||
|
this.subPub.unsubscribe();
|
||||||
|
}
|
||||||
|
if(this.subData){
|
||||||
|
this.subData.unsubscribe();
|
||||||
|
}
|
||||||
|
// if(this.subProjects){
|
||||||
|
// this.subProjects.unsubscribe();
|
||||||
|
// }
|
||||||
|
// if(this.subOrg){
|
||||||
|
// this.subOrg.unsubscribe();
|
||||||
|
// }
|
||||||
|
if(this.subDataPr){
|
||||||
|
this.subDataPr.unsubscribe();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private getNumbers() {
|
||||||
|
if(this.showPublications){
|
||||||
|
this.subPub = this._searchPublicationsService.numOfSearchPublications("").subscribe(
|
||||||
|
data => {
|
||||||
|
console.log("Count results: "+data);
|
||||||
|
if(data && data != null && data > 0 ){
|
||||||
|
this.publicationsSize = NumberUtils.roundNumber(data);
|
||||||
|
console.log("After round");
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if(this.showDatasets){
|
||||||
|
this.subData = this._searchDatasetsService.numOfSearchDatasets("").subscribe(
|
||||||
|
data => {
|
||||||
|
if(data && data != null && data > 0 ){
|
||||||
|
this.datasetsSize = NumberUtils.roundNumber(data);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if(this.showProjects){
|
||||||
|
this.subfunders = this._refineFieldResultsService.getRefineFieldsResultsByEntityName(["funder"],"project").subscribe(
|
||||||
|
data => {
|
||||||
|
|
||||||
|
console.info("Funders: "+data[1][0].title+ " values "+data[1][0].values.length+"]");
|
||||||
|
console.info("Projects: "+data[0]);
|
||||||
|
|
||||||
|
if(data[0] && data[0] > 0 ){
|
||||||
|
this.projectsSize = NumberUtils.roundNumber(data[0]);
|
||||||
|
}
|
||||||
|
if(data[1].length > 0 && data[1][0].filterId == "funder" && data[1][0].values ){
|
||||||
|
this.fundersSize = NumberUtils.roundNumber(data[1][0].values.length);
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if(this.showDataProviders){
|
||||||
|
this.subDataPr = this._searchDataprovidersService.numOfSearchDataproviders("").subscribe(
|
||||||
|
data => {
|
||||||
|
if(data && data != null && data > 0 ){
|
||||||
|
this.datasourcesSize = NumberUtils.roundNumber(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{HomeRoutingModule} from './home-routing.module';
|
||||||
|
import{HomeComponent} from './home.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule, DatasetsServiceModule,ProjectsServiceModule,PublicationsServiceModule,
|
||||||
|
OrganizationsServiceModule,SearchFormModule,PiwikServiceModule,RefineFieldResultsServiceModule,HelperModule} from 'ng-openaire-library';
|
||||||
|
import {Meta, ConfigurationService, FreeGuard, PreviousRouteRecorder,} from 'ng-openaire-library';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, RouterModule,
|
||||||
|
RefineFieldResultsServiceModule,
|
||||||
|
DataProvidersServiceModule, DatasetsServiceModule, ProjectsServiceModule,
|
||||||
|
PublicationsServiceModule,
|
||||||
|
OrganizationsServiceModule,
|
||||||
|
SearchFormModule,
|
||||||
|
PiwikServiceModule,
|
||||||
|
HomeRoutingModule,
|
||||||
|
HelperModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
HomeComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
FreeGuard, PreviousRouteRecorder, ConfigurationService, Meta
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
HomeComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class HomeModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireDataProviderComponent } from './dataProvider.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDataProviderComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DataProviderRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-dataprovider',
|
||||||
|
template: `<dataprovider></dataprovider>`,
|
||||||
|
})
|
||||||
|
export class OpenaireDataProviderComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { DataProviderModule } from 'ng-openaire-library';
|
||||||
|
import { OpenaireDataProviderComponent } from './dataProvider.component';
|
||||||
|
import {DataProviderRoutingModule} from './dataProvider-routing.module';
|
||||||
|
import { FreeGuard, PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [DataProviderModule, DataProviderRoutingModule],
|
||||||
|
declarations:[OpenaireDataProviderComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireDataProviderComponent]
|
||||||
|
})
|
||||||
|
export class LibDataProviderModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireDatasetComponent } from './dataset.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireDatasetComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DatasetRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-dataset',
|
||||||
|
template: `<dataset></dataset>`,
|
||||||
|
})
|
||||||
|
export class OpenaireDatasetComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { DatasetModule, FreeGuard, PreviousRouteRecorder, IsRouteEnabled } from 'ng-openaire-library';
|
||||||
|
import { OpenaireDatasetComponent } from './dataset.component';
|
||||||
|
|
||||||
|
import {DatasetRoutingModule} from './dataset-routing.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [DatasetModule, DatasetRoutingModule],
|
||||||
|
declarations:[OpenaireDatasetComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireDatasetComponent]
|
||||||
|
})
|
||||||
|
export class LibDatasetModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireHtmlProjectReportComponent } from './htmlProjectReport.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireHtmlProjectReportComponent , canActivate: [FreeGuard, IsRouteEnabled],canDeactivate: [PreviousRouteRecorder]}
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class HtmlProjectReportRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-htmlProjectReport',
|
||||||
|
template: `<htmlProjectReport></htmlProjectReport>`,
|
||||||
|
})
|
||||||
|
export class OpenaireHtmlProjectReportComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { HtmlProjectReportModule , FreeGuard, PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenaireHtmlProjectReportComponent } from './htmlProjectReport.component';
|
||||||
|
import {HtmlProjectReportRoutingModule} from './htmlProjectReport-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [HtmlProjectReportModule, HtmlProjectReportRoutingModule],
|
||||||
|
declarations:[OpenaireHtmlProjectReportComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireHtmlProjectReportComponent]
|
||||||
|
})
|
||||||
|
export class LibHtmlProjectReportModule { }
|
|
@ -0,0 +1,18 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { OrganizationModule, FreeGuard, PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenaireOrganizationComponent } from './organization.component';
|
||||||
|
import {OrganizationRoutingModule} from './organization-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [OrganizationModule, OrganizationRoutingModule],
|
||||||
|
declarations:[OpenaireOrganizationComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireOrganizationComponent]
|
||||||
|
})
|
||||||
|
export class LibOrganizationModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireOrganizationComponent } from './organization.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireOrganizationComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class OrganizationRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-organization',
|
||||||
|
template: `<organization></organization>`,
|
||||||
|
})
|
||||||
|
export class OpenaireOrganizationComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { ProjectModule, FreeGuard, PreviousRouteRecorder, IsRouteEnabled } from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenaireProjectComponent } from './project.component';
|
||||||
|
import {ProjectRoutingModule} from './project-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [ProjectModule, ProjectRoutingModule],
|
||||||
|
declarations:[OpenaireProjectComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireProjectComponent]
|
||||||
|
})
|
||||||
|
export class LibProjectModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OpenaireProjectComponent } from './project.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireProjectComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ProjectRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-project',
|
||||||
|
template: `<project></project>`,
|
||||||
|
})
|
||||||
|
export class OpenaireProjectComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { SharedModule } from '../../shared/shared.module';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { PublicationModule, FreeGuard, PreviousRouteRecorder, IsRouteEnabled } from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenairePublicationComponent } from './publication.component';
|
||||||
|
import {PublicationRoutingModule} from './publication-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [PublicationModule, PublicationRoutingModule],
|
||||||
|
declarations:[OpenairePublicationComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenairePublicationComponent]
|
||||||
|
})
|
||||||
|
export class LibPublicationModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {OpenairePublicationComponent } from './publication.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenairePublicationComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class PublicationRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-publication',
|
||||||
|
template: `<publication></publication>`,
|
||||||
|
})
|
||||||
|
export class OpenairePublicationComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { SoftwareModule, FreeGuard, PreviousRouteRecorder, IsRouteEnabled } from 'ng-openaire-library';
|
||||||
|
|
||||||
|
import { OpenaireSoftwareComponent } from './software.component';
|
||||||
|
import {SoftwareRoutingModule} from './software-routing.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [SoftwareModule, SoftwareRoutingModule],
|
||||||
|
declarations:[OpenaireSoftwareComponent],
|
||||||
|
providers:[FreeGuard, PreviousRouteRecorder, IsRouteEnabled],
|
||||||
|
exports:[OpenaireSoftwareComponent]
|
||||||
|
})
|
||||||
|
export class LibSoftwareModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {OpenaireSoftwareComponent } from './software.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireSoftwareComponent, canActivate: [FreeGuard, IsRouteEnabled],canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SoftwareRoutingModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import {Component, ViewChild, ElementRef} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-software',
|
||||||
|
template: `<software></software>`,
|
||||||
|
})
|
||||||
|
export class OpenaireSoftwareComponent{
|
||||||
|
constructor ( ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {OpenaireUserComponent } from './user.component';
|
||||||
|
import { UserRoutingModule } from './user-routing.module';
|
||||||
|
import {PreviousRouteRecorder, UserModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
UserRoutingModule, UserModule
|
||||||
|
|
||||||
|
],
|
||||||
|
providers:[PreviousRouteRecorder],
|
||||||
|
declarations: [
|
||||||
|
OpenaireUserComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibUserModule { }
|
|
@ -0,0 +1,15 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {OpenaireUserComponent } from './user.component';
|
||||||
|
import {PreviousRouteRecorder} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireUserComponent, canDeactivate: [PreviousRouteRecorder]},
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class UserRoutingModule { }
|
|
@ -0,0 +1,11 @@
|
||||||
|
import {Component, ElementRef} from '@angular/core';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-user',
|
||||||
|
template: `<user></user>`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireUserComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{ReloadModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, RouterModule, ReloadModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibReloadModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
import{OpenaireAdvancedSearchDataProvidersComponent} from './advancedSearchDataProviders.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchDataProvidersComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDataProvidersRoutingModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-dataprovider',
|
||||||
|
template: `
|
||||||
|
<advanced-search-dataprovider>
|
||||||
|
</advanced-search-dataprovider>
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchDataProvidersComponent {
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchDataProvidersRoutingModule} from './advancedSearchDataProviders-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchDataProvidersComponent} from './advancedSearchDataProviders.component';
|
||||||
|
import {AdvancedSearchDataProvidersModule,FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchDataProvidersRoutingModule,
|
||||||
|
AdvancedSearchDataProvidersModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchDataProvidersComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchDataProvidersComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchDataProvidersModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireAdvancedSearchDatasetsComponent} from './advancedSearchDatasets.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchDatasetsComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDatasetsRoutingModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-datasets',
|
||||||
|
template: `
|
||||||
|
<advanced-search-datasets>
|
||||||
|
</advanced-search-datasets>
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchDatasetsComponent {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchDatasetsRoutingModule} from './advancedSearchDatasets-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchDatasetsComponent} from './advancedSearchDatasets.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {AdvancedSearchDatasetsModule,FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchDatasetsModule,
|
||||||
|
AdvancedSearchDatasetsRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchDatasetsComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchDatasetsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchDatasetsModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireAdvancedSearchOrganizationsComponent} from './advancedSearchOrganizations.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchOrganizationsComponent , canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
},canDeactivate: [PreviousRouteRecorder]}
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchOrganizationsRoutingModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-organizations',
|
||||||
|
template: `
|
||||||
|
<advanced-search-organizations>
|
||||||
|
</advanced-search-organizations>
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchOrganizationsComponent {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchOrganizationsRoutingModule} from './advancedSearchOrganizations-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchOrganizationsComponent} from './advancedSearchOrganizations.component';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import {AdvancedSearchOrganizationsModule, FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchOrganizationsModule,
|
||||||
|
AdvancedSearchOrganizationsRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchOrganizationsComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchOrganizationsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchOrganizationsModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireAdvancedSearchProjectsComponent} from './advancedSearchProjects.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchProjectsComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchProjectsRoutingModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-projects',
|
||||||
|
template: `
|
||||||
|
<advanced-search-projects>
|
||||||
|
</advanced-search-projects>
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchProjectsComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchProjectsRoutingModule} from './advancedSearchProjects-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchProjectsComponent} from './advancedSearchProjects.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {AdvancedSearchProjectsModule, FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchProjectsModule,
|
||||||
|
AdvancedSearchProjectsRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchProjectsComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchProjectsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchProjectsModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireAdvancedSearchPublicationsComponent} from './advancedSearchPublications.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchPublicationsComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPublicationsRoutingModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-publications',
|
||||||
|
template: `
|
||||||
|
<advanced-search-publications>
|
||||||
|
</advanced-search-publications>
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchPublicationsComponent {
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchPublicationsRoutingModule} from './advancedSearchPublications-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchPublicationsComponent} from './advancedSearchPublications.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {AdvancedSearchPublicationsModule, FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchPublicationsModule,
|
||||||
|
AdvancedSearchPublicationsRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchPublicationsComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchPublicationsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchPublicationsModule { }
|
|
@ -0,0 +1,15 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireAdvancedSearchSoftwareComponent} from './advancedSearchSoftware.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireAdvancedSearchSoftwareComponent, canActivate: [FreeGuard],canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchSoftwareRoutingModule { }
|
|
@ -0,0 +1,15 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-advanced-search-software',
|
||||||
|
template: `
|
||||||
|
<advanced-search-software>
|
||||||
|
</advanced-search-software>
|
||||||
|
|
||||||
|
`
|
||||||
|
})
|
||||||
|
|
||||||
|
export class OpenaireAdvancedSearchSoftwareComponent {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchSoftwareRoutingModule} from './advancedSearchSoftware-routing.module';
|
||||||
|
import{OpenaireAdvancedSearchSoftwareComponent} from './advancedSearchSoftware.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {AdvancedSearchSoftwareModule, FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
AdvancedSearchSoftwareModule,
|
||||||
|
AdvancedSearchSoftwareRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireAdvancedSearchSoftwareComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OpenaireAdvancedSearchSoftwareComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibAdvancedSearchSoftwareModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireSearchCompatibleDataprovidersComponent} from './compatibleDataProviders.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireSearchCompatibleDataprovidersComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class CompatibleDataProvidersRoutingModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
import { ActivatedRoute} from '@angular/router';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-search-content-providers',
|
||||||
|
template: `
|
||||||
|
|
||||||
|
<search-content-providers>
|
||||||
|
</search-content-providers>
|
||||||
|
|
||||||
|
`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireSearchCompatibleDataprovidersComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ CompatibleDataProvidersRoutingModule} from './compatibleDataProviders-routing.module';
|
||||||
|
import{OpenaireSearchCompatibleDataprovidersComponent} from './compatibleDataProviders.component';
|
||||||
|
|
||||||
|
|
||||||
|
import { FreeGuard,PreviousRouteRecorder, IsRouteEnabled, CompatibleDataProvidersModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
CompatibleDataProvidersModule,
|
||||||
|
CompatibleDataProvidersRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireSearchCompatibleDataprovidersComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireSearchCompatibleDataprovidersComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibCompatibleDataProvidersModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchCompatibleDataprovidersTableComponent} from './compatibleDataProvidersTable.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchCompatibleDataprovidersTableComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class CompatibleDataProvidersTableRoutingModule { }
|
|
@ -0,0 +1,192 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
import {Location} from '@angular/common';
|
||||||
|
import { ActivatedRoute} from '@angular/router';
|
||||||
|
import {SearchPageTableViewComponent } from '../searchUtils/searchPageTableView.component';
|
||||||
|
import {OpenaireProperties, ErrorCodes, SearchFields,SearchDataprovidersService, SearchUtilsClass, Filter, Value } from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'search-content-providers-table',
|
||||||
|
template: `
|
||||||
|
|
||||||
|
<search-page-table pageTitle="OpenAIRE Content Providers Table"
|
||||||
|
type="content providers" entityType="dataprovider" [(filters)] = "filters"
|
||||||
|
[(results)] = "results" [(searchUtils)] = "searchUtils"
|
||||||
|
[showResultCount]=false
|
||||||
|
[disableForms]="disableForms"
|
||||||
|
[searchViewLink]="'/search/content-providers'"
|
||||||
|
searchFormClass="compatibleDatasourcesTableSearchForm"
|
||||||
|
formPlaceholderText="Search for OpenAIRE Content Providers">
|
||||||
|
</search-page-table>
|
||||||
|
`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class SearchCompatibleDataprovidersTableComponent {
|
||||||
|
private errorCodes: ErrorCodes;
|
||||||
|
|
||||||
|
public results =[];
|
||||||
|
public filters =[];
|
||||||
|
public baseUrl:string;
|
||||||
|
public searchUtils:SearchUtilsClass = new SearchUtilsClass();
|
||||||
|
public sub: any; public subResults: any;
|
||||||
|
public _location:Location;
|
||||||
|
public searchFields:SearchFields = new SearchFields();
|
||||||
|
public refineFields: string[] = this.searchFields.COMPATIBLE_DATAPROVIDER_FIELDS;
|
||||||
|
|
||||||
|
/*public CSV: any = { "columnNames": [ "Title", "Type", "Coutries", "Compatibility" ],
|
||||||
|
"export":[]
|
||||||
|
};
|
||||||
|
public CSVDownloaded = false;
|
||||||
|
public csvParams: string;
|
||||||
|
public resourcesQuery = "&query=((oaftype exact datasource) not(datasourcecompatibilityid = UNKNOWN) not(datasourcecompatibilityid = notCompatible) not(datasourcetypeuiid = other))";*/
|
||||||
|
|
||||||
|
public disableForms: boolean = false;
|
||||||
|
|
||||||
|
@ViewChild (SearchPageTableViewComponent) searchPage : SearchPageTableViewComponent ;
|
||||||
|
|
||||||
|
constructor (private route: ActivatedRoute, private _searchDataprovidersService: SearchDataprovidersService ) {
|
||||||
|
this.errorCodes = new ErrorCodes();
|
||||||
|
this.searchUtils.status = this.errorCodes.LOADING;
|
||||||
|
this.baseUrl = OpenaireProperties.getLinkToSearchCompatibleDataProvidersTable();
|
||||||
|
}
|
||||||
|
|
||||||
|
public ngOnInit() {
|
||||||
|
this.searchPage.refineFields = this.refineFields;
|
||||||
|
this.sub = this.route.queryParams.subscribe(params => {
|
||||||
|
this.searchUtils.keyword = (params['keyword']?params['keyword']:'');
|
||||||
|
//this.searchUtils.page = (params['page']=== undefined)?1:+params['page'];
|
||||||
|
this.filters = this.createFilters();
|
||||||
|
this.searchPage.getParametersFromUrl(params);
|
||||||
|
this._getResults();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public ngOnDestroy() {
|
||||||
|
if(this.sub){
|
||||||
|
this.sub.unsubscribe();
|
||||||
|
}
|
||||||
|
if(this.subResults){
|
||||||
|
this.subResults.unsubscribe();
|
||||||
|
} }
|
||||||
|
private _getResults(){
|
||||||
|
//this.csvParams = this.resourcesQuery+"&type=datasources";
|
||||||
|
|
||||||
|
//var errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
this.searchUtils.status = this.errorCodes.LOADING;
|
||||||
|
this.disableForms = true;
|
||||||
|
this.results = [];
|
||||||
|
this.searchUtils.totalResults = 0;
|
||||||
|
|
||||||
|
let size: number = 0;
|
||||||
|
this.subResults = this._searchDataprovidersService.searchCompatibleDataprovidersTable().subscribe(
|
||||||
|
data => {
|
||||||
|
size = data;
|
||||||
|
if(size > 0) {
|
||||||
|
this.subResults = this._searchDataprovidersService.searchCompatibleDataproviders("", null, 1, size, []).subscribe(
|
||||||
|
data => {
|
||||||
|
this.searchUtils.totalResults = data[0];
|
||||||
|
console.info("search Content Providers [total results:"+this.searchUtils.totalResults+"]");
|
||||||
|
this.results = data[1];
|
||||||
|
|
||||||
|
this.searchPage.checkSelectedFilters(this.filters);
|
||||||
|
|
||||||
|
//var errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
this.searchUtils.status = this.errorCodes.DONE;
|
||||||
|
if(this.searchUtils.totalResults == 0 ){
|
||||||
|
this.searchUtils.status = this.errorCodes.NONE;
|
||||||
|
}
|
||||||
|
this.disableForms = false;
|
||||||
|
this.searchPage.triggerInitialLoad();
|
||||||
|
this.searchPage.transform(this.results);
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
//TODO check erros (service not available, bad request)
|
||||||
|
// if( ){
|
||||||
|
// this.searchUtils.status = ErrorCodes.ERROR;
|
||||||
|
// }
|
||||||
|
//var errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
//this.searchUtils.status = errorCodes.ERROR;
|
||||||
|
if(err.status == '404') {
|
||||||
|
this.searchUtils.status = this.errorCodes.NOT_FOUND;
|
||||||
|
} else if(err.status == '500') {
|
||||||
|
this.searchUtils.status = this.errorCodes.ERROR;
|
||||||
|
} else {
|
||||||
|
this.searchUtils.status = this.errorCodes.NOT_AVAILABLE;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.disableForms = false;
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
this.searchPage.checkSelectedFilters(this.filters);
|
||||||
|
|
||||||
|
//var errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
this.searchUtils.status = this.errorCodes.NONE;
|
||||||
|
this.disableForms = false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
err => {
|
||||||
|
console.log(err);
|
||||||
|
//TODO check erros (service not available, bad request)
|
||||||
|
// if( ){
|
||||||
|
// this.searchUtils.status = ErrorCodes.ERROR;
|
||||||
|
// }
|
||||||
|
//var errorCodes:ErrorCodes = new ErrorCodes();
|
||||||
|
//this.searchUtils.status = errorCodes.ERROR;
|
||||||
|
if(err.status == '404') {
|
||||||
|
this.searchUtils.status = this.errorCodes.NOT_FOUND;
|
||||||
|
} else if(err.status == '500') {
|
||||||
|
this.searchUtils.status = this.errorCodes.ERROR;
|
||||||
|
} else {
|
||||||
|
this.searchUtils.status = this.errorCodes.NOT_AVAILABLE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
private setFilters(){
|
||||||
|
//TODO set filters from
|
||||||
|
}
|
||||||
|
|
||||||
|
private createFilters():Filter[] {
|
||||||
|
var filter_names=["Type","Compatibility Level"];
|
||||||
|
var filter_ids=["datasourcetypeuiid","datasourcecompatibilityname"];
|
||||||
|
var searchFields = new SearchFields();
|
||||||
|
var filter_original_ids = searchFields.COMPATIBLE_DATAPROVIDER_FIELDS;
|
||||||
|
var value_names=[
|
||||||
|
/*[
|
||||||
|
"Institutional Publication Repository","Thematic Publication Repository", "Other Publication Repository",
|
||||||
|
"Institutional Repositories Aggregators",
|
||||||
|
"Thematic Repositories Aggregators", "Other Repositories Aggregators",
|
||||||
|
"Data Repositories", "Data Repositories Aggregators", "Journals", "Journals Aggregators", "CRIS Systems", "Publication Catalogues"],
|
||||||
|
*/
|
||||||
|
[
|
||||||
|
"Institutional Repository", "Thematic Repository", "Publication Repository",
|
||||||
|
"Institutional Repository Aggregator",
|
||||||
|
"Thematic Repositories Aggregators", "Publication Repository Aggregator",
|
||||||
|
"Data Repository", "Data Repository Aggregator", "CRIS Systems", "Publication Catalogue"],
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
["OpenAIRE Basic (DRIVER OA)","OpenAIRE 2.0 (EC funding)", "OpenAIRE 2.0+ (DRIVER OA, EC funding)", "OpenAIRE 3.0 (OA, funding)","OpenAIRE Data (funded, referenced datasets)"]];
|
||||||
|
|
||||||
|
var value_original_ids=[
|
||||||
|
["pubsrepository::institutional","pubsrepository::thematic", "pubsrepository::unknown", "aggregator::pubsrepository::institutional","aggregator::pubsrepository::thematic","aggregator::pubsrepository::unknown",
|
||||||
|
"datarepository::unknown", "aggregator::datarepository", "cris", "pubscatalogue::unknown"],
|
||||||
|
//["driver","openaire2.0", "driver-openaire2.0", "openaire3.0","openaire2.0_data"]
|
||||||
|
["OpenAIRE Basic (DRIVER OA)","OpenAIRE 2.0 (EC funding)", "OpenAIRE 2.0+ (DRIVER OA, EC funding)", "OpenAIRE 3.0 (OA, funding)","OpenAIRE Data (funded, referenced datasets)"]];
|
||||||
|
var filters: Filter[] =[];
|
||||||
|
for(var i =0 ; i < filter_names.length;i++){
|
||||||
|
var values:Value[] = [];
|
||||||
|
for(var j =0 ; j < value_names[i].length;j++){
|
||||||
|
var value:Value = {name: value_names[i][j], id: value_original_ids[i][j], number:j, selected:false}
|
||||||
|
values.push(value);
|
||||||
|
}
|
||||||
|
var filter:Filter = {title: filter_names[i], filterId: filter_ids[i], originalFilterId: filter_original_ids[i], values : values, countSelectedValues:0, "filterOperator": 'or' };
|
||||||
|
filters.push(filter);
|
||||||
|
}
|
||||||
|
return filters;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{SearchCompatibleDataprovidersTableComponent} from './compatibleDataProvidersTable.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {SearchPageTableViewModule} from '../searchUtils/searchPageTableView.module';
|
||||||
|
import {CompatibleDataProvidersTableRoutingModule} from './compatibleDataProvidersTable-routing.module';
|
||||||
|
import { FreeGuard,PreviousRouteRecorder, IsRouteEnabled, SearchFormModule, DataProvidersServiceModule} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
SearchFormModule, SearchPageTableViewModule, CompatibleDataProvidersTableRoutingModule
|
||||||
|
|
||||||
|
], providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
declarations: [
|
||||||
|
SearchCompatibleDataprovidersTableComponent
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchCompatibleDataprovidersTableComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class CompatibleDataProvidersTableModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{OpenaireSearchEntityRegistriesComponent} from './entityRegistries.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OpenaireSearchEntityRegistriesComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class EntityRegistriesRoutingModule { }
|
|
@ -0,0 +1,16 @@
|
||||||
|
import {Component, Input, ViewChild} from '@angular/core';
|
||||||
|
import { ActivatedRoute} from '@angular/router';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'openaire-search-entity-registries',
|
||||||
|
template: `
|
||||||
|
|
||||||
|
<search-entity-registries>
|
||||||
|
</search-entity-registries>
|
||||||
|
|
||||||
|
`
|
||||||
|
|
||||||
|
})
|
||||||
|
export class OpenaireSearchEntityRegistriesComponent {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ EntityRegistriesRoutingModule} from './entityRegistries-routing.module';
|
||||||
|
import{OpenaireSearchEntityRegistriesComponent} from './entityRegistries.component';
|
||||||
|
|
||||||
|
import {EntityRegistriesModule, FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
EntityRegistriesModule, EntityRegistriesRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OpenaireSearchEntityRegistriesComponent
|
||||||
|
],
|
||||||
|
providers:[FreeGuard, IsRouteEnabled],
|
||||||
|
exports: [
|
||||||
|
OpenaireSearchEntityRegistriesComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class LibEntityRegistriesModule { }
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchEntityRegistriesTableComponent} from './entityRegistriesTable.component';
|
||||||
|
import {FreeGuard,PreviousRouteRecorder, IsRouteEnabled} from 'ng-openaire-library';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchEntityRegistriesTableComponent, canActivate: [FreeGuard, IsRouteEnabled], data: {
|
||||||
|
redirect: '/error'
|
||||||
|
}, canDeactivate: [PreviousRouteRecorder] }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class EntityRegistriesTableRoutingModule { }
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue