MERGE uoa-services-portal lazy-routes Branch 45587:45834 into trunk
git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-portal/trunk@45855 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
parent
93362b727d
commit
e60899bdcc
|
@ -53,14 +53,17 @@ constructor(element: ElementRef, renderer: Renderer) {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
- The application runs XHR requests on the server & once again on the Client-side (when the application bootstraps)
|
- The application runs XHR requests on the server & once again on the Client-side (when the application bootstraps)
|
||||||
- Use a [UniversalCache](https://github.com/angular/universal-starter/blob/master/src/+app/shared/api.service.ts#L47-L71) instead of regular Http, to save certain requests so they aren't re-ran again on the Client.
|
- Use a [UniversalCache](https://github.com/angular/universal-starter/blob/master/src/%2Bapp/shared/model/model.service.ts#L34-L50) instead of regular Http, to save certain requests so they aren't re-ran again on the Client. ([Example useage here](https://github.com/angular/universal-starter/blob/cc71e2d5b2d783f2bb52eebd1b5c6fa0ba23f08a/src/%2Bapp/%2Bhome/home.component.ts#L22-L24))
|
||||||
- Know the difference between attributes and properties in relation to the DOM.
|
- Know the difference between attributes and properties in relation to the DOM.
|
||||||
- Keep your directives stateless as much as possible. For stateful directives, you may need to provide an attribute that reflects the corresponding property with an initial string value such as url in img tag. For our native `<img src="">` element the src attribute is reflected as the src property of the element type HTMLImageElement.
|
- Keep your directives stateless as much as possible. For stateful directives, you may need to provide an attribute that reflects the corresponding property with an initial string value such as url in img tag. For our native `<img src="">` element the src attribute is reflected as the src property of the element type HTMLImageElement.
|
||||||
|
|
||||||
### Brotli Compression Support
|
### Brotli Compression Support
|
||||||
|
|
||||||
To enable Brotli compression for server response with fallback for gzip replace the following code from src/server.aot.ts
|
To enable Brotli compression for server response with fallback for gzip. Install the following packages
|
||||||
|
```
|
||||||
|
npm install --save-dev iltorb accepts @types/accepts express-interceptor memory-cache @types/memory-cache
|
||||||
|
```
|
||||||
|
and replace the following code from src/server.aot.ts.
|
||||||
```
|
```
|
||||||
import * as compression from 'compression';
|
import * as compression from 'compression';
|
||||||
|
|
||||||
|
@ -99,8 +102,11 @@ app.use(interceptor((req, res)=>({
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
const { output, encoding } = mcache.get(key);
|
const { output, encoding } = mcache.get(key);
|
||||||
|
if(encodings.has(encoding)){
|
||||||
res.setHeader('Content-Encoding', encoding);
|
res.setHeader('Content-Encoding', encoding);
|
||||||
send(output);
|
send(output);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
send(output);
|
send(output);
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,21 +77,16 @@
|
||||||
"@types/express": "^4.0.32",
|
"@types/express": "^4.0.32",
|
||||||
"@types/express-serve-static-core": "^4.0.33",
|
"@types/express-serve-static-core": "^4.0.33",
|
||||||
"@types/hammerjs": "^2.0.32",
|
"@types/hammerjs": "^2.0.32",
|
||||||
"@types/memory-cache": "0.0.29",
|
|
||||||
"@types/mime": "0.0.28",
|
"@types/mime": "0.0.28",
|
||||||
"@types/node": "^6.0.38",
|
"@types/node": "^6.0.38",
|
||||||
"@types/serve-static": "^1.7.27",
|
"@types/serve-static": "^1.7.27",
|
||||||
"@types/webfontloader": "^1.6.27",
|
"@types/webfontloader": "^1.6.27",
|
||||||
"@ngtools/webpack": "~1.1.7",
|
"@ngtools/webpack": "~1.1.7",
|
||||||
"accepts": "^1.3.3",
|
|
||||||
"angular2-template-loader": "^0.4.0",
|
"angular2-template-loader": "^0.4.0",
|
||||||
"awesome-typescript-loader": "^2.2.4",
|
"awesome-typescript-loader": "^2.2.4",
|
||||||
"cookie-parser": "^1.4.3",
|
"cookie-parser": "^1.4.3",
|
||||||
"express-interceptor": "^1.2.0",
|
|
||||||
"iltorb": "^1.0.13",
|
|
||||||
"imports-loader": "^0.6.5",
|
"imports-loader": "^0.6.5",
|
||||||
"json-loader": "^0.5.4",
|
"json-loader": "^0.5.4",
|
||||||
"memory-cache": "^0.1.6",
|
|
||||||
"nodemon": "^1.10.0",
|
"nodemon": "^1.10.0",
|
||||||
"raw-loader": "^0.5.1",
|
"raw-loader": "^0.5.1",
|
||||||
"reflect-metadata": "0.1.8",
|
"reflect-metadata": "0.1.8",
|
||||||
|
|
|
@ -1,10 +1,144 @@
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
export function getPublicationModule() {
|
||||||
|
return System.import('./landingPages/publication/publication.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'PublicationModuleNgFactory' : 'PublicationModule')]);
|
||||||
|
}
|
||||||
|
export function getDatasetModule() {
|
||||||
|
return System.import('./landingPages/dataset/dataset.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DatasetModuleNgFactory' : 'DatasetModule')]);
|
||||||
|
}
|
||||||
|
export function getPersonModule() {
|
||||||
|
return System.import('./landingPages/person/person.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'PersonModuleNgFactory' : 'PersonModule')]);
|
||||||
|
}
|
||||||
|
export function getProjectModule() {
|
||||||
|
return System.import('./landingPages/project/project.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'ProjectModuleNgFactory' : 'ProjectModule')]);
|
||||||
|
}
|
||||||
|
export function getOrganizationModule() {
|
||||||
|
return System.import('./landingPages/organization/organization.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'OrganizationModuleNgFactory' : 'OrganizationModule')]);
|
||||||
|
}
|
||||||
|
export function getDepositDatasetsModule() {
|
||||||
|
return System.import('./deposit/datasets/depositDatasets.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DepositDatasetsModuleNgFactory' : 'DepositDatasetsModule')]);
|
||||||
|
}
|
||||||
|
export function getDepositDatasetsResultsModule() {
|
||||||
|
return System.import('./deposit/datasets/depositDatasetsResults.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DepositDatasetsResultsModuleNgFactory' : 'DepositDatasetsResultsModule')]);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getDepositPublicationsModule() {
|
||||||
|
return System.import('./deposit/publications/depositPublications.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DepositPublicationsModuleNgFactory' : 'DepositPublicationsModule')]);
|
||||||
|
}
|
||||||
|
export function getDepositPublicationsResultsModule() {
|
||||||
|
return System.import('./deposit/publications/depositPublicationsResults.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DepositPublicationsResultsModuleNgFactory' : 'DepositPublicationsResultsModule')]);
|
||||||
|
}
|
||||||
|
export function getDataProviderModule() {
|
||||||
|
return System.import('./landingPages/dataProvider/dataProvider.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'DataProviderModuleNgFactory' : 'DataProviderModule')]);
|
||||||
|
}
|
||||||
|
export function getMainSearchModule() {
|
||||||
|
return System.import('./searchPages/find/mainSearch.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'MainSearchModuleNgFactory' : 'MainSearchModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchPublicationsModule() {
|
||||||
|
return System.import('./searchPages/simple/searchPublications.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchPublicationsModuleNgFactory' : 'SearchPublicationsModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchDatasetsModule() {
|
||||||
|
return System.import('./searchPages/simple/searchDatasets.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchDatasetsModuleNgFactory' : 'SearchDatasetsModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchProjectsModule() {
|
||||||
|
return System.import('./searchPages/simple/searchProjects.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchProjectsModuleNgFactory' : 'SearchProjectsModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchOrganizationsModule() {
|
||||||
|
return System.import('./searchPages/simple/searchOrganizations.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchOrganizationsModuleNgFactory' : 'SearchOrganizationsModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchDataProvidersModule() {
|
||||||
|
return System.import('./searchPages/simple/searchDataProviders.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchDataProvidersModuleNgFactory' : 'SearchDataProvidersModule')]);
|
||||||
|
}
|
||||||
|
export function getSearchPeopleModule() {
|
||||||
|
return System.import('./searchPages/simple/searchPeople.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'SearchPeopleModuleNgFactory' : 'SearchPeopleModule')]);
|
||||||
|
}
|
||||||
|
export function getCompatibleDataProvidersModule() {
|
||||||
|
return System.import('./searchPages/dataProviders/compatibleDataProviders.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'CompatibleDataProvidersModuleNgFactory' : 'CompatibleDataProvidersModule')]);
|
||||||
|
}
|
||||||
|
export function getEntityRegistriesModule() {
|
||||||
|
return System.import('./searchPages/dataProviders/entityRegistries.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'EntityRegistriesModuleNgFactory' : 'EntityRegistriesModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchPublicationsModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchPublications.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchPublicationsModuleNgFactory' : 'AdvancedSearchPublicationsModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchDatasetsModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchDatasets.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchDatasetsModuleNgFactory' : 'AdvancedSearchDatasetsModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchOrganizationsModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchOrganizations.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchOrganizationsModuleNgFactory' : 'AdvancedSearchOrganizationsModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchDataProvidersModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchDataProviders.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchDataProvidersModuleNgFactory' : 'AdvancedSearchDataProvidersModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchProjectsModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchProjects.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchProjectsModuleNgFactory' : 'AdvancedSearchProjectsModule')]);
|
||||||
|
}
|
||||||
|
export function getAdvancedSearchPeopleModule() {
|
||||||
|
return System.import('./searchPages/advanced/advancedSearchPeople.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'AdvancedSearchPeopleModuleNgFactory' : 'AdvancedSearchPeopleModule')]);
|
||||||
|
}
|
||||||
|
export function gethtmlProjectReportModule() {
|
||||||
|
return System.import('./landingPages/htmlProjectReport/htmlProjectReport.module' + (process.env.AOT ? '.ngfactory' : ''))
|
||||||
|
.then(mod => mod[(process.env.AOT ? 'HtmlProjectReportModuleNgFactory' : 'HtmlProjectReportModule')]);
|
||||||
|
}
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
RouterModule.forChild([
|
RouterModule.forChild([
|
||||||
{ path: '', redirectTo: '/search/find', pathMatch: 'full' }
|
{ path: '', redirectTo: '/search/find', pathMatch: 'full' },
|
||||||
|
{ path: 'search/publication', loadChildren: getPublicationModule },
|
||||||
|
{ path: 'search/dataset', loadChildren: getDatasetModule },
|
||||||
|
{ path: 'search/person', loadChildren: getPersonModule },
|
||||||
|
{ path: 'search/organization', loadChildren: getOrganizationModule },
|
||||||
|
{ path: 'search/project', loadChildren: getProjectModule },
|
||||||
|
{ path: 'search/dataprovider', loadChildren: getDataProviderModule },
|
||||||
|
{ path: 'deposit-datasets', loadChildren: getDepositDatasetsModule },
|
||||||
|
{ path: 'deposit-datasets-result', loadChildren: getDepositDatasetsResultsModule },
|
||||||
|
{ path: 'deposit-publications', loadChildren: getDepositPublicationsModule },
|
||||||
|
{ path: 'deposit-publications-result', loadChildren: getDepositPublicationsResultsModule },
|
||||||
|
{ path: 'search/find', loadChildren: getMainSearchModule },
|
||||||
|
{ path: 'search/find/publications', loadChildren: getSearchPublicationsModule },
|
||||||
|
{ path: 'search/find/datasets', loadChildren: getSearchDatasetsModule },
|
||||||
|
{ path: 'search/find/projects', loadChildren: getSearchProjectsModule },
|
||||||
|
{ path: 'search/find/dataproviders', loadChildren: getSearchDataProvidersModule },
|
||||||
|
{ path: 'search/find/organizations', loadChildren: getSearchOrganizationsModule },
|
||||||
|
{ path: 'search/find/people', loadChildren: getSearchPeopleModule },
|
||||||
|
{ path: 'search/data-providers', loadChildren: getCompatibleDataProvidersModule },
|
||||||
|
{ path: 'search/entity-registries', loadChildren: getEntityRegistriesModule },
|
||||||
|
{ path: 'search/advanced/publications', loadChildren: getAdvancedSearchPublicationsModule },
|
||||||
|
{ path: 'search/advanced/datasets', loadChildren: getAdvancedSearchDatasetsModule },
|
||||||
|
{ path: 'search/advanced/organizations', loadChildren: getAdvancedSearchOrganizationsModule },
|
||||||
|
{ path: 'search/advanced/dataproviders', loadChildren: getAdvancedSearchDataProvidersModule },
|
||||||
|
{ path: 'search/advanced/projects', loadChildren: getAdvancedSearchProjectsModule },
|
||||||
|
{ path: 'search/advanced/people', loadChildren: getAdvancedSearchPeopleModule },
|
||||||
|
{ path: 'project-report', loadChildren: gethtmlProjectReportModule }
|
||||||
|
|
||||||
|
|
||||||
])
|
])
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
//import {MaterialModule} from '@angular/material';
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { FormsModule } from '@angular/forms';
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
@ -8,35 +7,20 @@ import { SharedModule } from './shared/shared.module';
|
||||||
import { AppRoutingModule } from './app-routing.module';
|
import { AppRoutingModule } from './app-routing.module';
|
||||||
import { AppComponent, XLargeDirective } from './app.component';
|
import { AppComponent, XLargeDirective } from './app.component';
|
||||||
|
|
||||||
// custom modules::
|
|
||||||
import {SearchModule} from './searchPages/search.module';
|
|
||||||
import {DepoditModule} from './deposit/deposit.module';
|
|
||||||
import {LandingModule} from './landingPages/landing.module';
|
|
||||||
import {SharedComponentsModule} from './sharedComponents/sharedComponents.module'; //navbar
|
import {SharedComponentsModule} from './sharedComponents/sharedComponents.module'; //navbar
|
||||||
import {UtilsModule} from './utils/utils.module';
|
|
||||||
import {TestModule} from './test/test.module';
|
|
||||||
import { HomeModule } from './home/home.module';
|
|
||||||
import { ErrorModule } from './error/error.module';
|
import { ErrorModule } from './error/error.module';
|
||||||
|
import { CacheService } from './shared/cache.service';
|
||||||
|
|
||||||
import {ServicesModule} from './services/services.module';
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [ AppComponent, XLargeDirective ],
|
declarations: [ AppComponent, XLargeDirective ],
|
||||||
imports: [
|
imports: [
|
||||||
//MaterialModule.forRoot(),
|
|
||||||
SharedModule,
|
SharedModule,
|
||||||
HomeModule,
|
|
||||||
SearchModule,
|
|
||||||
DepoditModule,
|
|
||||||
LandingModule,
|
|
||||||
SharedComponentsModule,
|
SharedComponentsModule,
|
||||||
UtilsModule,
|
|
||||||
ServicesModule,
|
|
||||||
TestModule,
|
|
||||||
HomeModule,
|
|
||||||
AppRoutingModule,
|
AppRoutingModule,
|
||||||
ErrorModule
|
ErrorModule
|
||||||
], exports:[]
|
], exports:[], providers:[CacheService]
|
||||||
})
|
})
|
||||||
export class AppModule {
|
export class AppModule {
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DepositDatasetsComponent } from './depositDatasets.component';
|
||||||
|
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DepositDatasetsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { DepositDatasetsComponent } from './depositDatasets.component';
|
||||||
|
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
|
||||||
|
import {DepositDatasetsRoutingModule} from './depositDatasets-routing.module';
|
||||||
|
import {DepoditModule} from '../deposit.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepoditModule,
|
||||||
|
DepositDatasetsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
DepositDatasetsComponent,
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DepositDatasetsComponent,
|
||||||
|
],
|
||||||
|
providers: [
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DepositDatasetsResultComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsResultsRoutingModule { }
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
||||||
|
|
||||||
|
import {DepositDatasetsResultsRoutingModule} from './depositDatasetsResults-routing.module';
|
||||||
|
import {DepoditModule} from '../deposit.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepoditModule,
|
||||||
|
DepositDatasetsResultsRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
DepositDatasetsResultComponent,
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DepositDatasetsResultComponent,
|
||||||
|
],
|
||||||
|
providers: [
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositDatasetsResultsModule { }
|
|
@ -1,20 +0,0 @@
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { RouterModule } from '@angular/router';
|
|
||||||
|
|
||||||
import { DepositPublicationsComponent } from './depositPublications.component';
|
|
||||||
import { DepositDatasetsComponent } from './depositDatasets.component';
|
|
||||||
import { DepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
|
||||||
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
RouterModule.forChild([
|
|
||||||
{ path: 'deposit-publications', component: DepositPublicationsComponent },
|
|
||||||
{ path: 'deposit-datasets', component: DepositDatasetsComponent },
|
|
||||||
{ path: 'deposit-publications-result', component: DepositPublicationsResultComponent} ,
|
|
||||||
{ path: 'deposit-datasets-result', component: DepositDatasetsResultComponent },
|
|
||||||
|
|
||||||
])
|
|
||||||
]
|
|
||||||
})
|
|
||||||
export class DepositRoutingModule { }
|
|
|
@ -3,7 +3,6 @@ import {Observable} from 'rxjs/Observable';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import {OpenaireProperties, ErrorCodes} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties, ErrorCodes} from '../utils/properties/openaireProperties';
|
||||||
|
|
||||||
import {SearchOrganizationsService} from '../services/searchOrganizations.service';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'deposit',
|
selector: 'deposit',
|
||||||
|
@ -64,7 +63,7 @@ export class DepositComponent {
|
||||||
public selectedId: string = "";
|
public selectedId: string = "";
|
||||||
public warningMessage: string = "";
|
public warningMessage: string = "";
|
||||||
|
|
||||||
constructor (private _router: Router, private _searchOrganizationsService: SearchOrganizationsService) {
|
constructor (private _router: Router) {
|
||||||
|
|
||||||
this.openAccess = OpenaireProperties.getOpenAccess();
|
this.openAccess = OpenaireProperties.getOpenAccess();
|
||||||
this.openAccessRepo = OpenaireProperties.getOpenAccessRepo();
|
this.openAccessRepo = OpenaireProperties.getOpenAccessRepo();
|
||||||
|
|
|
@ -1,41 +1,30 @@
|
||||||
|
/* Common Component of deposit for both datasets & ppublications*/
|
||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { CommonModule } from '@angular/common';
|
import { CommonModule } from '@angular/common';
|
||||||
import { FormsModule } from '@angular/forms';
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
import { UtilsModule} from '../utils/utils.module'
|
|
||||||
|
|
||||||
import { DepositComponent } from './deposit.component';
|
import { DepositComponent } from './deposit.component';
|
||||||
import { DepositResultComponent } from './depositResult.component';
|
import { DepositResultComponent } from './depositResult.component';
|
||||||
import { DepositPublicationsComponent } from './depositPublications.component';
|
import {EntitiesAutocompleteModule} from '../utils/entitiesAutoComplete/entitiesAutoComplete.module';
|
||||||
import { DepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
import {DataProvidersServiceModule} from '../services/dataProvidersService.module';
|
||||||
import { DepositDatasetsComponent } from './depositDatasets.component';
|
import {OrganizationServiceModule} from '../services/organizationService.module';
|
||||||
import { DepositDatasetsResultComponent } from './depositDatasetsResult.component';
|
|
||||||
|
|
||||||
import {ServicesModule} from '../services/services.module';
|
@NgModule({
|
||||||
import {SearchModule} from '../searchPages/search.module';
|
|
||||||
import {DepositRoutingModule} from './deposit-routing.module';
|
|
||||||
|
|
||||||
//helpers
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule, FormsModule,
|
CommonModule, FormsModule,
|
||||||
UtilsModule,
|
EntitiesAutocompleteModule,
|
||||||
ServicesModule,
|
DataProvidersServiceModule,
|
||||||
SearchModule,
|
OrganizationServiceModule
|
||||||
DepositRoutingModule
|
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
DepositComponent,
|
DepositComponent,
|
||||||
DepositResultComponent,
|
DepositResultComponent
|
||||||
DepositPublicationsComponent,
|
|
||||||
DepositPublicationsResultComponent,
|
|
||||||
DepositDatasetsComponent,
|
|
||||||
DepositDatasetsResultComponent
|
|
||||||
|
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
//DepositComponent
|
DepositComponent,
|
||||||
|
DepositResultComponent
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
]
|
]
|
||||||
|
|
|
@ -3,9 +3,8 @@ import {Observable} from 'rxjs/Observable';
|
||||||
import {OpenaireProperties, ErrorCodes} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties, ErrorCodes} from '../utils/properties/openaireProperties';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { SearchDataprovidersComponent } from '../searchPages/simple/searchDataproviders.component';
|
import { FetchDataproviders } from '../utils/fetchEntitiesClasses/fetchDataproviders.class';
|
||||||
import { SearchDataprovidersService } from '../services/searchDataproviders.service';
|
import { SearchDataprovidersService } from '../services/searchDataproviders.service';
|
||||||
import { SearchResultComponent } from '../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OrganizationService} from '../services/organization.service';
|
import {OrganizationService} from '../services/organization.service';
|
||||||
|
|
||||||
|
@ -17,13 +16,15 @@ import {OrganizationService} from '../services/organization.service';
|
||||||
<h2>Deposit {{requestFor}}</h2>
|
<h2>Deposit {{requestFor}}</h2>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="status == errorCodes.LOADING"
|
|
||||||
|
<div *ngIf="status == errorCodes.LOADING || (status == errorCodes.LOADING && fetchDataproviders.searchUtils.status == errorCodes.LOADING)"
|
||||||
class="uk-alert uk-alert-primary" role="alert">
|
class="uk-alert uk-alert-primary" role="alert">
|
||||||
Loading...
|
Loading...
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.status == errorCodes.DONE">
|
|
||||||
<h2>
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults > 0">
|
||||||
|
<h2 *ngIf="organization != undefined">
|
||||||
<span>Data providers for institution: </span>
|
<span>Data providers for institution: </span>
|
||||||
<a *ngIf="organization['url']!=''" href="{{organization.url}}" target="_blank">
|
<a *ngIf="organization['url']!=''" href="{{organization.url}}" target="_blank">
|
||||||
<span>{{organization['name']}} (<i class="uk-icon-external-link"></i>)</span>
|
<span>{{organization['name']}} (<i class="uk-icon-external-link"></i>)</span>
|
||||||
|
@ -31,19 +32,21 @@ import {OrganizationService} from '../services/organization.service';
|
||||||
<span *ngIf="organization['url']==''">{{organization['name']}}</span>
|
<span *ngIf="organization['url']==''">{{organization['name']}}</span>
|
||||||
</h2>
|
</h2>
|
||||||
|
|
||||||
<p>Please use the information/contacts shown below to deposit your {{requestFor}}.</p>
|
|
||||||
<!--showDataProviders [dataProviders]=dataProviders></showDataProviders-->
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDataprovidersComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{searchDataprovidersComponent.searchUtils.totalResults}} results</a></div>
|
|
||||||
<search-result [(results)]="searchDataprovidersComponent.results" [(status)]= "searchDataprovidersComponent.searchUtils.status"></search-result>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.status == errorCodes.NONE
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults > 0">
|
||||||
|| status == errorCodes.NONE
|
<p>Please use the information/contacts shown below to deposit your {{requestFor}}.</p>
|
||||||
|| searchDataprovidersComponent.searchUtils.status == errorCodes.ERROR
|
<!--showDataProviders [dataProviders]=dataProviders></showDataProviders-->
|
||||||
|| status == errorCodes.ERROR"
|
<div class = "uk-text-right" *ngIf = "fetchDataproviders.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{fetchDataproviders.searchUtils.totalResults}} results</a></div>
|
||||||
class = "uk-alert uk-alert-warning" role="alert">
|
<!--search-result [(results)]="fetchDataproviders.results" [(status)]= "fetchDataproviders.searchUtils.status"></search-result-->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div *ngIf="(fetchDataproviders.searchUtils.totalResults == 0 && status == errorCodes.DONE)
|
||||||
|
|| status == errorCodes.NONE || status == errorCodes.ERROR" class = "alert alert-warning">
|
||||||
<div *ngIf="organization != undefined">
|
<div *ngIf="organization != undefined">
|
||||||
<span *ngIf="searchDataprovidersComponent.searchUtils.status == errorCodes.ERROR">
|
<span *ngIf="fetchDataproviders.searchUtils.status == errorCodes.ERROR">
|
||||||
An error occured.
|
An error occured.
|
||||||
</span>
|
</span>
|
||||||
No data providers found for institution:
|
No data providers found for institution:
|
||||||
|
@ -85,7 +88,7 @@ export class DepositResultComponent {
|
||||||
sub: any;
|
sub: any;
|
||||||
subDataproviders: any;
|
subDataproviders: any;
|
||||||
|
|
||||||
public searchDataprovidersComponent : SearchDataprovidersComponent;
|
public fetchDataproviders : FetchDataproviders;
|
||||||
public linkToSearchDataproviders = "";
|
public linkToSearchDataproviders = "";
|
||||||
public zenodo: string;
|
public zenodo: string;
|
||||||
@Input() compatibility: string = '';
|
@Input() compatibility: string = '';
|
||||||
|
@ -98,7 +101,7 @@ export class DepositResultComponent {
|
||||||
console.info("depositResult constructor");
|
console.info("depositResult constructor");
|
||||||
|
|
||||||
this.zenodo = OpenaireProperties.getZenodoURL();
|
this.zenodo = OpenaireProperties.getZenodoURL();
|
||||||
this.searchDataprovidersComponent = new SearchDataprovidersComponent(this.route, this._searchDataprovidersService);
|
this.fetchDataproviders = new FetchDataproviders(this._searchDataprovidersService);
|
||||||
|
|
||||||
this.status = this.errorCodes.LOADING;
|
this.status = this.errorCodes.LOADING;
|
||||||
console.info("loading");
|
console.info("loading");
|
||||||
|
@ -132,9 +135,9 @@ export class DepositResultComponent {
|
||||||
|
|
||||||
private searchDataproviders() {
|
private searchDataproviders() {
|
||||||
// if(this.organization != undefined) {
|
// if(this.organization != undefined) {
|
||||||
// this.searchDataprovidersComponent.getResults(this.organization.name, false, 1, 10);
|
// this.fetchDataproviders.getResults(this.organization.name, false, 1, 10);
|
||||||
// } else if(this.organizationId != undefined) {
|
// } else if(this.organizationId != undefined) {
|
||||||
this.searchDataprovidersComponent.getResultsForDeposit( this.organizationId,this.requestFor, 1, 10);
|
this.fetchDataproviders.getResultsForDeposit( this.organizationId,this.requestFor, 1, 10);
|
||||||
//}
|
//}
|
||||||
this.linkToSearchDataproviders = OpenaireProperties.getLinkToSearchDataProviders();
|
this.linkToSearchDataproviders = OpenaireProperties.getLinkToSearchDataProviders();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DepositPublicationsComponent } from './depositPublications.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DepositPublicationsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { DepositPublicationsComponent } from './depositPublications.component';
|
||||||
|
|
||||||
|
import {DepositPublicationsRoutingModule} from './depositPublications-routing.module';
|
||||||
|
import {DepoditModule} from '../deposit.module';
|
||||||
|
import {IFrameModule} from '../../utils/iframe.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepoditModule,
|
||||||
|
DepositPublicationsRoutingModule,IFrameModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
DepositPublicationsComponent,
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DepositPublicationsComponent,
|
||||||
|
],
|
||||||
|
providers: [
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DepositPublicationsResultComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsResultRoutingModule { }
|
|
@ -0,0 +1,27 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { DepositPublicationsResultComponent } from './depositPublicationsResult.component';
|
||||||
|
|
||||||
|
import {DepositPublicationsResultRoutingModule} from './depositPublicationsResult-routing.module';
|
||||||
|
import {DepoditModule} from '../deposit.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DepoditModule,
|
||||||
|
DepositPublicationsResultRoutingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
DepositPublicationsResultComponent,
|
||||||
|
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DepositPublicationsResultComponent,
|
||||||
|
],
|
||||||
|
providers: [
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DepositPublicationsResultsModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DataProviderComponent } from './dataProvider.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DataProviderComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DataProviderRoutingModule { }
|
|
@ -1,6 +1,6 @@
|
||||||
import {Component, ViewChild} from '@angular/core';
|
import {Component, ViewChild} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {DataProviderService} from '../../services/dataProvider.service';
|
import {DataProviderService} from './dataProvider.service';
|
||||||
import {DataProviderInfo} from '../../utils/entities/dataProviderInfo';
|
import {DataProviderInfo} from '../../utils/entities/dataProviderInfo';
|
||||||
import {ActivatedRoute} from '@angular/router';
|
import {ActivatedRoute} from '@angular/router';
|
||||||
|
|
||||||
|
@ -9,7 +9,8 @@ import{TabsComponent} from './tabs.component';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'dataprovider',
|
selector: 'dataprovider',
|
||||||
templateUrl: 'dataProvider.component.html',
|
templateUrl: 'dataProvider.component.html',
|
||||||
providers:[ DataProviderService],
|
//template: `Heeereee`,
|
||||||
|
// providers:[ DataProviderService],
|
||||||
})
|
})
|
||||||
|
|
||||||
export class DataProviderComponent {
|
export class DataProviderComponent {
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {IFrameModule} from '../../utils/iframe.module';
|
||||||
|
// import { ResultLandingModule } from '../resultLanding.module';
|
||||||
|
import {SearchResultsModule } from '../../searchPages/searchUtils/searchResults.module';
|
||||||
|
import {MetricsModule} from '../metrics.module';
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
|
||||||
|
import {PublicationsTabComponent} from './publicationsTab.component';
|
||||||
|
import {DatasetsTabComponent} from './datasetsTab.component';
|
||||||
|
import {StatisticsTabComponent} from './statisticsTab.component';
|
||||||
|
import {ProjectsTabComponent} from './projectsTab.component';
|
||||||
|
import {DatasourcesTabComponent} from './datasourcesTab.component';
|
||||||
|
import {OrganizationsTabComponent} from './organizationsTab.component';
|
||||||
|
import {RelatedDatasourcesTabComponent} from './relatedDatasourcesTab.component';
|
||||||
|
import {TabsComponent} from './tabs.component';
|
||||||
|
|
||||||
|
import {DataProviderComponent} from './dataProvider.component';
|
||||||
|
import { DataProviderService} from './dataProvider.service';
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {ProjectsServiceModule} from '../../services/projectsService.module';
|
||||||
|
import {PublicationsServiceModule} from '../../services/publicationsService.module';
|
||||||
|
|
||||||
|
import { DataProviderRoutingModule } from './dataProvider-routing.module';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProviderRoutingModule,
|
||||||
|
SearchResultsModule, IFrameModule, MetricsModule, LandingModule, DataProvidersServiceModule, DatasetsServiceModule, ProjectsServiceModule, PublicationsServiceModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
|
||||||
|
PublicationsTabComponent, DatasetsTabComponent, StatisticsTabComponent, ProjectsTabComponent, DatasourcesTabComponent, OrganizationsTabComponent, RelatedDatasourcesTabComponent, TabsComponent,
|
||||||
|
DataProviderComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
DataProviderService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DataProviderComponent
|
||||||
|
]
|
||||||
|
|
||||||
|
})
|
||||||
|
export class DataProviderModule { }
|
|
@ -1,12 +1,12 @@
|
||||||
import {Injectable} from '@angular/core';
|
import {Injectable} from '@angular/core';
|
||||||
import {Http, Response} from '@angular/http';
|
import {Http, Response} from '@angular/http';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {DataProviderInfo} from '../utils/entities/dataProviderInfo';
|
import {DataProviderInfo} from '../../utils/entities/dataProviderInfo';
|
||||||
import {OpenaireProperties} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import 'rxjs/add/observable/of';
|
import 'rxjs/add/observable/of';
|
||||||
import 'rxjs/add/operator/do';
|
import 'rxjs/add/operator/do';
|
||||||
import 'rxjs/add/operator/share';
|
import 'rxjs/add/operator/share';
|
||||||
import { CacheService } from '../shared/cache.service';
|
import { CacheService } from '../../shared/cache.service';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class DataProviderService {
|
export class DataProviderService {
|
|
@ -1,32 +1,30 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
|
import { FetchDatasets } from '../../utils/fetchEntitiesClasses/fetchDatasets.class';
|
||||||
import { SearchDatasetsComponent } from '../../searchPages/simple/searchDatasets.component';
|
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'datasetsTab',
|
selector: 'datasetsTab',
|
||||||
template: `
|
template: `
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no datasets
|
There are no datasets
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDatasetsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{searchDatasetsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDatasets.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{fetchDatasets.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDatasetsComponent.results" [(status)]= "searchDatasetsComponent.status"></search-result>
|
<search-result [(results)]="fetchDatasets.results" [(status)]= "fetchDatasets.searchUtils.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
|
||||||
export class DatasetsTabComponent {
|
export class DatasetsTabComponent {
|
||||||
@Input() paramsForSearchLink: string = "";
|
@Input() paramsForSearchLink: string = "";
|
||||||
@Input() searchDatasetsComponent : SearchDatasetsComponent;
|
@Input() fetchDatasets : FetchDatasets;
|
||||||
public linkToSearchDatasets = "";
|
public linkToSearchDatasets = "";
|
||||||
|
|
||||||
constructor () {}
|
constructor () {}
|
||||||
|
|
|
@ -1,24 +1,23 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
import { SearchDataprovidersComponent } from '../../searchPages/simple/searchDataproviders.component';
|
import { FetchDataproviders } from '../../utils/fetchEntitiesClasses/fetchDataproviders.class';
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'datasourcesTab',
|
selector: 'datasourcesTab',
|
||||||
template: `
|
template: `
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no datasources
|
There are no datasources
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDataprovidersComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{searchDataprovidersComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDataproviders.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{fetchDataproviders.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDataprovidersComponent.results" [(status)]= "searchDataprovidersComponent.status"></search-result>
|
<search-result [(results)]="fetchDataproviders.results" [(status)]= "fetchDataproviders.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
@ -26,7 +25,7 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
export class DatasourcesTabComponent {
|
export class DatasourcesTabComponent {
|
||||||
|
|
||||||
@Input() paramsForSearchLink: string = "";
|
@Input() paramsForSearchLink: string = "";
|
||||||
@Input() searchDataprovidersComponent : SearchDataprovidersComponent;
|
@Input() fetchDataproviders : FetchDataproviders;
|
||||||
public linkToSearchDataproviders = "";
|
public linkToSearchDataproviders = "";
|
||||||
|
|
||||||
constructor () {}
|
constructor () {}
|
||||||
|
|
|
@ -1,25 +1,24 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
|
|
||||||
import { SearchProjectsComponent } from '../../searchPages/simple/searchProjects.component';
|
import { FetchProjects } from '../../utils/fetchEntitiesClasses/fetchProjects.class';
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'projectsTab',
|
selector: 'projectsTab',
|
||||||
template: `
|
template: `
|
||||||
<div *ngIf="searchProjectsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchProjects.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no projects
|
There are no projects
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchProjectsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchProjects.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchProjectsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchProjects" >View all {{searchProjectsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchProjects.searchUtils.totalResults > 10" ><a [href] = "linkToSearchProjects" >View all {{fetchProjects.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchProjectsComponent.results" [(status)]= "searchProjectsComponent.status"></search-result>
|
<search-result [(results)]="fetchProjects.results" [(status)]= "fetchProjects.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
@ -27,7 +26,7 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
export class ProjectsTabComponent {
|
export class ProjectsTabComponent {
|
||||||
|
|
||||||
@Input() paramsForSearchLink: string = "";
|
@Input() paramsForSearchLink: string = "";
|
||||||
@Input() searchProjectsComponent : SearchProjectsComponent;
|
@Input() fetchProjects : FetchProjects;
|
||||||
public linkToSearchProjects = "";
|
public linkToSearchProjects = "";
|
||||||
|
|
||||||
constructor () {}
|
constructor () {}
|
||||||
|
|
|
@ -1,32 +1,30 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'publicationsTab',
|
selector: 'publicationsTab',
|
||||||
template: `
|
template: `
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no publications
|
There are no publications
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchPublications.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchPublicationsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{searchPublicationsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{fetchPublications.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchPublicationsComponent.results" [(status)]= "searchPublicationsComponent.status"></search-result>
|
<search-result [(results)]="fetchPublications.results" [(status)]= "fetchPublications.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
|
||||||
export class PublicationsTabComponent {
|
export class PublicationsTabComponent {
|
||||||
@Input() paramsForSearchLink: string = "";
|
@Input() paramsForSearchLink: string = "";
|
||||||
@Input() searchPublicationsComponent : SearchPublicationsComponent;
|
@Input() fetchPublications : FetchPublications;
|
||||||
public linkToSearchPublications = "";
|
public linkToSearchPublications = "";
|
||||||
|
|
||||||
constructor () {}
|
constructor () {}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
|
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
|
@ -9,11 +8,11 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
selector: 'relatedDatasourcesTab',
|
selector: 'relatedDatasourcesTab',
|
||||||
template: `
|
template: `
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.results.length == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.results.length == 0" class = "uk-alert">
|
||||||
There are no related dataproviders
|
There are no related dataproviders
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.results.length > 0">
|
<div *ngIf="fetchPublications.results.length > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
|
@ -27,7 +26,7 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr *ngFor="let item of searchPublicationsComponent.results">
|
<tr *ngFor="let item of fetchPublications.results">
|
||||||
<td class="uk-text-center">
|
<td class="uk-text-center">
|
||||||
<a href="{{item.url}}" target="_blank" class="uk-icon-external-link">
|
<a href="{{item.url}}" target="_blank" class="uk-icon-external-link">
|
||||||
{{item.name}}
|
{{item.name}}
|
||||||
|
@ -48,7 +47,7 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
export class RelatedDatasourcesTabComponent {
|
export class RelatedDatasourcesTabComponent {
|
||||||
@Input() dataproviderId: string;
|
@Input() dataproviderId: string;
|
||||||
@Input() searchPublicationsComponent : SearchPublicationsComponent;
|
@Input() fetchPublications : FetchPublications;
|
||||||
private linkToSearchPublications = "";
|
private linkToSearchPublications = "";
|
||||||
|
|
||||||
constructor () {}
|
constructor () {}
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
import {Component, Input} from '@angular/core';
|
import {Component, Input} from '@angular/core';
|
||||||
import {ActivatedRoute, Params} from '@angular/router';
|
import {ActivatedRoute, Params} from '@angular/router';
|
||||||
|
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
||||||
import { SearchDatasetsComponent } from '../../searchPages/simple/searchDatasets.component';
|
import { FetchDatasets } from '../../utils/fetchEntitiesClasses/fetchDatasets.class';
|
||||||
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
||||||
import { SearchProjectsComponent } from '../../searchPages/simple/searchProjects.component';
|
import { FetchProjects } from '../../utils/fetchEntitiesClasses/fetchProjects.class';
|
||||||
import { SearchProjectsService } from '../../services/searchProjects.service';
|
import { SearchProjectsService } from '../../services/searchProjects.service';
|
||||||
import { SearchDataprovidersComponent } from '../../searchPages/simple/searchDataproviders.component';
|
import { FetchDataproviders } from '../../utils/fetchEntitiesClasses/fetchDataproviders.class';
|
||||||
import { SearchDataprovidersService } from '../../services/searchDataproviders.service';
|
import { SearchDataprovidersService } from '../../services/searchDataproviders.service';
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
@ -23,16 +23,16 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
<i *ngIf="tabs[0].content == 'statisticsTab'" class="uk-icon-pie-chart"></i>
|
<i *ngIf="tabs[0].content == 'statisticsTab'" class="uk-icon-pie-chart"></i>
|
||||||
|
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='publicationsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='publicationsTab'">
|
||||||
{{searchPublicationsComponent.searchUtils.totalResults}}
|
{{fetchPublications.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='datasetsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='datasetsTab'">
|
||||||
{{searchDatasetsComponent.searchUtils.totalResults}}
|
{{fetchDatasets.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='projectsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='projectsTab'">
|
||||||
{{searchProjectsComponent.searchUtils.totalResults}}
|
{{fetchProjects.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='datasourcesTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='datasourcesTab'">
|
||||||
{{searchDataprovidersComponent.searchUtils.totalResults}}
|
{{fetchDataproviders.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='organizationsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tabs[0].content=='organizationsTab'">
|
||||||
{{organizations.length}}
|
{{organizations.length}}
|
||||||
|
@ -48,16 +48,16 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
<i *ngIf="tab.content == 'statisticsTab'" class="uk-icon-pie-chart"></i>
|
<i *ngIf="tab.content == 'statisticsTab'" class="uk-icon-pie-chart"></i>
|
||||||
|
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='publicationsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='publicationsTab'">
|
||||||
{{searchPublicationsComponent.searchUtils.totalResults}}
|
{{fetchPublications.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='datasetsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='datasetsTab'">
|
||||||
{{searchDatasetsComponent.searchUtils.totalResults}}
|
{{fetchDatasets.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='projectsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='projectsTab'">
|
||||||
{{searchProjectsComponent.searchUtils.totalResults}}
|
{{fetchProjects.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='datasourcesTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='datasourcesTab'">
|
||||||
{{searchDataprovidersComponent.searchUtils.totalResults}}
|
{{fetchDataproviders.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='organizationsTab'">
|
<span class="uk-badge uk-badge-notification" *ngIf="tab.content=='organizationsTab'">
|
||||||
{{organizations.length}}
|
{{organizations.length}}
|
||||||
|
@ -70,46 +70,37 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
<li *ngIf="tabs.length>0" id="{{tabs[0].content}}">
|
<li *ngIf="tabs.length>0" id="{{tabs[0].content}}">
|
||||||
<publicationsTab *ngIf="tabs[0].content=='publicationsTab'"
|
<publicationsTab *ngIf="tabs[0].content=='publicationsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchPublicationsComponent]="searchPublicationsComponent">
|
[fetchPublications]="fetchPublications">
|
||||||
</publicationsTab>
|
</publicationsTab>
|
||||||
<datasetsTab *ngIf="tabs[0].content=='datasetsTab'"
|
<datasetsTab *ngIf="tabs[0].content=='datasetsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchDatasetsComponent]="searchDatasetsComponent">
|
[fetchDatasets]="fetchDatasets">
|
||||||
</datasetsTab>
|
</datasetsTab>
|
||||||
|
|
||||||
|
|
||||||
<projectsTab *ngIf="tabs[0].content=='projectsTab'"
|
<projectsTab *ngIf="tabs[0].content=='projectsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchProjectsComponent]="searchProjectsComponent">
|
[fetchProjects]="fetchProjects">
|
||||||
</projectsTab>
|
</projectsTab>
|
||||||
|
|
||||||
<datasourcesTab *ngIf="tabs[0].content=='datasourcesTab'"
|
<datasourcesTab *ngIf="tabs[0].content=='datasourcesTab'"
|
||||||
|
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchDataprovidersComponent]="searchDataprovidersComponent">
|
[fetchDataproviders]="fetchDataproviders">
|
||||||
|
|
||||||
</datasourcesTab>
|
</datasourcesTab>
|
||||||
<organizationsTab *ngIf="tabs[0].content=='organizationsTab'"
|
<organizationsTab *ngIf="tabs[0].content=='organizationsTab'"
|
||||||
[organizations]="organizations">
|
[organizations]="organizations">
|
||||||
</organizationsTab>
|
</organizationsTab>
|
||||||
<relatedDatasourcesTab *ngIf="tabs[0].content=='relatedDatasourcesTab'"
|
<relatedDatasourcesTab *ngIf="tabs[0].content=='relatedDatasourcesTab'"
|
||||||
[searchPublicationsComponent]="searchPublicationsComponentAggregators">
|
[fetchPublications]="fetchPublicationsAggregators">
|
||||||
</relatedDatasourcesTab>
|
</relatedDatasourcesTab>
|
||||||
<!--div *ngIf="tabs[0].content=='metricsTab' && metrics == undefined" class = "uk-alert uk-alert-warning">
|
|
||||||
Metrics are currently unavailable
|
|
||||||
</div>
|
|
||||||
<div *ngIf="tabs[0].content=='metricsTab' && metrics != undefined" class="uk-panel uk-panel-box">
|
|
||||||
<b>Views: </b>{{metrics}}
|
|
||||||
</div-->
|
|
||||||
|
|
||||||
<!--statisticsTab *ngIf="tabs[0].content=='statisticsTab'"
|
|
||||||
[statistics]="statistics" [show]=statsClicked>
|
|
||||||
</statisticsTab-->
|
|
||||||
<div *ngIf="tabs[0].content=='statisticsTab' && statsClicked">
|
<div *ngIf="tabs[0].content=='statisticsTab' && statsClicked">
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0 && searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0 && fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no statistics
|
There are no statistics
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="(searchPublicationsComponent.searchUtils.totalResults != 0 || searchDatasetsComponent.searchUtils.totalResults != 0)">
|
<div *ngIf="(fetchPublications.searchUtils.totalResults != 0 || fetchDatasets.searchUtils.totalResults != 0)">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
|
@ -120,15 +111,16 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
<i-frame [url]=docsTypesUrl width="800" height="350"></i-frame>
|
<i-frame [url]=docsTypesUrl width="800" height="350"></i-frame>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="(searchPublicationsComponent.searchUtils.totalResults > 0)">
|
<div *ngIf="(fetchPublications.searchUtils.totalResults > 0)">
|
||||||
<div>
|
<div>
|
||||||
<p class="uk-text-bold">Funders in Data Providers Publications</p>
|
<p class="uk-text-bold">Funders in Data Providers Publications</p>
|
||||||
<i-frame [url]=pubsFunderUrl width="800" height="350"></i-frame>
|
<i-frame [url]=pubsFunderUrl width="800" height="350"></i-frame>
|
||||||
<p class="uk-text-bold">Projects with most Publications</p>
|
<p class="uk-text-bold">Projects with most Publications</p>
|
||||||
<i-frame [url]=pubsProjectsUrl width="800" height="350"></i-frame>
|
<i-frame [url]=pubsProjectsUrl width="800" height="350"></i-frame>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="(searchDatasetsComponent.searchUtils.totalResults > 0)">
|
<div *ngIf="(fetchDatasets.searchUtils.totalResults > 0)">
|
||||||
<div>
|
<div>
|
||||||
<p class="uk-text-bold">Projects with most Research Data</p>
|
<p class="uk-text-bold">Projects with most Research Data</p>
|
||||||
<i-frame [url]=dataProjectsUrl width="800" height="350"></i-frame>
|
<i-frame [url]=dataProjectsUrl width="800" height="350"></i-frame>
|
||||||
|
@ -139,17 +131,17 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
</div>
|
</div>
|
||||||
<projectsTab *ngIf="tabs[0].content=='projectsTab'"
|
<projectsTab *ngIf="tabs[0].content=='projectsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchProjectsComponent]="searchProjectsComponent">
|
[fetchProjects]="fetchProjects">
|
||||||
</projectsTab>
|
</projectsTab>
|
||||||
<datasourcesTab *ngIf="tabs[0].content=='datasourcesTab'"
|
<datasourcesTab *ngIf="tabs[0].content=='datasourcesTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchDataprovidersComponent]="searchDataprovidersComponent">
|
[fetchDataproviders]="fetchDataproviders">
|
||||||
</datasourcesTab>
|
</datasourcesTab>
|
||||||
<organizationsTab *ngIf="tabs[0].content=='organizationsTab'"
|
<organizationsTab *ngIf="tabs[0].content=='organizationsTab'"
|
||||||
[organizations]="organizations">
|
[organizations]="organizations">
|
||||||
</organizationsTab>
|
</organizationsTab>
|
||||||
<relatedDatasourcesTab *ngIf="tabs[0].content=='relatedDatasourcesTab'"
|
<relatedDatasourcesTab *ngIf="tabs[0].content=='relatedDatasourcesTab'"
|
||||||
[searchPublicationsComponent]="searchPublicationsComponentAggregators">
|
[fetchPublications]="fetchPublicationsAggregators">
|
||||||
</relatedDatasourcesTab>
|
</relatedDatasourcesTab>
|
||||||
<!--div *ngIf="tabs[0].content=='metricsTab' && metrics == undefined" class = "uk-alert uk-alert-warning">
|
<!--div *ngIf="tabs[0].content=='metricsTab' && metrics == undefined" class = "uk-alert uk-alert-warning">
|
||||||
Metrics are currently unavailable
|
Metrics are currently unavailable
|
||||||
|
@ -171,38 +163,38 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
<li *ngFor="let tab of tabs; let i=index" id="{{tab.content}}">
|
<li *ngFor="let tab of tabs; let i=index" id="{{tab.content}}">
|
||||||
<publicationsTab *ngIf="i>0 && tab.content=='publicationsTab'"
|
<publicationsTab *ngIf="i>0 && tab.content=='publicationsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchPublicationsComponent] = "searchPublicationsComponent">
|
[fetchPublications] = "fetchPublications">
|
||||||
</publicationsTab>
|
</publicationsTab>
|
||||||
<datasetsTab *ngIf="i>0 && tab.content=='datasetsTab'"
|
<datasetsTab *ngIf="i>0 && tab.content=='datasetsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchDatasetsComponent]="searchDatasetsComponent">
|
[fetchDatasets]="fetchDatasets">
|
||||||
</datasetsTab>
|
</datasetsTab>
|
||||||
|
|
||||||
<projectsTab *ngIf="i>0 && tab.content=='projectsTab'"
|
<projectsTab *ngIf="i>0 && tab.content=='projectsTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchProjectsComponent]="searchProjectsComponent">
|
[fetchProjects]="fetchProjects">
|
||||||
</projectsTab>
|
</projectsTab>
|
||||||
<datasourcesTab *ngIf="i>0 && tab.content=='datasourcesTab'"
|
<datasourcesTab *ngIf="i>0 && tab.content=='datasourcesTab'"
|
||||||
[paramsForSearchLink]="paramsForSearchLink"
|
[paramsForSearchLink]="paramsForSearchLink"
|
||||||
[searchDataprovidersComponent]="searchDataprovidersComponent">
|
[fetchDataproviders]="fetchDataproviders">
|
||||||
</datasourcesTab>
|
</datasourcesTab>
|
||||||
<organizationsTab *ngIf="i>0 && tab.content=='organizationsTab'"
|
<organizationsTab *ngIf="i>0 && tab.content=='organizationsTab'"
|
||||||
[organizations]="organizations">
|
[organizations]="organizations">
|
||||||
</organizationsTab>
|
</organizationsTab>
|
||||||
<relatedDatasourcesTab *ngIf="i>0 && tab.content=='relatedDatasourcesTab'"
|
<relatedDatasourcesTab *ngIf="i>0 && tab.content=='relatedDatasourcesTab'"
|
||||||
[dataproviderId]="id"
|
[dataproviderId]="id"
|
||||||
[searchPublicationsComponent]="searchPublicationsComponentAggregators">
|
[fetchPublications]="fetchPublicationsAggregators">
|
||||||
</relatedDatasourcesTab>
|
</relatedDatasourcesTab>
|
||||||
|
|
||||||
<!--statisticsTab *ngIf="i>0 && tab.content=='statisticsTab'"
|
<!--statisticsTab *ngIf="i>0 && tab.content=='statisticsTab'"
|
||||||
[searchPublicationsComponent] = "searchPublicationsComponent"
|
[fetchPublications] = "fetchPublications"
|
||||||
[searchDatasetsComponent]="searchDatasetsComponent" [id]="id">
|
[fetchDatasets]="fetchDatasets" [id]="id">
|
||||||
</statisticsTab-->
|
</statisticsTab-->
|
||||||
<div *ngIf="i>0 && tab.content=='statisticsTab' && statsClicked">
|
<div *ngIf="i>0 && tab.content=='statisticsTab' && statsClicked">
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0 && searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0 && fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no statistics
|
There are no statistics
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="(searchPublicationsComponent.searchUtils.totalResults != 0 || searchDatasetsComponent.searchUtils.totalResults != 0)">
|
<div *ngIf="(fetchPublications.searchUtils.totalResults != 0 || fetchDatasets.searchUtils.totalResults != 0)">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
|
@ -214,15 +206,18 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div *ngIf="(searchPublicationsComponent.searchUtils.totalResults > 0)">
|
<div *ngIf="(fetchPublications.searchUtils.totalResults > 0)">
|
||||||
<div>
|
<div>
|
||||||
<p class="uk-text-bold">Funders in Data Providers Publications</p>
|
<p class="uk-text-bold">Funders in Data Providers Publications</p>
|
||||||
<i-frame [url]=pubsFunderUrl width="800" height="350"></i-frame>
|
<i-frame [url]=pubsFunderUrl width="800" height="350"></i-frame>
|
||||||
<p class="uk-text-bold">Projects with most Publications</p>
|
<p class="uk-text-bold">Projects with most Publications</p>
|
||||||
<i-frame [url]=pubsProjectsUrl width="800" height="350"></i-frame>
|
<i-frame [url]=pubsProjectsUrl width="800" height="350"></i-frame>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="(searchDatasetsComponent.searchUtils.totalResults > 0)">
|
<div *ngIf="(fetchDatasets.searchUtils.totalResults > 0)">
|
||||||
<div>
|
<div>
|
||||||
<p class="uk-text-bold">Projects with most Research Data</p>
|
<p class="uk-text-bold">Projects with most Research Data</p>
|
||||||
<i-frame [url]=dataProjectsUrl width="800" height="350"></i-frame>
|
<i-frame [url]=dataProjectsUrl width="800" height="350"></i-frame>
|
||||||
|
@ -231,6 +226,7 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<metrics *ngIf="i>0 && tab.content=='metricsTab' && metricsClicked"
|
<metrics *ngIf="i>0 && tab.content=='metricsTab' && metricsClicked"
|
||||||
[id]="id" [type]="'datasources'" [name]="name" (metricsResults)="metricsResults($event)">
|
[id]="id" [type]="'datasources'" [name]="name" (metricsResults)="metricsResults($event)">
|
||||||
</metrics>
|
</metrics>
|
||||||
|
@ -280,22 +276,22 @@ export class TabsComponent {
|
||||||
private dataProjectsUrl:string ;
|
private dataProjectsUrl:string ;
|
||||||
private pubsProjectsUrl:string;
|
private pubsProjectsUrl:string;
|
||||||
|
|
||||||
public searchPublicationsComponent : SearchPublicationsComponent;
|
public fetchPublications : FetchPublications;
|
||||||
public searchDatasetsComponent: SearchDatasetsComponent;
|
public fetchDatasets: FetchDatasets;
|
||||||
public searchProjectsComponent: SearchProjectsComponent;
|
public fetchProjects: FetchProjects;
|
||||||
public searchDataprovidersComponent: SearchDataprovidersComponent;
|
public fetchDataproviders: FetchDataproviders;
|
||||||
public searchPublicationsComponentAggregators: SearchPublicationsComponent;
|
public fetchPublicationsAggregators: FetchPublications;
|
||||||
|
|
||||||
constructor (private route: ActivatedRoute,
|
constructor (private route: ActivatedRoute,
|
||||||
private _searchPublicationsService: SearchPublicationsService,
|
private _searchPublicationsService: SearchPublicationsService,
|
||||||
private _searchDatasetsService: SearchDatasetsService,
|
private _searchDatasetsService: SearchDatasetsService,
|
||||||
private _searchProjectsService: SearchProjectsService,
|
private _searchProjectsService: SearchProjectsService,
|
||||||
private _searchDataprovidersService: SearchDataprovidersService) {
|
private _searchDataprovidersService: SearchDataprovidersService) {
|
||||||
this.searchPublicationsComponent = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
this.fetchPublications = new FetchPublications(this._searchPublicationsService);
|
||||||
this.searchDatasetsComponent = new SearchDatasetsComponent(this.route, this._searchDatasetsService);
|
this.fetchDatasets = new FetchDatasets(this._searchDatasetsService);
|
||||||
this.searchProjectsComponent = new SearchProjectsComponent(this.route, this._searchProjectsService);
|
this.fetchProjects = new FetchProjects(this._searchProjectsService);
|
||||||
this.searchDataprovidersComponent = new SearchDataprovidersComponent(this.route, this._searchDataprovidersService);
|
this.fetchDataproviders = new FetchDataproviders(this._searchDataprovidersService);
|
||||||
this.searchPublicationsComponentAggregators = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
this.fetchPublicationsAggregators = new FetchPublications(this._searchPublicationsService);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -362,60 +358,61 @@ export class TabsComponent {
|
||||||
|
|
||||||
private searchPublications(page: number, size: number) {
|
private searchPublications(page: number, size: number) {
|
||||||
if(this.reloadPublications) {
|
if(this.reloadPublications) {
|
||||||
this.searchPublicationsComponent.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
this.fetchPublications.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
||||||
}
|
}
|
||||||
this.reloadPublications = false;
|
this.reloadPublications = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private countPublications(page: number, size: number) {
|
private countPublications(page: number, size: number) {
|
||||||
this.searchPublicationsComponent.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
this.fetchPublications.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasets(page: number, size: number) {
|
private searchDatasets(page: number, size: number) {
|
||||||
if(this.reloadDatasets) {
|
if(this.reloadDatasets) {
|
||||||
this.searchDatasetsComponent.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
this.fetchDatasets.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
||||||
}
|
}
|
||||||
this.reloadDatasets = false;
|
this.reloadDatasets = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private countDatasets(page: number, size: number) {
|
private countDatasets(page: number, size: number) {
|
||||||
this.searchDatasetsComponent.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
this.fetchDatasets.getResultsForDataproviders(this.id, this.resultsBy, page, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchProjects(page: number, size: number) {
|
private searchProjects(page: number, size: number) {
|
||||||
if(this.reloadProjects) {
|
if(this.reloadProjects) {
|
||||||
this.searchProjectsComponent.getResultsForDataproviders(this.id, page, size);
|
this.fetchProjects.getResultsForDataproviders(this.id, page, size);
|
||||||
}
|
}
|
||||||
this.reloadProjects = false;
|
this.reloadProjects = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private countProjects(page: number, size: number) {
|
private countProjects(page: number, size: number) {
|
||||||
this.searchProjectsComponent.getResultsForDataproviders(this.id, page, size);
|
this.fetchProjects.getResultsForDataproviders(this.id, page, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasources(page: number, size: number) {
|
private searchDatasources(page: number, size: number) {
|
||||||
console.info("search intro");
|
console.info("search intro");
|
||||||
if(this.reloadDataproviders) {
|
if(this.reloadDataproviders) {
|
||||||
console.info("request");
|
|
||||||
this.searchDataprovidersComponent.getResultsForDataproviders(this.id, page, size);
|
this.fetchDataproviders.getResultsForDataproviders(this.id, page, size);
|
||||||
|
|
||||||
}
|
}
|
||||||
this.reloadDataproviders = false;
|
this.reloadDataproviders = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private countDatasources(page: number, size: number) {
|
private countDatasources(page: number, size: number) {
|
||||||
this.searchDataprovidersComponent.getResultsForDataproviders(this.id, page, size);
|
this.fetchDataproviders.getResultsForDataproviders(this.id, page, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchRelatedDatasources(page: number, size: number) {
|
private searchRelatedDatasources(page: number, size: number) {
|
||||||
if(this.reloadRelatedDatasources) {
|
if(this.reloadRelatedDatasources) {
|
||||||
this.searchPublicationsComponentAggregators.getAggregatorResults(this.id, page, size);
|
this.fetchPublicationsAggregators.getAggregatorResults(this.id, page, size);
|
||||||
}
|
}
|
||||||
this.reloadRelatedDatasources = false;
|
this.reloadRelatedDatasources = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private countRelatedDatasources(page: number, size: number) {
|
private countRelatedDatasources(page: number, size: number) {
|
||||||
//searchPublicationsComponentAggregator
|
//fetchPublicationsAggregator
|
||||||
this.searchPublicationsComponentAggregators.getAggregatorResults(this.id, page, size);
|
this.fetchPublicationsAggregators.getAggregatorResults(this.id, page, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
public metricsResults($event) {
|
public metricsResults($event) {
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { DatasetComponent } from './dataset.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: DatasetComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DatasetRoutingModule { }
|
|
@ -1,6 +1,6 @@
|
||||||
import {Component, ViewChild} from '@angular/core';
|
import {Component, ViewChild} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {DatasetService} from '../../services/dataset.service';
|
import {DatasetService} from './dataset.service';
|
||||||
import {DatasetInfo} from '../../utils/entities/datasetInfo';
|
import {DatasetInfo} from '../../utils/entities/datasetInfo';
|
||||||
import {ActivatedRoute} from '@angular/router';
|
import {ActivatedRoute} from '@angular/router';
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties'
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties'
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
//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 { DatasetService} from './dataset.service';
|
||||||
|
import { DatasetComponent } from './dataset.component';
|
||||||
|
import { DatasetRoutingModule } from './dataset-routing.module';
|
||||||
|
import {MetricsModule} from '../metrics.module';
|
||||||
|
import {IFrameModule} from '../../utils/iframe.module';
|
||||||
|
import {AltMetricsModule} from '../../utils/altmetrics.module';
|
||||||
|
|
||||||
|
import { ResultLandingModule } from '../resultLanding.module';
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
//MaterialModule.forRoot(),
|
||||||
|
CommonModule, FormsModule,SharedModule, LandingModule,
|
||||||
|
ResultLandingModule, DatasetRoutingModule, MetricsModule, IFrameModule, AltMetricsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
DatasetComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
DatasetService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
DatasetComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class DatasetModule { }
|
|
@ -1,12 +1,12 @@
|
||||||
import {Injectable} from '@angular/core';
|
import {Injectable} from '@angular/core';
|
||||||
import {Http, Response} from '@angular/http';
|
import {Http, Response} from '@angular/http';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {DatasetInfo} from '../utils/entities/datasetInfo';
|
import {DatasetInfo} from '../../utils/entities/datasetInfo';
|
||||||
import {OpenaireProperties} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import 'rxjs/add/observable/of';
|
import 'rxjs/add/observable/of';
|
||||||
import 'rxjs/add/operator/do';
|
import 'rxjs/add/operator/do';
|
||||||
import 'rxjs/add/operator/share';
|
import 'rxjs/add/operator/share';
|
||||||
import { CacheService } from '../shared/cache.service';
|
import { CacheService } from '../../shared/cache.service';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class DatasetService {
|
export class DatasetService {
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { HtmlProjectReportComponent } from './htmlProjectReport.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: HtmlProjectReportComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class HtmlProjectReportRoutingModule { }
|
|
@ -2,11 +2,11 @@ import {Component} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {ActivatedRoute, Params} from '@angular/router';
|
import {ActivatedRoute, Params} from '@angular/router';
|
||||||
import {isBrowser, isNode} from 'angular2-universal';
|
import {isBrowser, isNode} from 'angular2-universal';
|
||||||
import {HtmlProgressReportService} from '../../services/htmlProgressReport.service';
|
import {HtmlProjectReportService} from './htmlProjectReport.service';
|
||||||
import {ProjectService} from '../../services/project.service';
|
import {ProjectService} from '../project/project.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'htmlProgressReport',
|
selector: 'htmlProjectReport',
|
||||||
template: `
|
template: `
|
||||||
<div class="uk-container uk-margin-top">
|
<div class="uk-container uk-margin-top">
|
||||||
<button class="uk-button uk-button-primary btn" (click)="copied = true;">
|
<button class="uk-button uk-button-primary btn" (click)="copied = true;">
|
||||||
|
@ -23,7 +23,7 @@ import {ProjectService} from '../../services/project.service';
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
export class HtmlProgressReportComponent{
|
export class HtmlProjectReportComponent{
|
||||||
public projectId: string;
|
public projectId: string;
|
||||||
public totalResults: number;
|
public totalResults: number;
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ export class HtmlProgressReportComponent{
|
||||||
public copied: boolean = false;
|
public copied: boolean = false;
|
||||||
|
|
||||||
constructor ( private route: ActivatedRoute,
|
constructor ( private route: ActivatedRoute,
|
||||||
private htmlService: HtmlProgressReportService,
|
private htmlService: HtmlProjectReportService,
|
||||||
private _projectService: ProjectService) {
|
private _projectService: ProjectService) {
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { ProjectServiceModule} from '../project/projectService.module';
|
||||||
|
import { CacheService } from '../../shared/cache.service';
|
||||||
|
|
||||||
|
import {HtmlProjectReportService} from './htmlProjectReport.service';
|
||||||
|
import {HtmlProjectReportComponent} from './htmlProjectReport.component';
|
||||||
|
import { HtmlProjectReportRoutingModule } from './htmlProjectReport-routing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, HtmlProjectReportRoutingModule, ProjectServiceModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
HtmlProjectReportComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
HtmlProjectReportService,CacheService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
HtmlProjectReportComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class HtmlProjectReportModule { }
|
|
@ -1,11 +1,11 @@
|
||||||
import {Injectable} from '@angular/core';
|
import {Injectable} from '@angular/core';
|
||||||
import {Http, Response} from '@angular/http';
|
import {Http, Response} from '@angular/http';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {OpenaireProperties} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import 'rxjs/add/operator/do';
|
import 'rxjs/add/operator/do';
|
||||||
import { CacheService } from '../shared/cache.service';
|
import { CacheService } from '../../shared/cache.service';
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class HtmlProgressReportService {
|
export class HtmlProjectReportService {
|
||||||
|
|
||||||
constructor(private http: Http, public _cache: CacheService) {}
|
constructor(private http: Http, public _cache: CacheService) {}
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { RouterModule } from '@angular/router';
|
|
||||||
|
|
||||||
import { PersonComponent } from './person/person.component';
|
|
||||||
import { ProjectComponent } from './project/project.component';
|
|
||||||
import { OrganizationComponent } from './organization/organization.component';
|
|
||||||
import { DatasetComponent } from './dataset/dataset.component';
|
|
||||||
import { PublicationComponent } from './publication/publication.component';
|
|
||||||
import { DataProviderComponent } from './dataProvider/dataProvider.component'
|
|
||||||
|
|
||||||
import { HtmlProgressReportComponent } from './project/htmlProgressReport.component';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
RouterModule.forChild([
|
|
||||||
{ path: 'search/person', component: PersonComponent },
|
|
||||||
{ path: 'search/project', component: ProjectComponent },
|
|
||||||
{ path: 'search/organization', component: OrganizationComponent },
|
|
||||||
{ path: 'search/dataset', component: DatasetComponent },
|
|
||||||
{ path: 'search/publication', component: PublicationComponent },
|
|
||||||
{ path: 'search/dataprovider', component: DataProviderComponent},
|
|
||||||
{ path: 'openaire', component: HtmlProgressReportComponent}
|
|
||||||
])
|
|
||||||
]
|
|
||||||
})
|
|
||||||
export class LandingRoutingModule { }
|
|
|
@ -1,61 +1,25 @@
|
||||||
//import {MaterialModule} from '@angular/material';
|
/* This module contains all common components for all landing pages */
|
||||||
|
|
||||||
import { NgModule} from '@angular/core';
|
import { NgModule} from '@angular/core';
|
||||||
import { CommonModule } from '@angular/common';
|
import { CommonModule } from '@angular/common';
|
||||||
import { FormsModule } from '@angular/forms';
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
import {UtilsModule} from '../utils/utils.module';
|
|
||||||
import {ServicesModule} from '../services/services.module';
|
|
||||||
|
|
||||||
import {SearchModule} from '../searchPages/search.module';
|
|
||||||
|
|
||||||
import {TabPagingComponent} from './tabPaging.component';
|
import {TabPagingComponent} from './tabPaging.component';
|
||||||
import {TabTableComponent} from './tabTable.component';
|
import {TabTableComponent} from './tabTable.component';
|
||||||
import {ShowTitleComponent} from './showTitle.component';
|
import {ShowTitleComponent} from './showTitle.component';
|
||||||
import {ShowAuthorsComponent} from './showAuthors.component';
|
|
||||||
import {ShowIdentifiersComponent} from './showIdentifiers.component';
|
|
||||||
import {ShowSubjectsComponent} from './showSubjects.component';
|
|
||||||
import {MetricsComponent} from './metrics.component';
|
|
||||||
|
|
||||||
import {PublicationsTabComponent} from './dataProvider/publicationsTab.component';
|
|
||||||
import {DatasetsTabComponent} from './dataProvider/datasetsTab.component';
|
|
||||||
import {StatisticsTabComponent} from './dataProvider/statisticsTab.component';
|
|
||||||
import {ProjectsTabComponent} from './dataProvider/projectsTab.component';
|
|
||||||
import {DatasourcesTabComponent} from './dataProvider/datasourcesTab.component';
|
|
||||||
import {OrganizationsTabComponent} from './dataProvider/organizationsTab.component';
|
|
||||||
import {RelatedDatasourcesTabComponent} from './dataProvider/relatedDatasourcesTab.component';
|
|
||||||
import {TabsComponent} from './dataProvider/tabs.component';
|
|
||||||
|
|
||||||
import {DataProviderComponent} from './dataProvider/dataProvider.component';
|
|
||||||
import { PersonComponent } from './person/person.component';
|
|
||||||
import { ProjectComponent } from './project/project.component';
|
|
||||||
import { OrganizationComponent } from './organization/organization.component';
|
|
||||||
import { DatasetComponent } from './dataset/dataset.component';
|
|
||||||
import { PublicationComponent } from './publication/publication.component';
|
|
||||||
|
|
||||||
import { LandingRoutingModule } from './landing-routing.module';
|
|
||||||
|
|
||||||
import { HtmlProgressReportComponent } from './project/htmlProgressReport.component';
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
//MaterialModule.forRoot(),
|
|
||||||
CommonModule, FormsModule,
|
|
||||||
UtilsModule,
|
|
||||||
ServicesModule,
|
|
||||||
SearchModule,
|
|
||||||
LandingRoutingModule
|
|
||||||
|
|
||||||
|
CommonModule, FormsModule,
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
TabPagingComponent, TabTableComponent, ShowTitleComponent, ShowAuthorsComponent,ShowIdentifiersComponent,ShowSubjectsComponent, MetricsComponent,
|
TabPagingComponent, TabTableComponent, ShowTitleComponent,
|
||||||
PublicationsTabComponent, DatasetsTabComponent, StatisticsTabComponent, ProjectsTabComponent, DatasourcesTabComponent, OrganizationsTabComponent, RelatedDatasourcesTabComponent, TabsComponent,
|
|
||||||
DataProviderComponent, PersonComponent, ProjectComponent, PublicationComponent, OrganizationComponent, DatasetComponent,
|
|
||||||
HtmlProgressReportComponent
|
|
||||||
],
|
],
|
||||||
providers:[
|
providers:[
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
DataProviderComponent, PersonComponent, ProjectComponent, PublicationComponent, OrganizationComponent, DatasetComponent,
|
TabPagingComponent, TabTableComponent, ShowTitleComponent,
|
||||||
HtmlProgressReportComponent
|
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class LandingModule { }
|
export class LandingModule { }
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
/* This module contains all common components for all landing pages */
|
||||||
|
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {MetricsComponent} from './metrics.component';
|
||||||
|
import { MetricsService } from '../services/metrics.service';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
|
||||||
|
CommonModule, FormsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
MetricsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
MetricsService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
|
||||||
|
MetricsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class MetricsModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { OrganizationComponent } from './organization.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: OrganizationComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class OrganizationRoutingModule { }
|
|
@ -45,7 +45,7 @@
|
||||||
{{organizationInfo.dataProviders.length}}
|
{{organizationInfo.dataProviders.length}}
|
||||||
</span-->
|
</span-->
|
||||||
<span class="uk-badge uk-badge-notification">
|
<span class="uk-badge uk-badge-notification">
|
||||||
{{searchDataprovidersComponent.searchUtils.totalResults}}
|
{{fetchDataproviders.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -115,18 +115,18 @@
|
||||||
|
|
||||||
<li id="dataProvidersTab">
|
<li id="dataProvidersTab">
|
||||||
<!--showDataProviders [dataProviders]="organizationInfo.dataProviders"></showDataProviders-->
|
<!--showDataProviders [dataProviders]="organizationInfo.dataProviders"></showDataProviders-->
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no dataproviders
|
There are no dataproviders
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDataprovidersComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchDataproviders.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDataprovidersComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{searchDataprovidersComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDataproviders.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDataproviders" >View all {{fetchDataproviders.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDataprovidersComponent.results" [(status)]= "searchDataprovidersComponent.status"></search-result>
|
<search-result [(results)]="fetchDataproviders.results" [(status)]= "fetchDataproviders.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<!--li id="metricsTab">
|
<!--li id="metricsTab">
|
||||||
|
|
|
@ -4,14 +4,11 @@ import {ActivatedRoute} from '@angular/router';
|
||||||
import {OrganizationService} from '../../services/organization.service';
|
import {OrganizationService} from '../../services/organization.service';
|
||||||
import {OrganizationInfo} from '../../utils/entities/organizationInfo';
|
import {OrganizationInfo} from '../../utils/entities/organizationInfo';
|
||||||
import {ReportsService} from '../../services/reports.service';
|
import {ReportsService} from '../../services/reports.service';
|
||||||
import { SearchDataprovidersComponent } from '../../searchPages/simple/searchDataproviders.component';
|
import { FetchDataproviders } from '../../utils/fetchEntitiesClasses/fetchDataproviders.class';
|
||||||
|
|
||||||
import { SearchDataprovidersService } from '../../services/searchDataproviders.service';
|
import { SearchDataprovidersService } from '../../services/searchDataproviders.service';
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
|
||||||
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import {ExportCSVComponent} from '../../utils/exportCSV.component';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'organization',
|
selector: 'organization',
|
||||||
|
@ -38,19 +35,16 @@ export class OrganizationComponent {
|
||||||
subDataproviders: any;
|
subDataproviders: any;
|
||||||
subDataprovidersCount: any;
|
subDataprovidersCount: any;
|
||||||
|
|
||||||
private searchDataprovidersComponent : SearchDataprovidersComponent;
|
private fetchDataproviders : FetchDataproviders;
|
||||||
private linkToSearchDataproviders = "";
|
private linkToSearchDataproviders = "";
|
||||||
private searchPublicationsComponent : SearchPublicationsComponent;
|
|
||||||
|
|
||||||
constructor (private _organizationService: OrganizationService,
|
constructor (private _organizationService: OrganizationService,
|
||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
private _searchDataprovidersService: SearchDataprovidersService,
|
private _searchDataprovidersService: SearchDataprovidersService,
|
||||||
private _searchPublicationsService: SearchPublicationsService,
|
|
||||||
private _reportsService: ReportsService) {
|
private _reportsService: ReportsService) {
|
||||||
|
|
||||||
console.info('organization constructor');
|
console.info('organization constructor');
|
||||||
this.searchDataprovidersComponent = new SearchDataprovidersComponent(this.route, this._searchDataprovidersService);
|
this.fetchDataproviders = new FetchDataproviders(this._searchDataprovidersService);
|
||||||
this.searchPublicationsComponent = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -73,8 +67,8 @@ export class OrganizationComponent {
|
||||||
this.subDataprovidersCount = this.route.queryParams.subscribe(params => {
|
this.subDataprovidersCount = this.route.queryParams.subscribe(params => {
|
||||||
this._searchDataprovidersService.numOfDataproviders("organizations/"+this.organizationId+"/datasources/count").subscribe(
|
this._searchDataprovidersService.numOfDataproviders("organizations/"+this.organizationId+"/datasources/count").subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchDataprovidersComponent.searchUtils.totalResults = data;
|
this.fetchDataproviders.searchUtils.totalResults = data;
|
||||||
console.info("this.searchDataprovidersComponent.searchUtils.totalResults = "+this.searchDataprovidersComponent.searchUtils.totalResults);
|
console.info("this.fetchDataproviders.searchUtils.totalResults = "+this.fetchDataproviders.searchUtils.totalResults);
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -82,7 +76,7 @@ export class OrganizationComponent {
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
*/
|
*/
|
||||||
this.searchDataprovidersComponent.getNumForEntity("organization", this.organizationId);
|
this.fetchDataproviders.getNumForEntity("organization", this.organizationId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -160,12 +154,12 @@ export class OrganizationComponent {
|
||||||
//}
|
//}
|
||||||
|
|
||||||
private searchDataproviders() {
|
private searchDataproviders() {
|
||||||
this.searchDataprovidersComponent.getResultsForEntity("organization", this.organizationId, 1, 10);
|
this.fetchDataproviders.getResultsForEntity("organization", this.organizationId, 1, 10);
|
||||||
this.linkToSearchDataproviders = OpenaireProperties.getLinkToAdvancedSearchDataProviders() + "?organization=" + this.organizationId + "&or=and";;
|
this.linkToSearchDataproviders = OpenaireProperties.getLinkToAdvancedSearchDataProviders() + "?organization=" + this.organizationId + "&or=and";;
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDataprovidersInit() {
|
private searchDataprovidersInit() {
|
||||||
if(this.subDataproviders == undefined && this.searchDataprovidersComponent.searchUtils.totalResults > 0) {
|
if(this.subDataproviders == undefined && this.fetchDataproviders.searchUtils.totalResults > 0) {
|
||||||
this.subDataproviders = this.route.queryParams.subscribe(params => {
|
this.subDataproviders = this.route.queryParams.subscribe(params => {
|
||||||
this.searchDataproviders();
|
this.searchDataproviders();
|
||||||
});
|
});
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { OrganizationServiceModule} from '../../services/organizationService.module';
|
||||||
|
import { OrganizationComponent } from './organization.component';
|
||||||
|
import { OrganizationRoutingModule } from './organization-routing.module';
|
||||||
|
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
import {SearchResultsModule } from '../../searchPages/searchUtils/searchResults.module';
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {ReportsServiceModule} from '../../services/reportsService.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
LandingModule,
|
||||||
|
OrganizationRoutingModule,
|
||||||
|
SearchResultsModule,
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
ReportsServiceModule,
|
||||||
|
OrganizationServiceModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
OrganizationComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
OrganizationComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class OrganizationModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { PersonComponent } from './person.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: PersonComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class PersonRoutingModule { }
|
|
@ -20,7 +20,7 @@
|
||||||
<a href="#publicationsTab">
|
<a href="#publicationsTab">
|
||||||
Publications
|
Publications
|
||||||
<span class="uk-badge uk-badge-notification">
|
<span class="uk-badge uk-badge-notification">
|
||||||
{{searchPublicationsComponent.searchUtils.totalResults}}
|
{{fetchPublications.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -28,7 +28,7 @@
|
||||||
<a href="#researchDataTab">
|
<a href="#researchDataTab">
|
||||||
Research Data
|
Research Data
|
||||||
<span class="uk-badge uk-badge-notification">
|
<span class="uk-badge uk-badge-notification">
|
||||||
{{searchDatasetsComponent.searchUtils.totalResults}}
|
{{fetchDatasets.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -37,34 +37,34 @@
|
||||||
<ul id="tab-content" class="uk-switcher uk-margin">
|
<ul id="tab-content" class="uk-switcher uk-margin">
|
||||||
<li id="publicationsTab">
|
<li id="publicationsTab">
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no publications
|
There are no publications
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchPublications.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchPublicationsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{searchPublicationsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{fetchPublications.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchPublicationsComponent.results" [(status)]= "searchPublicationsComponent.status"></search-result>
|
<search-result [(results)]="fetchPublications.results" [(status)]= "fetchPublications.searchUtils.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li id="researchDataTab">
|
<li id="researchDataTab">
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no research data
|
There are no research data
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDatasetsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{searchDatasetsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDatasets.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{fetchDatasets.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDatasetsComponent.results" [(status)]= "searchDatasetsComponent.status"></search-result>
|
<search-result [(results)]="fetchDatasets.results" [(status)]= "fetchDatasets.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
import {Component} from '@angular/core';
|
import {Component} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import {PersonService} from '../../services/person.service';
|
import {PersonService} from './person.service';
|
||||||
import { PersonInfo } from '../../utils/entities/personInfo';
|
import { PersonInfo } from '../../utils/entities/personInfo';
|
||||||
|
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
||||||
import { SearchDatasetsComponent } from '../../searchPages/simple/searchDatasets.component';
|
import { FetchDatasets } from '../../utils/fetchEntitiesClasses/fetchDatasets.class';
|
||||||
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
||||||
import { SearchResultComponent } from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
|
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
|
@ -18,15 +17,14 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
})
|
})
|
||||||
|
|
||||||
export class PersonComponent {
|
export class PersonComponent {
|
||||||
|
|
||||||
sub: any;
|
sub: any;
|
||||||
subPublications: any;
|
subPublications: any;
|
||||||
subDatasets: any;
|
subDatasets: any;
|
||||||
subDatasetsCount: any;
|
subDatasetsCount: any;
|
||||||
|
|
||||||
private searchPublicationsComponent : SearchPublicationsComponent;
|
public fetchPublications : FetchPublications;
|
||||||
private linkToSearchPublications = "";
|
private linkToSearchPublications = "";
|
||||||
private searchDatasetsComponent : SearchDatasetsComponent;
|
public fetchDatasets : FetchDatasets;
|
||||||
private linkToSearchDatasets = "";
|
private linkToSearchDatasets = "";
|
||||||
|
|
||||||
personInfo: PersonInfo;
|
personInfo: PersonInfo;
|
||||||
|
@ -39,8 +37,8 @@ export class PersonComponent {
|
||||||
private _searchPublicationsService: SearchPublicationsService,
|
private _searchPublicationsService: SearchPublicationsService,
|
||||||
private _searchDatasetsService: SearchDatasetsService) {
|
private _searchDatasetsService: SearchDatasetsService) {
|
||||||
console.info('person constructor');
|
console.info('person constructor');
|
||||||
this.searchPublicationsComponent = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
this.fetchPublications = new FetchPublications( this._searchPublicationsService);
|
||||||
this.searchDatasetsComponent = new SearchDatasetsComponent(this.route, this._searchDatasetsService);
|
this.fetchDatasets = new FetchDatasets( this._searchDatasetsService);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -49,21 +47,20 @@ export class PersonComponent {
|
||||||
this.personId = params['personId'];
|
this.personId = params['personId'];
|
||||||
console.info("Id is :"+this.personId);
|
console.info("Id is :"+this.personId);
|
||||||
if(this.personId){
|
if(this.personId){
|
||||||
this.getPersonInfo();
|
this.fetchPersonInfo();
|
||||||
|
this.searchPublications();
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
this.warningMessage="No valid person id";
|
this.warningMessage="No valid person id";
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
this.subPublications = this.route.queryParams.subscribe(params => {
|
|
||||||
this.searchPublications();
|
|
||||||
});
|
|
||||||
|
|
||||||
this.subDatasetsCount = this.route.queryParams.subscribe(params => {
|
this.subDatasetsCount = this.route.queryParams.subscribe(params => {
|
||||||
this._searchDatasetsService.numOfEntityDatasets(this.personId, "people/").subscribe(
|
this._searchDatasetsService.numOfEntityDatasets(this.personId, "people/").subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchDatasetsComponent.searchUtils.totalResults = data;
|
this.fetchDatasets.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -73,7 +70,7 @@ export class PersonComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasetsInit() {
|
private searchDatasetsInit() {
|
||||||
if(this.subDatasets == undefined && this.searchDatasetsComponent.searchUtils.totalResults > 0) {
|
if(this.subDatasets == undefined && this.fetchDatasets.searchUtils.totalResults > 0) {
|
||||||
this.subDatasets = this.route.queryParams.subscribe(params => {
|
this.subDatasets = this.route.queryParams.subscribe(params => {
|
||||||
this.searchDatasets();
|
this.searchDatasets();
|
||||||
});
|
});
|
||||||
|
@ -82,16 +79,16 @@ export class PersonComponent {
|
||||||
|
|
||||||
ngOnDestroy() {
|
ngOnDestroy() {
|
||||||
this.sub.unsubscribe();
|
this.sub.unsubscribe();
|
||||||
this.subPublications.unsubscribe();
|
// this.subPublications.unsubscribe();
|
||||||
if(this.subDatasets != undefined) {
|
// if(this.subDatasets != undefined) {
|
||||||
this.subDatasets.unsubscribe();
|
// this.subDatasets.unsubscribe();
|
||||||
}
|
// }
|
||||||
this.subDatasetsCount.unsubscribe();
|
// this.subDatasetsCount.unsubscribe();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private getPersonInfo () {
|
private fetchPersonInfo () {
|
||||||
console.info("inside getPersonInfo of component");
|
console.info("inside fetchPersonInfo of component");
|
||||||
|
|
||||||
this.warningMessage = '';
|
this.warningMessage = '';
|
||||||
this.errorMessage=""
|
this.errorMessage=""
|
||||||
|
@ -112,12 +109,12 @@ export class PersonComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchPublications() {
|
private searchPublications() {
|
||||||
this.searchPublicationsComponent.getResultsForEntity("person", this.personId, 1, 10);
|
this.fetchPublications.getResultsForEntity("person", this.personId, 1, 10);
|
||||||
this.linkToSearchPublications = OpenaireProperties.getLinkToAdvancedSearchPublications() + "?person=" + this.personId + "&pe=and";
|
this.linkToSearchPublications = OpenaireProperties.getLinkToAdvancedSearchPublications() + "?person=" + this.personId + "&pe=and";
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasets() {
|
private searchDatasets() {
|
||||||
this.searchDatasetsComponent.getResultsForEntity("person", this.personId, 1, 10);
|
this.fetchDatasets.getResultsForEntity("person", this.personId, 1, 10);
|
||||||
this.linkToSearchDatasets = OpenaireProperties.getLinkToAdvancedSearchDatasets() + "?person=" + this.personId + "&pe=and";
|
this.linkToSearchDatasets = OpenaireProperties.getLinkToAdvancedSearchDatasets() + "?person=" + this.personId + "&pe=and";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { PersonService} from './person.service';
|
||||||
|
import { PersonComponent } from './person.component';
|
||||||
|
import { PersonRoutingModule } from './person-routing.module';
|
||||||
|
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
import {SearchResultsModule } from '../../searchPages/searchUtils/searchResults.module';
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {PublicationsServiceModule} from '../../services/publicationsService.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
LandingModule,
|
||||||
|
PersonRoutingModule,
|
||||||
|
SearchResultsModule,
|
||||||
|
DatasetsServiceModule, PublicationsServiceModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
PersonComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
PersonService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
PersonComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class PersonModule { }
|
|
@ -5,9 +5,9 @@ import 'rxjs/add/observable/of';
|
||||||
import 'rxjs/add/operator/do';
|
import 'rxjs/add/operator/do';
|
||||||
import 'rxjs/add/operator/share';
|
import 'rxjs/add/operator/share';
|
||||||
|
|
||||||
import { CacheService } from '../shared/cache.service';
|
import { CacheService } from '../../shared/cache.service';
|
||||||
import {PersonInfo} from '../utils/entities/personInfo';
|
import {PersonInfo} from '../../utils/entities/personInfo';
|
||||||
import {OpenaireProperties} from '../utils/properties/openaireProperties'
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties'
|
||||||
|
|
||||||
export function hashCodeString(str: string): string {
|
export function hashCodeString(str: string): string {
|
||||||
let hash = 0;
|
let hash = 0;
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { ProjectComponent } from './project.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: ProjectComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ProjectRoutingModule { }
|
|
@ -56,7 +56,7 @@
|
||||||
<a href="#publicationsTab">
|
<a href="#publicationsTab">
|
||||||
Publications
|
Publications
|
||||||
<span class="uk-badge uk-badge-notification">
|
<span class="uk-badge uk-badge-notification">
|
||||||
{{searchPublicationsComponent.searchUtils.totalResults}}
|
{{fetchPublications.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -64,7 +64,7 @@
|
||||||
<a href="#researchDataTab">
|
<a href="#researchDataTab">
|
||||||
Research Data
|
Research Data
|
||||||
<span class="uk-badge uk-badge-notification">
|
<span class="uk-badge uk-badge-notification">
|
||||||
{{searchDatasetsComponent.searchUtils.totalResults}}
|
{{fetchDatasets.searchUtils.totalResults}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -85,43 +85,43 @@
|
||||||
<ul id="tab-content" class="uk-switcher uk-margin">
|
<ul id="tab-content" class="uk-switcher uk-margin">
|
||||||
<li id="publicationsTab">
|
<li id="publicationsTab">
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0" class = "uk-alert" >
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0" class = "uk-alert" >
|
||||||
There are no publications
|
There are no publications
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchPublications.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchPublicationsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{searchPublicationsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults > 10" ><a [href] = "linkToSearchPublications" >View all {{fetchPublications.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchPublicationsComponent.results" [(status)]= "searchPublicationsComponent.status"></search-result>
|
<search-result [(results)]="fetchPublications.results" [(status)]= "fetchPublications.searchUtils.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li id="researchDataTab">
|
<li id="researchDataTab">
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no research data
|
There are no research data
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="searchDatasetsComponent.searchUtils.totalResults > 0">
|
<div *ngIf="fetchDatasets.searchUtils.totalResults > 0">
|
||||||
<p>
|
<p>
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class = "uk-text-right" *ngIf = "searchDatasetsComponent.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{searchDatasetsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDatasets.searchUtils.totalResults > 10" ><a [href] = "linkToSearchDatasets" >View all {{fetchDatasets.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDatasetsComponent.results" [(status)]= "searchDatasetsComponent.status"></search-result>
|
<search-result [(results)]="fetchDatasets.results" [(status)]= "fetchDatasets.searchUtils.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li id="statisticsTab">
|
<li id="statisticsTab">
|
||||||
<div *ngIf="searchPublicationsComponent.searchUtils.totalResults == 0 && searchDatasetsComponent.searchUtils.totalResults == 0" class = "uk-alert">
|
<div *ngIf="fetchPublications.searchUtils.totalResults == 0 && fetchDatasets.searchUtils.totalResults == 0" class = "uk-alert">
|
||||||
There are no statistics
|
There are no statistics
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div *ngIf="statsClicked && (searchPublicationsComponent.searchUtils.totalResults != 0 || searchDatasetsComponent.searchUtils.totalResults != 0)">
|
<div *ngIf="statsClicked && (fetchPublications.searchUtils.totalResults != 0 || fetchDatasets.searchUtils.totalResults != 0)">
|
||||||
<p class="uk-text-bold">
|
<p class="uk-text-bold">
|
||||||
The results below are discovered through our pilot algorithms.
|
The results below are discovered through our pilot algorithms.
|
||||||
<a href="mailto:">Let us know how we are doing!</a>
|
<a href="mailto:">Let us know how we are doing!</a>
|
||||||
|
@ -171,7 +171,7 @@
|
||||||
<!--li (click)="showHTML()"-->
|
<!--li (click)="showHTML()"-->
|
||||||
<li>
|
<li>
|
||||||
<a target="_blank"
|
<a target="_blank"
|
||||||
href="/openaire?projectId={{projectId}}&size={{searchPublicationsComponent.searchUtils.totalResults}}">
|
href="/project-report?projectId={{projectId}}&size={{fetchPublications.searchUtils.totalResults}}">
|
||||||
View {{projectInfo.funder}} progress report (HTML)
|
View {{projectInfo.funder}} progress report (HTML)
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import {Component, ViewChild} from '@angular/core';
|
import {Component, ViewChild} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {ActivatedRoute, Params} from '@angular/router';
|
import {ActivatedRoute, Params} from '@angular/router';
|
||||||
import {ProjectService} from '../../services/project.service';
|
import {ProjectService} from './project.service';
|
||||||
import {ProjectInfo} from '../../utils/entities/projectInfo';
|
import {ProjectInfo} from '../../utils/entities/projectInfo';
|
||||||
import { SearchPublicationsComponent } from '../../searchPages/simple/searchPublications.component';
|
|
||||||
import {SearchPublicationsService} from '../../services/searchPublications.service';
|
|
||||||
import { SearchDatasetsComponent } from '../../searchPages/simple/searchDatasets.component';
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
|
import { SearchPublicationsService } from '../../services/searchPublications.service';
|
||||||
|
import { FetchDatasets } from '../../utils/fetchEntitiesClasses/fetchDatasets.class';
|
||||||
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
import { SearchDatasetsService } from '../../services/searchDatasets.service';
|
||||||
import {SearchResultComponent} from '../../searchPages/searchUtils/searchResult.component';
|
|
||||||
import {ReportsService} from '../../services/reports.service';
|
import {ReportsService} from '../../services/reports.service';
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
||||||
|
@ -43,9 +45,9 @@ export class ProjectComponent{
|
||||||
subDatasets: any;
|
subDatasets: any;
|
||||||
subDatasetsCount: any;
|
subDatasetsCount: any;
|
||||||
|
|
||||||
public searchPublicationsComponent : SearchPublicationsComponent;
|
public fetchPublications : FetchPublications;
|
||||||
public linkToSearchPublications = "";
|
public linkToSearchPublications = "";
|
||||||
public searchDatasetsComponent : SearchDatasetsComponent;
|
public fetchDatasets : FetchDatasets;
|
||||||
public linkToSearchDatasets = "";
|
public linkToSearchDatasets = "";
|
||||||
|
|
||||||
constructor (private _projectService: ProjectService,
|
constructor (private _projectService: ProjectService,
|
||||||
|
@ -55,8 +57,8 @@ export class ProjectComponent{
|
||||||
private _reportsService: ReportsService) {
|
private _reportsService: ReportsService) {
|
||||||
console.info('project constructor.');
|
console.info('project constructor.');
|
||||||
|
|
||||||
this.searchPublicationsComponent = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
this.fetchPublications = new FetchPublications( this._searchPublicationsService);
|
||||||
this.searchDatasetsComponent = new SearchDatasetsComponent(this.route, this._searchDatasetsService);
|
this.fetchDatasets = new FetchDatasets(this._searchDatasetsService);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -74,7 +76,7 @@ export class ProjectComponent{
|
||||||
|
|
||||||
this.subDatasetsCount = this._searchDatasetsService.numOfEntityDatasets(this.projectId, "projects/").subscribe(
|
this.subDatasetsCount = this._searchDatasetsService.numOfEntityDatasets(this.projectId, "projects/").subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchDatasetsComponent.searchUtils.totalResults = data;
|
this.fetchDatasets.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -84,7 +86,7 @@ export class ProjectComponent{
|
||||||
}
|
}
|
||||||
|
|
||||||
this.downloadURLAPI = OpenaireProperties.getCsvAPIURL();
|
this.downloadURLAPI = OpenaireProperties.getCsvAPIURL();
|
||||||
this.csvParams = "format=csv-special&page=0&size="+this.searchPublicationsComponent.searchUtils.totalResults+"&type=publications&query=(((oaftype exact result) and (resulttypeid exact publication)) and (relprojectid exact "+this.projectId+"))";
|
this.csvParams = "format=csv-special&page=0&size="+this.fetchPublications.searchUtils.totalResults+"&type=publications&query=(((oaftype exact result) and (resulttypeid exact publication)) and (relprojectid exact "+this.projectId+"))";
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -96,17 +98,17 @@ export class ProjectComponent{
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchPublications() {
|
private searchPublications() {
|
||||||
this.searchPublicationsComponent.getResultsForEntity("project", this.projectId, 1, 10);
|
this.fetchPublications.getResultsForEntity("project", this.projectId, 1, 10);
|
||||||
this.linkToSearchPublications = OpenaireProperties.getLinkToAdvancedSearchPublications() + "?project=" + this.projectId+"&pr=and";
|
this.linkToSearchPublications = OpenaireProperties.getLinkToAdvancedSearchPublications() + "?project=" + this.projectId+"&pr=and";
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasets() {
|
private searchDatasets() {
|
||||||
this.searchDatasetsComponent.getResultsForEntity("project", this.projectId, 1, 10);
|
this.fetchDatasets.getResultsForEntity("project", this.projectId, 1, 10);
|
||||||
this.linkToSearchDatasets = OpenaireProperties.getLinkToAdvancedSearchDatasets() + "?project=" + this.projectId+"&pr=and";
|
this.linkToSearchDatasets = OpenaireProperties.getLinkToAdvancedSearchDatasets() + "?project=" + this.projectId+"&pr=and";
|
||||||
}
|
}
|
||||||
|
|
||||||
private searchDatasetsInit() {
|
private searchDatasetsInit() {
|
||||||
if(this.subDatasets == undefined && this.searchDatasetsComponent.searchUtils.totalResults > 0) {
|
if(this.subDatasets == undefined && this.fetchDatasets.searchUtils.totalResults > 0) {
|
||||||
this.searchDatasets();
|
this.searchDatasets();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -168,9 +170,9 @@ export class ProjectComponent{
|
||||||
info += ")";
|
info += ")";
|
||||||
}
|
}
|
||||||
info +="</h1>";
|
info +="</h1>";
|
||||||
info += "<h3>"+this.searchPublicationsComponent.searchUtils.totalResults+" publications</h3>";
|
info += "<h3>"+this.fetchPublications.searchUtils.totalResults+" publications</h3>";
|
||||||
|
|
||||||
let htmlParams = 'resources?format=html&page=0&size='+this.searchPublicationsComponent.searchUtils.totalResults+'&type=publications&query=(((oaftype exact result) and (resulttypeid exact publication)) and (relprojectid exact "'+this.projectId+'"))';
|
let htmlParams = 'resources?format=html&page=0&size='+this.fetchPublications.searchUtils.totalResults+'&type=publications&query=(((oaftype exact result) and (resulttypeid exact publication)) and (relprojectid exact "'+this.projectId+'"))';
|
||||||
this._reportsService.downloadHTMLFile(this.downloadURLAPI+htmlParams, info)
|
this._reportsService.downloadHTMLFile(this.downloadURLAPI+htmlParams, info)
|
||||||
.subscribe(data => this.funct(data),
|
.subscribe(data => this.funct(data),
|
||||||
error => console.log("Error downloading the file."),
|
error => console.log("Error downloading the file."),
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
//import {MaterialModule} from '@angular/material';
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { ProjectServiceModule} from './projectService.module';
|
||||||
|
// import {HtmlProgressReportService} from './htmlProgressReport.service';
|
||||||
|
|
||||||
|
import { ProjectComponent } from './project.component';
|
||||||
|
import { ProjectRoutingModule } from './project-routing.module';
|
||||||
|
import {IFrameModule} from '../../utils/iframe.module';
|
||||||
|
import {MetricsModule} from '../metrics.module';
|
||||||
|
import {ReportsServiceModule} from '../../services/reportsService.module';
|
||||||
|
import {PublicationsServiceModule} from '../../services/publicationsService.module';
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {SearchResultsModule } from '../../searchPages/searchUtils/searchResults.module';
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, LandingModule,
|
||||||
|
ProjectRoutingModule,
|
||||||
|
SearchResultsModule, IFrameModule, MetricsModule, ReportsServiceModule, PublicationsServiceModule, DatasetsServiceModule, ProjectServiceModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
ProjectComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
// ProjectService,
|
||||||
|
// HtmlProgressReportService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
ProjectComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ProjectModule { }
|
|
@ -0,0 +1,200 @@
|
||||||
|
import {Injectable} from '@angular/core';
|
||||||
|
import {Http, Response} from '@angular/http';
|
||||||
|
import {Observable} from 'rxjs/Observable';
|
||||||
|
import {ProjectInfo} from '../../utils/entities/projectInfo';
|
||||||
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
import 'rxjs/add/observable/of';
|
||||||
|
import 'rxjs/add/operator/do';
|
||||||
|
import 'rxjs/add/operator/share';
|
||||||
|
import { CacheService } from '../../shared/cache.service';
|
||||||
|
@Injectable()
|
||||||
|
export class ProjectService {
|
||||||
|
|
||||||
|
constructor(private http: Http, public _cache: CacheService) {}
|
||||||
|
|
||||||
|
projectInfo: ProjectInfo;
|
||||||
|
|
||||||
|
getProjectInfo (id: string):any {
|
||||||
|
console.info("getProjectInfo in service");
|
||||||
|
|
||||||
|
let url = OpenaireProperties. getSearchAPIURLLast() + 'projects/'+id+"?format=json";
|
||||||
|
let key = url;
|
||||||
|
if (this._cache.has(key)) {
|
||||||
|
return Observable.of(this._cache.get(key))
|
||||||
|
.map(res => this.parseProjectInfo(res));
|
||||||
|
}
|
||||||
|
return this.http.get(url)
|
||||||
|
.map(res => <any> res.json())
|
||||||
|
.map(res => res['result']['metadata']['oaf:entity']['oaf:project'])
|
||||||
|
.map(res => [res,
|
||||||
|
res['fundingtree'],
|
||||||
|
res['rels']['rel']])
|
||||||
|
.do(res => {
|
||||||
|
this._cache.set(key, res);
|
||||||
|
})
|
||||||
|
.map(res => this.parseProjectInfo(res));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
get project strtDate and endDate
|
||||||
|
*/
|
||||||
|
getProjectDates (id: string):any {
|
||||||
|
|
||||||
|
let url = OpenaireProperties. getSearchAPIURLLast()+'projects/'+id+"?format=json";
|
||||||
|
let key = url+'_projectDates';
|
||||||
|
if (this._cache.has(key)) {
|
||||||
|
return Observable.of(this._cache.get(key))
|
||||||
|
.map(res => [res,
|
||||||
|
res['fundingtree'],
|
||||||
|
res['rels']['rel']])
|
||||||
|
.map(res => this.parseProjectDates(id,res))
|
||||||
|
}
|
||||||
|
return this.http.get(url)
|
||||||
|
.map(res => <any> res.json())
|
||||||
|
.map(res => res['result']['metadata']['oaf:entity']['oaf:project'])
|
||||||
|
.do(res => {
|
||||||
|
this._cache.set(key, res);
|
||||||
|
})
|
||||||
|
.map(res => [res,
|
||||||
|
res['fundingtree'],
|
||||||
|
res['rels']['rel']])
|
||||||
|
.map(res => this.parseProjectDates(id,res))
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
getHTMLInfo(id: string): any {
|
||||||
|
console.info("getHTMLInfo in service");
|
||||||
|
|
||||||
|
let url = OpenaireProperties. getSearchAPIURLLast() + 'projects/'+id+"?format=json";
|
||||||
|
let key = url;
|
||||||
|
if (this._cache.has(key)) {
|
||||||
|
return Observable.of(this._cache.get(key))
|
||||||
|
.map(res => this.parseHTMLInfo(res));
|
||||||
|
}
|
||||||
|
return this.http.get(url)
|
||||||
|
.map(res => <any> res.json())
|
||||||
|
.map(res => res['result']['metadata']['oaf:entity']['oaf:project'])
|
||||||
|
.do(res => {
|
||||||
|
this._cache.set(key, res);
|
||||||
|
})
|
||||||
|
.map(res => this.parseHTMLInfo(res));
|
||||||
|
}
|
||||||
|
|
||||||
|
private handleError (error: Response) {
|
||||||
|
// in a real world app, we may send the error to some remote logging infrastructure
|
||||||
|
// instead of just logging it to the console
|
||||||
|
console.log(error);
|
||||||
|
return Observable.throw(error || 'Server error');
|
||||||
|
}
|
||||||
|
|
||||||
|
parseHTMLInfo (data: any):any {
|
||||||
|
let htmlInfo: {"title": string, "acronym": string, "callIdentifier": string};
|
||||||
|
|
||||||
|
if(data != null) {
|
||||||
|
htmlInfo = {"title": data.title, "acronym": data.acronym, "callIdentifier": data.callidentifier};
|
||||||
|
}
|
||||||
|
console.info(htmlInfo);
|
||||||
|
return htmlInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
parseProjectInfo (data: any):any {
|
||||||
|
this.projectInfo = new ProjectInfo();
|
||||||
|
|
||||||
|
if(data[0] != null) {
|
||||||
|
this.projectInfo.acronym = data[0].acronym;
|
||||||
|
this.projectInfo.title = data[0].title;
|
||||||
|
this.projectInfo.callIdentifier = data[0].callidentifier;
|
||||||
|
this.projectInfo.contractNum = data[0].code;
|
||||||
|
this.projectInfo.startDate = data[0].startdate;
|
||||||
|
this.projectInfo.endDate = data[0].enddate;
|
||||||
|
this.projectInfo.openAccessMandate = data[0].oamandatepublications;
|
||||||
|
this.projectInfo.specialClause39 = data[0].ecsc39;
|
||||||
|
}
|
||||||
|
if(data[1] != null) {
|
||||||
|
if(data[1]['funder'] != null) {
|
||||||
|
this.projectInfo.funder = data[1]['funder'].shortname;
|
||||||
|
}
|
||||||
|
|
||||||
|
let funding;
|
||||||
|
this.projectInfo.funding = "";
|
||||||
|
|
||||||
|
if(data[1]['funding_level_2'] != null) {
|
||||||
|
funding = data[1]['funding_level_2'].id;
|
||||||
|
} else if(data[1]['funding_level_1'] != null) {
|
||||||
|
funding = data[1]['funding_level_1'].id;
|
||||||
|
} else if(data[1]['funding_level_0'] != null) {
|
||||||
|
funding = data[1]['funding_level_0'].id;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(funding != undefined) {
|
||||||
|
funding = funding.split("::");
|
||||||
|
for(let i=1; i<funding.length; i++) {
|
||||||
|
if(this.projectInfo.funding != "") {
|
||||||
|
this.projectInfo.funding += " | ";
|
||||||
|
}
|
||||||
|
this.projectInfo.funding += funding[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(data[2] != null) {
|
||||||
|
this.projectInfo.organizations = new Map<string, string>();
|
||||||
|
|
||||||
|
let name = "";
|
||||||
|
let url = "";
|
||||||
|
|
||||||
|
if(!Array.isArray(data[2])) {
|
||||||
|
if(data[2].hasOwnProperty("legalshortname")) {
|
||||||
|
name = data[2].legalshortname;
|
||||||
|
} else if(data[2].hasOwnProperty("legalname")) {
|
||||||
|
name = data[2].legalname;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(data[2].hasOwnProperty("to") && name != "") {
|
||||||
|
url = OpenaireProperties.getsearchLinkToOrganization()+data[2]['to'].content;
|
||||||
|
}
|
||||||
|
if(name != "") {
|
||||||
|
this.projectInfo.organizations.set(name, url);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
for(let i=0; i<data[2].length; i++) {
|
||||||
|
if(data[2][i].hasOwnProperty("to") && data[2][i]['to'].class == "hasParticipant") {
|
||||||
|
if(data[2][i].hasOwnProperty("legalshortname")) {
|
||||||
|
name = data[2][i].legalshortname;
|
||||||
|
} else if(data[2][i].hasOwnProperty("legalname")) {
|
||||||
|
name = data[2][i].legalname;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(data[2][i].hasOwnProperty("to") && name!="") {
|
||||||
|
url = OpenaireProperties.getsearchLinkToOrganization()+data[2][i]['to'].content;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(name != "") {
|
||||||
|
this.projectInfo.organizations.set(name, url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.projectInfo.funder == "EC") {
|
||||||
|
this.projectInfo.url = OpenaireProperties.getCordisURL()+this.projectInfo.contractNum;
|
||||||
|
this.projectInfo.urlInfo = "Detailed project information (CORDIS)";
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.projectInfo;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
parseProjectDates (id: string, data: any):any {
|
||||||
|
var project = { id: id, startDate: "", endDate: ""};
|
||||||
|
if(data[0] != null) {
|
||||||
|
project.startDate = data[0].startdate;
|
||||||
|
project.endDate = data[0].enddate;
|
||||||
|
}
|
||||||
|
return project;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {ProjectService} from './project.service';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
ProjectService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ProjectServiceModule { }
|
|
@ -0,0 +1,13 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { PublicationComponent } from './publication.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: PublicationComponent }
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class PublicationRoutingModule { }
|
|
@ -1,6 +1,6 @@
|
||||||
import {Component, ViewChild} from '@angular/core';
|
import {Component, ViewChild} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {PublicationService} from '../../services/publication.service';
|
import {PublicationService} from './publication.service';
|
||||||
import {PublicationInfo} from '../../utils/entities/publicationInfo';
|
import {PublicationInfo} from '../../utils/entities/publicationInfo';
|
||||||
import {ActivatedRoute} from '@angular/router';
|
import {ActivatedRoute} from '@angular/router';
|
||||||
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
//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 { PublicationService} from './publication.service';
|
||||||
|
import { PublicationComponent } from './publication.component';
|
||||||
|
import { PublicationRoutingModule } from './publication-routing.module';
|
||||||
|
import {MetricsModule} from '../metrics.module';
|
||||||
|
import {IFrameModule} from '../../utils/iframe.module';
|
||||||
|
import {AltMetricsModule} from '../../utils/altmetrics.module';
|
||||||
|
|
||||||
|
|
||||||
|
import { ResultLandingModule } from '../resultLanding.module';
|
||||||
|
import { LandingModule } from '../landing.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, LandingModule,SharedModule,
|
||||||
|
ResultLandingModule, PublicationRoutingModule, IFrameModule, MetricsModule, AltMetricsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
PublicationComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
PublicationService
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
PublicationComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class PublicationModule { }
|
|
@ -1,12 +1,12 @@
|
||||||
import {Injectable} from '@angular/core';
|
import {Injectable} from '@angular/core';
|
||||||
import {Http, Response} from '@angular/http';
|
import {Http, Response} from '@angular/http';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {PublicationInfo} from '../utils/entities/publicationInfo';
|
import {PublicationInfo} from '../../utils/entities/publicationInfo';
|
||||||
import {OpenaireProperties} from '../utils/properties/openaireProperties';
|
import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import 'rxjs/add/observable/of';
|
import 'rxjs/add/observable/of';
|
||||||
import 'rxjs/add/operator/do';
|
import 'rxjs/add/operator/do';
|
||||||
import 'rxjs/add/operator/share';
|
import 'rxjs/add/operator/share';
|
||||||
import { CacheService } from '../shared/cache.service';
|
import { CacheService } from '../../shared/cache.service';
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class PublicationService {
|
export class PublicationService {
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* This module contains all common components for Publication & Daasets Landing Pages */
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {ShowAuthorsComponent} from './showAuthors.component';
|
||||||
|
import {ShowIdentifiersComponent} from './showIdentifiers.component';
|
||||||
|
import {ShowSubjectsComponent} from './showSubjects.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, RouterModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
ShowAuthorsComponent,ShowIdentifiersComponent,ShowSubjectsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
ShowAuthorsComponent,ShowIdentifiersComponent,ShowSubjectsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class ResultLandingModule { }
|
|
@ -9,6 +9,7 @@ import {Component, Input} from '@angular/core';
|
||||||
</div>
|
</div>
|
||||||
<span *ngFor="let item of authors.slice(0,30)">
|
<span *ngFor="let item of authors.slice(0,30)">
|
||||||
<a href="{{item['url']}}">
|
<a href="{{item['url']}}">
|
||||||
|
<!--a routerLinkActive="router-link-active" routerLink="/search/person" [queryParams]="{personId: 'datacite____::9da3a037961b36a634fcd40ab0bf6535'}" -->
|
||||||
{{item['name']}};
|
{{item['name']}};
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchDataProvidersComponent} from './advancedSearchDataProviders.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchDataProvidersComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDataProvidersRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchDataProvidersRoutingModule} from './advancedSearchDataProviders-routing.module';
|
||||||
|
import{AdvancedSearchDataProvidersComponent} from './advancedSearchDataProviders.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
AdvancedSearchDataProvidersRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchDataProvidersComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchDataProvidersComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDataProvidersModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchDatasetsComponent} from './advancedSearchDatasets.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchDatasetsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDatasetsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchDatasetsRoutingModule} from './advancedSearchDatasets-routing.module';
|
||||||
|
import{AdvancedSearchDatasetsComponent} from './advancedSearchDatasets.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DatasetsServiceModule,
|
||||||
|
AdvancedSearchDatasetsRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchDatasetsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchDatasetsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchDatasetsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchOrganizationsComponent} from './advancedSearchOrganizations.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchOrganizationsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchOrganizationsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchOrganizationsRoutingModule} from './advancedSearchOrganizations-routing.module';
|
||||||
|
import{AdvancedSearchOrganizationsComponent} from './advancedSearchOrganizations.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {OrganizationsServiceModule} from '../../services/organizationsService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
OrganizationsServiceModule,
|
||||||
|
AdvancedSearchOrganizationsRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchOrganizationsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchOrganizationsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchOrganizationsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchPeopleComponent} from './advancedSearchPeople.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchPeopleComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPeopleRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchPeopleRoutingModule} from './advancedSearchPeople-routing.module';
|
||||||
|
import{AdvancedSearchPeopleComponent} from './advancedSearchPeople.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {PeopleServiceModule} from '../../services/peopleService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
PeopleServiceModule,
|
||||||
|
AdvancedSearchPeopleRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchPeopleComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchPeopleComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPeopleModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchProjectsComponent} from './advancedSearchProjects.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchProjectsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchProjectsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchProjectsRoutingModule} from './advancedSearchProjects-routing.module';
|
||||||
|
import{AdvancedSearchProjectsComponent} from './advancedSearchProjects.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {ProjectsServiceModule} from '../../services/projectsService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
ProjectsServiceModule,
|
||||||
|
AdvancedSearchProjectsRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchProjectsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchProjectsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchProjectsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{AdvancedSearchPublicationsComponent} from './advancedSearchPublications.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: AdvancedSearchPublicationsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPublicationsRoutingModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ AdvancedSearchPublicationsRoutingModule} from './advancedSearchPublications-routing.module';
|
||||||
|
import{AdvancedSearchPublicationsComponent} from './advancedSearchPublications.component';
|
||||||
|
|
||||||
|
|
||||||
|
import {PublicationsServiceModule} from '../../services/publicationsService.module';
|
||||||
|
import {AdvancedSearchPageModule} from '../searchUtils/advancedSearchPage.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
PublicationsServiceModule,
|
||||||
|
AdvancedSearchPublicationsRoutingModule, AdvancedSearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchPublicationsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchPublicationsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPublicationsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchCompatibleDataprovidersComponent} from './compatibleDataProviders.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchCompatibleDataprovidersComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class CompatibleDataProvidersRoutingModule { }
|
|
@ -9,7 +9,7 @@ import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openairePro
|
||||||
import {SearchFields} from '../../utils/properties/searchFields';
|
import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
||||||
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
||||||
import {ExportCSVComponent} from '../../utils/exportCSV.component';
|
import {ExportCSVComponent} from '../../utils/exportCSV.class';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'search-dataproviders',
|
selector: 'search-dataproviders',
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ CompatibleDataProvidersRoutingModule} from './compatibleDataProviders-routing.module';
|
||||||
|
import{SearchCompatibleDataprovidersComponent} from './compatibleDataProviders.component';
|
||||||
|
|
||||||
|
import {SearchResultsModule } from '../searchUtils/searchResults.module';
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {SearchFormModule} from '../searchUtils/searchForm.module';
|
||||||
|
import {SearchPageModule} from '../searchUtils/searchPage.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
SearchFormModule, SearchResultsModule, CompatibleDataProvidersRoutingModule, SearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchCompatibleDataprovidersComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchCompatibleDataprovidersComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class CompatibleDataProvidersModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchEntityRegistriesComponent} from './entityRegistries.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchEntityRegistriesComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class EntityRegistriesRoutingModule { }
|
|
@ -9,7 +9,7 @@ import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openairePro
|
||||||
import {SearchFields} from '../../utils/properties/searchFields';
|
import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
||||||
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
||||||
import {ExportCSVComponent} from '../../utils/exportCSV.component';
|
import {ExportCSVComponent} from '../../utils/exportCSV.class';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'search-entity-registries',
|
selector: 'search-entity-registries',
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ EntityRegistriesRoutingModule} from './entityRegistries-routing.module';
|
||||||
|
import{SearchEntityRegistriesComponent} from './entityRegistries.component';
|
||||||
|
|
||||||
|
import {SearchResultsModule } from '../searchUtils/searchResults.module';
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {SearchFormModule} from '../searchUtils/searchForm.module';
|
||||||
|
import {SearchPageModule} from '../searchUtils/searchPage.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
SearchFormModule, SearchResultsModule, EntityRegistriesRoutingModule, SearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchEntityRegistriesComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchEntityRegistriesComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class EntityRegistriesModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchComponent} from './search.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class MainSearchRoutingModule { }
|
|
@ -0,0 +1,36 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{MainSearchRoutingModule} from './mainSearch-routing.module';
|
||||||
|
import{SearchComponent} from './search.component';
|
||||||
|
|
||||||
|
import {SearchResultsModule } from '../searchUtils/searchResults.module';
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {ProjectsServiceModule} from '../../services/projectsService.module';
|
||||||
|
import {PublicationsServiceModule} from '../../services/publicationsService.module';
|
||||||
|
import {OrganizationsServiceModule} from '../../services/organizationsService.module';
|
||||||
|
import {PeopleServiceModule} from '../../services/peopleService.module';
|
||||||
|
import {BrowseEntitiesModule} from '../searchUtils/browseEntities.module';
|
||||||
|
import {SearchFormModule} from '../searchUtils/searchForm.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
DataProvidersServiceModule, DatasetsServiceModule, ProjectsServiceModule,
|
||||||
|
PublicationsServiceModule, OrganizationsServiceModule, PeopleServiceModule,
|
||||||
|
BrowseEntitiesModule, SearchFormModule, SearchResultsModule, MainSearchRoutingModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class MainSearchModule { }
|
|
@ -1,14 +1,15 @@
|
||||||
import {Component, Input, Output, EventEmitter, ViewChild} from '@angular/core';
|
import {Component, Input, Output, EventEmitter, ViewChild, ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core';
|
||||||
import {Observable} from 'rxjs/Observable';
|
import {Observable} from 'rxjs/Observable';
|
||||||
import {ActivatedRoute, Router} from '@angular/router';
|
import {ActivatedRoute, Router} from '@angular/router';
|
||||||
import {Location} from '@angular/common';
|
import {Location} from '@angular/common';
|
||||||
|
|
||||||
import { SearchPublicationsComponent } from '../simple/searchPublications.component';
|
|
||||||
import { SearchDataprovidersComponent } from '../simple/searchDataproviders.component';
|
import { FetchPublications } from '../../utils/fetchEntitiesClasses/fetchPublications.class';
|
||||||
import { SearchProjectsComponent } from '../simple/searchProjects.component';
|
import { FetchDataproviders } from '../../utils/fetchEntitiesClasses/fetchDataproviders.class';
|
||||||
import { SearchDatasetsComponent } from '../simple/searchDatasets.component';
|
import { FetchProjects } from '../../utils/fetchEntitiesClasses/fetchProjects.class';
|
||||||
import { SearchOrganizationsComponent } from '../simple/searchOrganizations.component';
|
import { FetchDatasets } from '../../utils/fetchEntitiesClasses/fetchDatasets.class';
|
||||||
import { SearchPeopleComponent } from '../simple/searchPeople.component';
|
import { FetchOrganizations } from '../../utils/fetchEntitiesClasses/fetchOrganizations.class';
|
||||||
|
import { FetchPeople } from '../../utils/fetchEntitiesClasses/fetchPeople.class';
|
||||||
|
|
||||||
import {SearchPublicationsService} from '../../services/searchPublications.service';
|
import {SearchPublicationsService} from '../../services/searchPublications.service';
|
||||||
import {SearchDataprovidersService} from '../../services/searchDataproviders.service';
|
import {SearchDataprovidersService} from '../../services/searchDataproviders.service';
|
||||||
|
@ -21,9 +22,10 @@ import {OpenaireProperties} from '../../utils/properties/openaireProperties';
|
||||||
import {SearchFields} from '../../utils/properties/searchFields';
|
import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
changeDetection: ChangeDetectionStrategy.Default,
|
||||||
|
encapsulation: ViewEncapsulation.Emulated,
|
||||||
selector: 'search-find',
|
selector: 'search-find',
|
||||||
template: `
|
template: `
|
||||||
|
|
||||||
<div class="uk-margin-top">
|
<div class="uk-margin-top">
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<h1>{{pageTitle}}</h1>
|
<h1>{{pageTitle}}</h1>
|
||||||
|
@ -38,32 +40,32 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
<ul class="uk-tab uk-tab-left uk-width-large-1-5 uk-width-small-1-1 " data-uk-switcher="{connect:'#searchtabs'}">
|
<ul class="uk-tab uk-tab-left uk-width-large-1-5 uk-width-small-1-1 " data-uk-switcher="{connect:'#searchtabs'}">
|
||||||
<li (click)="searchPublications()" >
|
<li (click)="searchPublications()" >
|
||||||
<a href="#pubsTab">
|
<a href="#pubsTab">
|
||||||
Publications {{((keyword.length > 0)?'('+searchPublicationsComponent.searchUtils.totalResults+')':'')}}
|
Publications {{((keyword.length > 0)?'('+fetchPublications.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li (click)="searchDatasets()">
|
<li (click)="searchDatasets()">
|
||||||
<a href="#dataTab" (click)="searchDatasets()">
|
<a href="#dataTab" (click)="searchDatasets()">
|
||||||
Datasets {{((keyword.length > 0)?'('+searchDatasetsComponent.searchUtils.totalResults+')':'')}}
|
Datasets {{((keyword.length > 0)?'('+fetchDatasets.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li (click)="searchProjects()" >
|
<li (click)="searchProjects()" >
|
||||||
<a href="#projectsTab">
|
<a href="#projectsTab">
|
||||||
Projects {{((keyword.length > 0)?'('+searchProjectsComponent.searchUtils.totalResults+')':'')}}
|
Projects {{((keyword.length > 0)?'('+fetchProjects.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li (click)="searchDataProviders()" >
|
<li (click)="searchDataProviders()" >
|
||||||
<a href="#dataProviderTab">
|
<a href="#dataProviderTab">
|
||||||
Data Providers {{((keyword.length > 0)?'('+searchDataProvidersComponent.searchUtils.totalResults+')':'')}}
|
Data Providers {{((keyword.length > 0)?'('+fetchDataproviders.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li (click)="searchOrganizations()" >
|
<li (click)="searchOrganizations()" >
|
||||||
<a href="#organizationsTab" >
|
<a href="#organizationsTab" >
|
||||||
Organizations {{((keyword.length > 0)?'('+searchOrganizationsComponent.searchUtils.totalResults+')':'')}}
|
Organizations {{((keyword.length > 0)?'('+fetchOrganizations.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li (click)="searchPeople()" >
|
<li (click)="searchPeople()" >
|
||||||
<a href="#peopleTab" >
|
<a href="#peopleTab" >
|
||||||
People {{((keyword.length > 0)?'('+searchPeopleComponent.searchUtils.totalResults+')':'')}}
|
People {{((keyword.length > 0)?'('+fetchPeople.searchUtils.totalResults+')':'')}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
@ -74,8 +76,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
<ul id="searchtabs" class="uk-switcher uk-margin-left uk-width-large-3-4 uk-width-small-1-1">
|
<ul id="searchtabs" class="uk-switcher uk-margin-left uk-width-large-3-4 uk-width-small-1-1">
|
||||||
<li id="pubsTab" class="uk-active">
|
<li id="pubsTab" class="uk-active">
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchPublicationsComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchPublications" >View all {{searchPublicationsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchPublications.searchUtils.totalResults> 10" ><a [href] = "linkToSearchPublications" >View all {{fetchPublications.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchPublicationsComponent.results" [(status)]= "searchPublicationsComponent.status"></search-result>
|
<search-result [(results)]="fetchPublications.results" [(status)]= "fetchPublications.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='publications'" class ="uk-animation-fade" >
|
<div *ngIf = "keyword.length == 0 && activeTab=='publications'" class ="uk-animation-fade" >
|
||||||
<browse-entities entityName="publication" baseUrl="/search/find/publications" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
|
<browse-entities entityName="publication" baseUrl="/search/find/publications" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
|
||||||
|
@ -83,8 +85,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
</li>
|
</li>
|
||||||
<li id="dataTab">
|
<li id="dataTab">
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchDatasetsComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchDatasets" >View all {{searchDatasetsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDatasets.searchUtils.totalResults> 10" ><a [href] = "linkToSearchDatasets" >View all {{fetchDatasets.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDatasetsComponent.results" [(status)]= "searchDatasetsComponent.status"></search-result>
|
<search-result [(results)]="fetchDatasets.results" [(status)]= "fetchDatasets.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='datasets'" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length == 0 && activeTab=='datasets'" class ="uk-animation-fade">
|
||||||
<browse-entities entityName="dataset" baseUrl="/search/find/datasets" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
|
<browse-entities entityName="dataset" baseUrl="/search/find/datasets" [refineFields]=searchFields.RESULT_REFINE_FIELDS></browse-entities>
|
||||||
|
@ -92,8 +94,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
</li>
|
</li>
|
||||||
<li id="projectsTab" >
|
<li id="projectsTab" >
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchProjectsComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchProjects" >View all {{searchProjectsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchProjects.searchUtils.totalResults> 10" ><a [href] = "linkToSearchProjects" >View all {{fetchProjects.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchProjectsComponent.results" [(status)]= "searchProjectsComponent.status"></search-result>
|
<search-result [(results)]="fetchProjects.results" [(status)]= "fetchProjects.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='projects'" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length == 0 && activeTab=='projects'" class ="uk-animation-fade">
|
||||||
<browse-entities entityName="project" baseUrl="/search/find/projects" [refineFields]=searchFields.PROJECT_REFINE_FIELDS></browse-entities>
|
<browse-entities entityName="project" baseUrl="/search/find/projects" [refineFields]=searchFields.PROJECT_REFINE_FIELDS></browse-entities>
|
||||||
|
@ -101,8 +103,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
</li>
|
</li>
|
||||||
<li id="dataProviderTab">
|
<li id="dataProviderTab">
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchDataProvidersComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchDataproviders" >View all {{searchDataProvidersComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchDataproviders.searchUtils.totalResults> 10" ><a [href] = "linkToSearchDataproviders" >View all {{fetchDataproviders.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchDataProvidersComponent.results" [(status)]= "searchDataProvidersComponent.status"></search-result>
|
<search-result [(results)]="fetchDataproviders.results" [(status)]= "fetchDataproviders.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='dataproviders'" class ="uk-animation-fade" >
|
<div *ngIf = "keyword.length == 0 && activeTab=='dataproviders'" class ="uk-animation-fade" >
|
||||||
<browse-entities entityName="dataprovider" baseUrl="/search/find/dataproviders" [refineFields]=searchFields.DATASOURCE_REFINE_FIELDS></browse-entities>
|
<browse-entities entityName="dataprovider" baseUrl="/search/find/dataproviders" [refineFields]=searchFields.DATASOURCE_REFINE_FIELDS></browse-entities>
|
||||||
|
@ -110,8 +112,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
</li>
|
</li>
|
||||||
<li id="organizationsTab" >
|
<li id="organizationsTab" >
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchOrganizationsComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchOrganizations" >View all {{searchOrganizationsComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchOrganizations.searchUtils.totalResults> 10" ><a [href] = "linkToSearchOrganizations" >View all {{fetchOrganizations.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchOrganizationsComponent.results" [(status)]= "searchOrganizationsComponent.status"></search-result>
|
<search-result [(results)]="fetchOrganizations.results" [(status)]= "fetchOrganizations.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='organizations'" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length == 0 && activeTab=='organizations'" class ="uk-animation-fade">
|
||||||
<browse-entities entityName="organization" baseUrl="/search/find/organizations" [refineFields]=searchFields.ORGANIZATION_REFINE_FIELDS></browse-entities>
|
<browse-entities entityName="organization" baseUrl="/search/find/organizations" [refineFields]=searchFields.ORGANIZATION_REFINE_FIELDS></browse-entities>
|
||||||
|
@ -119,8 +121,8 @@ import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
</li>
|
</li>
|
||||||
<li id="peopleTab">
|
<li id="peopleTab">
|
||||||
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length > 0" class ="uk-animation-fade">
|
||||||
<div class = "uk-text-right" *ngIf = "searchPeopleComponent.searchUtils.totalResults> 10" ><a [href] = "linkToSearchPeople" >View all {{searchPeopleComponent.searchUtils.totalResults}} results</a></div>
|
<div class = "uk-text-right" *ngIf = "fetchPeople.searchUtils.totalResults> 10" ><a [href] = "linkToSearchPeople" >View all {{fetchPeople.searchUtils.totalResults}} results</a></div>
|
||||||
<search-result [(results)]="searchPeopleComponent.results" [(status)]= "searchPeopleComponent.status"></search-result>
|
<search-result [(results)]="fetchPeople.results" [(status)]= "fetchPeople.status"></search-result>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf = "keyword.length == 0 && activeTab=='people'" class ="uk-animation-fade">
|
<div *ngIf = "keyword.length == 0 && activeTab=='people'" class ="uk-animation-fade">
|
||||||
<div class="uk-alert uk-alert-info " role="alert">No person statistics found</div>
|
<div class="uk-alert uk-alert-info " role="alert">No person statistics found</div>
|
||||||
|
@ -168,12 +170,12 @@ export class SearchComponent {
|
||||||
public linkToSearchOrganizations = "";
|
public linkToSearchOrganizations = "";
|
||||||
public linkToSearchPeople = "";
|
public linkToSearchPeople = "";
|
||||||
|
|
||||||
public searchPublicationsComponent : SearchPublicationsComponent;
|
public fetchPublications : FetchPublications;
|
||||||
public searchDataProvidersComponent : SearchDataprovidersComponent;
|
public fetchDataproviders : FetchDataproviders;
|
||||||
public searchProjectsComponent : SearchProjectsComponent;
|
public fetchProjects : FetchProjects;
|
||||||
public searchDatasetsComponent: SearchDatasetsComponent;
|
public fetchDatasets: FetchDatasets;
|
||||||
public searchOrganizationsComponent: SearchOrganizationsComponent;
|
public fetchOrganizations: FetchOrganizations;
|
||||||
public searchPeopleComponent: SearchPeopleComponent;
|
public fetchPeople: FetchPeople;
|
||||||
public searchFields:SearchFields = new SearchFields();
|
public searchFields:SearchFields = new SearchFields();
|
||||||
|
|
||||||
public subPub;public subData;public subProjects;public subOrg;public subPeople; public subDataPr;
|
public subPub;public subData;public subProjects;public subOrg;public subPeople; public subDataPr;
|
||||||
|
@ -185,12 +187,12 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
private _searchOrganizationsService: SearchOrganizationsService,
|
private _searchOrganizationsService: SearchOrganizationsService,
|
||||||
private _searchPeopleService: SearchPeopleService,
|
private _searchPeopleService: SearchPeopleService,
|
||||||
private location: Location ) {
|
private location: Location ) {
|
||||||
this.searchPublicationsComponent = new SearchPublicationsComponent(this.route, this._searchPublicationsService);
|
this.fetchPublications = new FetchPublications(this._searchPublicationsService);
|
||||||
this.searchDataProvidersComponent = new SearchDataprovidersComponent(this.route,this._searchDataprovidersService);
|
this.fetchDataproviders = new FetchDataproviders(this._searchDataprovidersService);
|
||||||
this.searchProjectsComponent = new SearchProjectsComponent(this.route, this._searchProjectsService);
|
this.fetchProjects = new FetchProjects(this._searchProjectsService);
|
||||||
this.searchDatasetsComponent = new SearchDatasetsComponent(this.route, this._searchDatasetsService);
|
this.fetchDatasets = new FetchDatasets( this._searchDatasetsService);
|
||||||
this.searchOrganizationsComponent = new SearchOrganizationsComponent(this.route, this._searchOrganizationsService);
|
this.fetchOrganizations = new FetchOrganizations( this._searchOrganizationsService);
|
||||||
this.searchPeopleComponent = new SearchPeopleComponent(this.route, this._searchPeopleService);
|
this.fetchPeople = new FetchPeople(this._searchPeopleService);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ngOnInit() {
|
public ngOnInit() {
|
||||||
|
@ -236,7 +238,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "publications";
|
this.activeTab = "publications";
|
||||||
if(this.reloadPublications) {
|
if(this.reloadPublications) {
|
||||||
this.reloadPublications = false;
|
this.reloadPublications = false;
|
||||||
this.searchPublicationsComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchPublications.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchPublications = OpenaireProperties.getLinkToSearchPublications() + "?keyword=" + this.keyword;
|
this.linkToSearchPublications = OpenaireProperties.getLinkToSearchPublications() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -244,7 +246,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "datasets";
|
this.activeTab = "datasets";
|
||||||
if(this.reloadDatasets) {
|
if(this.reloadDatasets) {
|
||||||
this.reloadDatasets = false;
|
this.reloadDatasets = false;
|
||||||
this.searchDatasetsComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchDatasets.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchDatasets = OpenaireProperties.getLinkToSearchDatasets() + "?keyword=" + this.keyword;
|
this.linkToSearchDatasets = OpenaireProperties.getLinkToSearchDatasets() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -252,7 +254,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "projects";
|
this.activeTab = "projects";
|
||||||
if(this.reloadProjects) {
|
if(this.reloadProjects) {
|
||||||
this.reloadProjects = false;
|
this.reloadProjects = false;
|
||||||
this.searchProjectsComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchProjects.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchProjects = OpenaireProperties.getLinkToSearchProjects() + "?keyword=" + this.keyword;
|
this.linkToSearchProjects = OpenaireProperties.getLinkToSearchProjects() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -260,7 +262,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "dataproviders";
|
this.activeTab = "dataproviders";
|
||||||
if(this.reloadDataproviders) {
|
if(this.reloadDataproviders) {
|
||||||
this.reloadDataproviders = false;
|
this.reloadDataproviders = false;
|
||||||
this.searchDataProvidersComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchDataproviders.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchDataproviders = OpenaireProperties.getLinkToSearchDataProviders() + "?keyword=" + this.keyword;
|
this.linkToSearchDataproviders = OpenaireProperties.getLinkToSearchDataProviders() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -268,7 +270,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "organizations";
|
this.activeTab = "organizations";
|
||||||
if(this.reloadOrganizations) {
|
if(this.reloadOrganizations) {
|
||||||
this.reloadOrganizations = false;
|
this.reloadOrganizations = false;
|
||||||
this.searchOrganizationsComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchOrganizations.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchOrganizations = OpenaireProperties.getLinkToSearchOrganizations() + "?keyword=" + this.keyword;
|
this.linkToSearchOrganizations = OpenaireProperties.getLinkToSearchOrganizations() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -276,7 +278,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.activeTab = "people";
|
this.activeTab = "people";
|
||||||
if(this.reloadPeople) {
|
if(this.reloadPeople) {
|
||||||
this.reloadPeople = false;
|
this.reloadPeople = false;
|
||||||
this.searchPeopleComponent.getResults(this.keyword, false, 1, 10);
|
this.fetchPeople.getResultsByKeyword(this.keyword, 1, 10);
|
||||||
this.linkToSearchPeople = OpenaireProperties.getLinkToSearchPeople() + "?keyword=" + this.keyword;
|
this.linkToSearchPeople = OpenaireProperties.getLinkToSearchPeople() + "?keyword=" + this.keyword;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -311,7 +313,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.subPublicationsCount = this.route.queryParams.subscribe(params => {
|
this.subPublicationsCount = this.route.queryParams.subscribe(params => {
|
||||||
this.subPub = this._searchPublicationsService.numOfSearchPublications(this.keyword).subscribe(
|
this.subPub = this._searchPublicationsService.numOfSearchPublications(this.keyword).subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchPublicationsComponent.searchUtils.totalResults = data;
|
this.fetchPublications.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -322,7 +324,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.subDatasetsCount = this.route.queryParams.subscribe(params => {
|
this.subDatasetsCount = this.route.queryParams.subscribe(params => {
|
||||||
this.subData = this._searchDatasetsService.numOfSearchDatasets(this.keyword).subscribe(
|
this.subData = this._searchDatasetsService.numOfSearchDatasets(this.keyword).subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchDatasetsComponent.searchUtils.totalResults = data;
|
this.fetchDatasets.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -333,7 +335,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.subProjectsCount = this.route.queryParams.subscribe(params => {
|
this.subProjectsCount = this.route.queryParams.subscribe(params => {
|
||||||
this.subProjects = this._searchProjectsService.numOfSearchProjects(this.keyword).subscribe(
|
this.subProjects = this._searchProjectsService.numOfSearchProjects(this.keyword).subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchProjectsComponent.searchUtils.totalResults = data;
|
this.fetchProjects.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -341,12 +343,12 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
|
|
||||||
this.searchDataProvidersComponent.getNumForSearch(this.keyword);
|
this.fetchDataproviders.getNumForSearch(this.keyword);
|
||||||
|
|
||||||
this.subOrganizationsCount = this.route.queryParams.subscribe(params => {
|
this.subOrganizationsCount = this.route.queryParams.subscribe(params => {
|
||||||
this.subOrg = this._searchOrganizationsService.numOfSearchOrganizations(this.keyword).subscribe(
|
this.subOrg = this._searchOrganizationsService.numOfSearchOrganizations(this.keyword).subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchOrganizationsComponent.searchUtils.totalResults = data;
|
this.fetchOrganizations.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -357,7 +359,7 @@ public subPub;public subData;public subProjects;public subOrg;public subPeople;
|
||||||
this.subPeopleCount = this.route.queryParams.subscribe(params => {
|
this.subPeopleCount = this.route.queryParams.subscribe(params => {
|
||||||
this.subPeople = this._searchPeopleService.numOfSearchPeople(this.keyword).subscribe(
|
this.subPeople = this._searchPeopleService.numOfSearchPeople(this.keyword).subscribe(
|
||||||
data => {
|
data => {
|
||||||
this.searchPeopleComponent.searchUtils.totalResults = data;
|
this.fetchPeople.searchUtils.totalResults = data;
|
||||||
},
|
},
|
||||||
err => {
|
err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { RouterModule } from '@angular/router';
|
|
||||||
import { SearchComponent } from './find/search.component';
|
|
||||||
import { SearchPublicationsComponent } from './simple/searchPublications.component';
|
|
||||||
import { SearchDataprovidersComponent } from './simple/searchDataproviders.component';
|
|
||||||
import { SearchProjectsComponent } from './simple/searchProjects.component';
|
|
||||||
import { SearchDatasetsComponent } from './simple/searchDatasets.component';
|
|
||||||
import { SearchOrganizationsComponent } from './simple/searchOrganizations.component';
|
|
||||||
import { SearchPeopleComponent } from './simple/searchPeople.component';
|
|
||||||
import { AdvancedSearchPublicationsComponent } from './advanced/advancedSearchPublications.component';
|
|
||||||
import { AdvancedSearchDataProvidersComponent } from './advanced/advancedSearchDataProviders.component';
|
|
||||||
import { AdvancedSearchProjectsComponent } from './advanced/advancedSearchProjects.component';
|
|
||||||
import { AdvancedSearchDatasetsComponent } from './advanced/advancedSearchDatasets.component';
|
|
||||||
import { AdvancedSearchPeopleComponent } from './advanced/advancedSearchPeople.component';
|
|
||||||
import { AdvancedSearchOrganizationsComponent } from './advanced/advancedSearchOrganizations.component';
|
|
||||||
import { SearchCompatibleDataprovidersComponent } from './dataProviders/compatibleDataProviders.component';
|
|
||||||
import { SearchEntityRegistriesComponent } from './dataProviders/entityRegistries.component';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
RouterModule.forChild([
|
|
||||||
{ path: 'search/data-providers', component: SearchCompatibleDataprovidersComponent},
|
|
||||||
{ path: 'search/entity-registries', component: SearchEntityRegistriesComponent},
|
|
||||||
{ path: 'search/find', component: SearchComponent },
|
|
||||||
// { path: 'search', component: SearchComponent },
|
|
||||||
{ path: 'search/find/publications', component: SearchPublicationsComponent },
|
|
||||||
{ path: 'search/find/dataproviders', component: SearchDataprovidersComponent },
|
|
||||||
{ path: 'search/find/projects', component: SearchProjectsComponent },
|
|
||||||
{ path: 'search/find/datasets', component: SearchDatasetsComponent },
|
|
||||||
{ path: 'search/find/organizations', component: SearchOrganizationsComponent },
|
|
||||||
{ path: 'search/find/people', component: SearchPeopleComponent },
|
|
||||||
{ path: 'search/advanced/publications', component: AdvancedSearchPublicationsComponent },
|
|
||||||
{ path: 'search/advanced/dataproviders', component: AdvancedSearchDataProvidersComponent },
|
|
||||||
{ path: 'search/advanced/projects', component: AdvancedSearchProjectsComponent },
|
|
||||||
{ path: 'search/advanced/datasets', component: AdvancedSearchDatasetsComponent },
|
|
||||||
{ path: 'search/advanced/people', component: AdvancedSearchPeopleComponent },
|
|
||||||
{ path: 'search/advanced/organizations', component: AdvancedSearchOrganizationsComponent },
|
|
||||||
|
|
||||||
])
|
|
||||||
]
|
|
||||||
})
|
|
||||||
export class SearchRoutingModule { }
|
|
|
@ -1,104 +0,0 @@
|
||||||
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 {Filter, Value} from './searchUtils/searchHelperClasses.class';
|
|
||||||
import {SearchResult} from '../utils/entities/searchResult';
|
|
||||||
|
|
||||||
|
|
||||||
import {AdvancedSearchPageComponent} from './searchUtils/advancedSearchPage.component';
|
|
||||||
// import {SearchAllComponent} from '../searchAll/searchAll.component';//helpers
|
|
||||||
import {SearchPageComponent} from './searchUtils/searchPage.component';
|
|
||||||
import {SearchFormComponent} from './searchUtils/searchForm.component';
|
|
||||||
import {SearchPagingComponent} from './searchUtils/searchPaging.component';
|
|
||||||
import {SearchDownloadComponent} from './searchUtils/searchDownload.component';
|
|
||||||
|
|
||||||
import {BrowseEntitiesComponent} from './searchUtils/browseEntities.component';
|
|
||||||
import {BrowseStatisticComponent} from './searchUtils/browseStatistic.component';
|
|
||||||
|
|
||||||
import {SearchResultComponent} from './searchUtils/searchResult.component';
|
|
||||||
import {SearchFilterComponent} from './searchUtils/searchFilter.component';
|
|
||||||
import {AdvancedSearchFormComponent} from './searchUtils/advancedSearchForm.component';
|
|
||||||
import { SearchPublicationsComponent } from './simple/searchPublications.component';
|
|
||||||
import { SearchDataprovidersComponent } from './simple/searchDataproviders.component';
|
|
||||||
import { SearchProjectsComponent } from './simple/searchProjects.component';
|
|
||||||
import {SearchDatasetsComponent} from './simple/searchDatasets.component';
|
|
||||||
import {SearchOrganizationsComponent} from './simple/searchOrganizations.component';
|
|
||||||
import {SearchPeopleComponent} from './simple/searchPeople.component';
|
|
||||||
|
|
||||||
import {SearchComponent} from './find/search.component';
|
|
||||||
import {SearchCompatibleDataprovidersComponent} from './dataProviders/compatibleDataProviders.component';
|
|
||||||
import {SearchEntityRegistriesComponent} from './dataProviders/entityRegistries.component';
|
|
||||||
import {DatasourceTableViewComponent} from './dataProviders/datasourceTableView.component';
|
|
||||||
//Advanced
|
|
||||||
import { AdvancedSearchPublicationsComponent } from './advanced/advancedSearchPublications.component';
|
|
||||||
import { AdvancedSearchDataProvidersComponent } from './advanced/advancedSearchDataProviders.component';
|
|
||||||
import { AdvancedSearchProjectsComponent } from './advanced/advancedSearchProjects.component';
|
|
||||||
import { AdvancedSearchDatasetsComponent } from './advanced/advancedSearchDatasets.component';
|
|
||||||
import { AdvancedSearchPeopleComponent } from './advanced/advancedSearchPeople.component';
|
|
||||||
import { AdvancedSearchOrganizationsComponent } from './advanced/advancedSearchOrganizations.component';
|
|
||||||
|
|
||||||
import { SearchRoutingModule } from './search-routing.module';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
CommonModule, FormsModule,
|
|
||||||
UtilsModule,
|
|
||||||
ServicesModule,
|
|
||||||
SearchRoutingModule
|
|
||||||
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
|
|
||||||
AdvancedSearchPageComponent,
|
|
||||||
// SearchAllComponent,
|
|
||||||
SearchPageComponent,
|
|
||||||
SearchFormComponent,
|
|
||||||
SearchResultComponent,
|
|
||||||
SearchFilterComponent,
|
|
||||||
SearchPagingComponent,
|
|
||||||
SearchDownloadComponent,
|
|
||||||
AdvancedSearchFormComponent,
|
|
||||||
SearchPublicationsComponent,
|
|
||||||
AdvancedSearchPublicationsComponent, AdvancedSearchDataProvidersComponent, AdvancedSearchProjectsComponent,
|
|
||||||
AdvancedSearchDatasetsComponent, AdvancedSearchPeopleComponent, AdvancedSearchOrganizationsComponent,
|
|
||||||
SearchDataprovidersComponent,
|
|
||||||
SearchComponent,
|
|
||||||
SearchProjectsComponent,
|
|
||||||
SearchCompatibleDataprovidersComponent,
|
|
||||||
SearchEntityRegistriesComponent,
|
|
||||||
DatasourceTableViewComponent,
|
|
||||||
SearchDatasetsComponent,
|
|
||||||
SearchOrganizationsComponent,
|
|
||||||
SearchPeopleComponent,
|
|
||||||
BrowseEntitiesComponent,
|
|
||||||
BrowseStatisticComponent
|
|
||||||
],
|
|
||||||
|
|
||||||
providers:[
|
|
||||||
// SearchPublicationsService
|
|
||||||
],
|
|
||||||
exports: [
|
|
||||||
// SearchAllComponent,
|
|
||||||
AdvancedSearchPublicationsComponent,
|
|
||||||
AdvancedSearchDataProvidersComponent,
|
|
||||||
AdvancedSearchProjectsComponent,
|
|
||||||
SearchPublicationsComponent,
|
|
||||||
SearchProjectsComponent,
|
|
||||||
SearchDataprovidersComponent,
|
|
||||||
SearchDatasetsComponent,
|
|
||||||
SearchOrganizationsComponent,
|
|
||||||
SearchPeopleComponent,
|
|
||||||
SearchComponent,
|
|
||||||
SearchCompatibleDataprovidersComponent,
|
|
||||||
SearchEntityRegistriesComponent,
|
|
||||||
SearchResultComponent,
|
|
||||||
BrowseEntitiesComponent,
|
|
||||||
BrowseStatisticComponent
|
|
||||||
]
|
|
||||||
})
|
|
||||||
export class SearchModule { }
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{AdvancedSearchFormComponent} from './advancedSearchForm.component';
|
||||||
|
import {EntitiesAutocompleteModule} from '../../utils/entitiesAutoComplete/entitiesAutoComplete.module';
|
||||||
|
import {StaticAutocompleteModule} from '../../utils/staticAutoComplete/staticAutoComplete.module';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, EntitiesAutocompleteModule, StaticAutocompleteModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchFormComponent,
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchFormComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchFormModule { }
|
|
@ -0,0 +1,28 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{AdvancedSearchPageComponent} from './advancedSearchPage.component';
|
||||||
|
import{SearchResultsModule} from './searchResults.module';
|
||||||
|
import{LoadingModalModule} from '../../utils/modal/loadingModal.module';
|
||||||
|
import {ReportsServiceModule} from '../../services/reportsService.module';
|
||||||
|
import {SearchDownloadModule} from './searchDownload.module';
|
||||||
|
import{SearchPagingModule} from './searchPaging.module';
|
||||||
|
|
||||||
|
import {AdvancedSearchFormModule} from '../searchUtils/advancedSearchForm.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, SearchResultsModule, LoadingModalModule, ReportsServiceModule, SearchPagingModule, AdvancedSearchFormModule, SearchDownloadModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
AdvancedSearchPageComponent,
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
AdvancedSearchPageComponent,
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class AdvancedSearchPageModule { }
|
|
@ -0,0 +1,30 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import {RefineFieldResultsServiceModule} from '../../services/refineFieldResultsService.module';
|
||||||
|
|
||||||
|
import {BrowseEntitiesComponent} from './browseEntities.component';
|
||||||
|
import {BrowseStatisticComponent} from './browseStatistic.component';
|
||||||
|
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
RefineFieldResultsServiceModule, RouterModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
BrowseEntitiesComponent,
|
||||||
|
BrowseStatisticComponent
|
||||||
|
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
BrowseEntitiesComponent,
|
||||||
|
BrowseStatisticComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class BrowseEntitiesModule { }
|
|
@ -9,7 +9,7 @@ import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openairePro
|
||||||
import {SearchFields} from '../../utils/properties/searchFields';
|
import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
||||||
import {SearchUtilsClass} from '../searchUtils/searchUtils.class';
|
import {SearchUtilsClass} from '../searchUtils/searchUtils.class';
|
||||||
|
import {RouterHelper} from '../../utils/routerHelper.class';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'browse-statistic',
|
selector: 'browse-statistic',
|
||||||
template: `
|
template: `
|
||||||
|
@ -18,20 +18,22 @@ import {SearchUtilsClass} from '../searchUtils/searchUtils.class';
|
||||||
<h4 class="tm-article-subtitle">{{filter.title}}</h4>
|
<h4 class="tm-article-subtitle">{{filter.title}}</h4>
|
||||||
<div *ngIf="filter.values.length == 0" class="uk-alert uk-alert-info" role="alert">No {{filter.title}} statistics found</div>
|
<div *ngIf="filter.values.length == 0" class="uk-alert uk-alert-info" role="alert">No {{filter.title}} statistics found</div>
|
||||||
<ul *ngIf="filter.values.length > 0 && !viewAll" class="uk-list uk-list-line ">
|
<ul *ngIf="filter.values.length > 0 && !viewAll" class="uk-list uk-list-line ">
|
||||||
<li *ngFor= "let value of filter.values.slice(0,5)"><a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a></li>
|
<li *ngFor= "let value of filter.values.slice(0,5)"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
|
||||||
|
<a [queryParams]="routerHelper.createQueryParam(filter.filterId,value.id)" routerLinkActive="router-link-active" [routerLink]=baseUrl>{{_formatName(value)}} ({{value.number}})</a>
|
||||||
|
</li>
|
||||||
<li *ngIf= " filter.values.length > 5 && !viewAll " (click)="viewAll=true;">
|
<li *ngIf= " filter.values.length > 5 && !viewAll " (click)="viewAll=true;">
|
||||||
<span ><span class="uk-text-muted clickable">View more </span><a><i class="uk-icon-toggle-right"></i></a></span>
|
<span ><span class="uk-text-muted clickable">View more </span><a><i class="uk-icon-toggle-right"></i></a></span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul *ngIf="filter.values.length > 0 && viewAll" class="uk-list uk-list-line searchFilterBoxValues">
|
<ul *ngIf="filter.values.length > 0 && viewAll" class="uk-list uk-list-line searchFilterBoxValues">
|
||||||
<li *ngFor= "let value of filter.values"><a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a></li>
|
<li *ngFor= "let value of filter.values"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
|
||||||
|
<a [queryParams]="routerHelper.createQueryParam(filter.filterId,value.id)" routerLinkActive="router-link-active" [routerLink]=baseUrl>{{_formatName(value)}} ({{value.number}})</a>
|
||||||
|
</li>
|
||||||
<li *ngIf= " filter.values.length > 5 && viewAll " (click)="viewAll=false;">
|
<li *ngIf= " filter.values.length > 5 && viewAll " (click)="viewAll=false;">
|
||||||
<span ><span class="uk-text-muted clickable">View less </span><a><i class="uk-icon-toggle-up"></i></a></span>
|
<span ><span class="uk-text-muted clickable">View less </span><a><i class="uk-icon-toggle-up"></i></a></span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
`
|
`
|
||||||
|
|
||||||
})
|
})
|
||||||
|
@ -41,7 +43,7 @@ export class BrowseStatisticComponent {
|
||||||
@Input() public filter:any = "";
|
@Input() public filter:any = "";
|
||||||
private _maxCharacters = 30;
|
private _maxCharacters = 30;
|
||||||
public viewAll = false;
|
public viewAll = false;
|
||||||
|
public routerHelper:RouterHelper = new RouterHelper();
|
||||||
constructor () {
|
constructor () {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -51,6 +53,7 @@ export class BrowseStatisticComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private _formatName(value){
|
private _formatName(value){
|
||||||
return (((value.name+" ("+value.number+")").length >this._maxCharacters)?(value.name.substring(0,(this._maxCharacters - (" ("+value.number+")").length - ('...').length))+"..."):value.name)
|
return (((value.name+" ("+value.number+")").length >this._maxCharacters)?(value.name.substring(0,(this._maxCharacters - (" ("+value.number+")").length - ('...').length))+"..."):value.name)
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {SearchDownloadComponent} from './searchDownload.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchDownloadComponent
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchDownloadComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchDownloadModule { }
|
|
@ -0,0 +1,22 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{SearchFormComponent} from './searchForm.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchFormComponent
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchFormComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchFormModule { }
|
|
@ -0,0 +1,31 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{SearchPageComponent} from './searchPage.component';
|
||||||
|
import{SearchFormModule} from './searchForm.module';
|
||||||
|
import{SearchResultsModule} from './searchResults.module';
|
||||||
|
import{SearchFilterComponent} from './searchFilter.component';
|
||||||
|
import{LoadingModalModule} from '../../utils/modal/loadingModal.module';
|
||||||
|
import {ReportsServiceModule} from '../../services/reportsService.module';
|
||||||
|
import{SearchPagingModule} from './searchPaging.module';
|
||||||
|
import {SearchDownloadModule} from './searchDownload.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, SearchFormModule, SearchResultsModule, LoadingModalModule, ReportsServiceModule, SearchPagingModule, SearchDownloadModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchPageComponent,
|
||||||
|
SearchFilterComponent
|
||||||
|
,
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchPageComponent,
|
||||||
|
SearchFilterComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchPageModule { }
|
|
@ -0,0 +1,23 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{SearchPagingComponent} from './searchPaging.component';
|
||||||
|
import{PagingModule} from '../../utils/paging.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule, PagingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchPagingComponent
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchPagingComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchPagingModule { }
|
|
@ -5,8 +5,8 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'search-result',
|
selector: 'search-result',
|
||||||
template: `
|
template: `
|
||||||
|
|
||||||
<ul class="uk-list uk-list-line uk-margin">
|
<ul class="uk-list uk-list-line uk-margin">
|
||||||
<!--div *ngIf="status == errorCodes.LOADING" class="uk-alert uk-alert-primary uk-animation-fade" role="alert">Loading...</div-->
|
|
||||||
<div *ngIf="status == errorCodes.NONE" class="uk-alert uk-alert-primary uk-animation-fade" role="alert">No Results found</div>
|
<div *ngIf="status == errorCodes.NONE" class="uk-alert uk-alert-primary uk-animation-fade" role="alert">No Results found</div>
|
||||||
<div *ngIf="status == errorCodes.ERROR" class="uk-alert uk-alert-warning uk-animation-fade" role="alert">An Error Occured</div>
|
<div *ngIf="status == errorCodes.ERROR" class="uk-alert uk-alert-warning uk-animation-fade" role="alert">An Error Occured</div>
|
||||||
<div *ngIf="status == errorCodes.NOT_AVAILABLE" class="uk-alert uk-alert-danger uk-animation-fade" role="alert">Service not available</div>
|
<div *ngIf="status == errorCodes.NOT_AVAILABLE" class="uk-alert uk-alert-danger uk-animation-fade" role="alert">Service not available</div>
|
||||||
|
@ -116,7 +116,6 @@ import { ErrorCodes} from '../../utils/properties/openaireProperties';
|
||||||
Countries: {{result.countries}}
|
Countries: {{result.countries}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!--hr-->
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
`
|
`
|
||||||
|
@ -136,5 +135,7 @@ export class SearchResultComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
|
||||||
|
console.info("Heeey!!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import {SearchResult} from '../../utils/entities/searchResult';
|
||||||
|
// import {SearchPagingComponent} from './searchPaging.component';
|
||||||
|
// import {SearchDownloadComponent} from './searchDownload.component';
|
||||||
|
import {SearchResultComponent} from './searchResult.component';
|
||||||
|
// import{PagingModule} from '../../utils/paging.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule
|
||||||
|
// ,PagingModule
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchResultComponent,
|
||||||
|
// SearchPagingComponent,
|
||||||
|
// SearchDownloadComponent,
|
||||||
|
],
|
||||||
|
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
// SearchPagingComponent,
|
||||||
|
// SearchDownloadComponent,
|
||||||
|
SearchResultComponent
|
||||||
|
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchResultsModule { }
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchDataprovidersComponent} from './searchDataproviders.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchDataprovidersComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchDataProvidersRoutingModule { }
|
|
@ -0,0 +1,30 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ SearchDataProvidersRoutingModule} from './searchDataProviders-routing.module';
|
||||||
|
import{SearchDataprovidersComponent} from './searchDataproviders.component';
|
||||||
|
|
||||||
|
import {SearchResultsModule } from '../searchUtils/searchResults.module';
|
||||||
|
|
||||||
|
import {DataProvidersServiceModule} from '../../services/dataProvidersService.module';
|
||||||
|
import {SearchFormModule} from '../searchUtils/searchForm.module';
|
||||||
|
import {SearchPageModule} from '../searchUtils/searchPage.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
|
||||||
|
DataProvidersServiceModule,
|
||||||
|
SearchFormModule, SearchResultsModule, SearchDataProvidersRoutingModule, SearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchDataprovidersComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchDataprovidersComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchDataProvidersModule { }
|
|
@ -7,7 +7,7 @@ import {SearchResult} from '../../utils/entities/searchResult';
|
||||||
import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openaireProperties';
|
import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openaireProperties';
|
||||||
import {SearchFields} from '../../utils/properties/searchFields';
|
import {SearchFields} from '../../utils/properties/searchFields';
|
||||||
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
import {SearchPageComponent } from '../searchUtils/searchPage.component';
|
||||||
import {ExportCSVComponent} from '../../utils/exportCSV.component';
|
import {ExportCSVComponent} from '../../utils/exportCSV.class';
|
||||||
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
import {SearchUtilsClass } from '../searchUtils/searchUtils.class';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import{SearchDatasetsComponent} from './searchDatasets.component';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
RouterModule.forChild([
|
||||||
|
{ path: '', component: SearchDatasetsComponent }
|
||||||
|
|
||||||
|
])
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchDatasetsRoutingModule { }
|
|
@ -0,0 +1,30 @@
|
||||||
|
import { NgModule} from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import{ SearchDatasetsRoutingModule} from './searchDatasets-routing.module';
|
||||||
|
import{SearchDatasetsComponent} from './searchDatasets.component';
|
||||||
|
|
||||||
|
import {SearchResultsModule } from '../searchUtils/searchResults.module';
|
||||||
|
|
||||||
|
import {DatasetsServiceModule} from '../../services/datasetsService.module';
|
||||||
|
import {SearchFormModule} from '../searchUtils/searchForm.module';
|
||||||
|
import {SearchPageModule} from '../searchUtils/searchPage.module';
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule, FormsModule,
|
||||||
|
|
||||||
|
DatasetsServiceModule,
|
||||||
|
SearchFormModule, SearchResultsModule, SearchDatasetsRoutingModule, SearchPageModule
|
||||||
|
|
||||||
|
],
|
||||||
|
declarations: [
|
||||||
|
SearchDatasetsComponent
|
||||||
|
],
|
||||||
|
providers:[
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
SearchDatasetsComponent
|
||||||
|
]
|
||||||
|
})
|
||||||
|
export class SearchDatasetsModule { }
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue