mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-10 19:43:04 +00:00
add quality assurance configuration
This commit is contained in:
@@ -5,11 +5,14 @@ import { map } from 'rxjs/operators';
|
|||||||
import { PaginatedList } from '../../../core/data/paginated-list.model';
|
import { PaginatedList } from '../../../core/data/paginated-list.model';
|
||||||
import { QualityAssuranceSourceObject } from '../../../core/notifications/qa/models/quality-assurance-source.model';
|
import { QualityAssuranceSourceObject } from '../../../core/notifications/qa/models/quality-assurance-source.model';
|
||||||
import { QualityAssuranceSourceService } from '../../../notifications/qa/source/quality-assurance-source.service';
|
import { QualityAssuranceSourceService } from '../../../notifications/qa/source/quality-assurance-source.service';
|
||||||
|
import {environment} from '../../../../environments/environment';
|
||||||
/**
|
/**
|
||||||
* This class represents a resolver that retrieve the route data before the route is activated.
|
* This class represents a resolver that retrieve the route data before the route is activated.
|
||||||
*/
|
*/
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class SourceDataResolver implements Resolve<Observable<QualityAssuranceSourceObject[]>> {
|
export class SourceDataResolver implements Resolve<Observable<QualityAssuranceSourceObject[]>> {
|
||||||
|
private paginationStart = environment.qualityAssuranceConfig.defaultPaginationStart;
|
||||||
|
private paginationItemsCount = environment.qualityAssuranceConfig.defaultPaginationItemsCount;
|
||||||
/**
|
/**
|
||||||
* Initialize the effect class variables.
|
* Initialize the effect class variables.
|
||||||
* @param {QualityAssuranceSourceService} qualityAssuranceSourceService
|
* @param {QualityAssuranceSourceService} qualityAssuranceSourceService
|
||||||
@@ -25,7 +28,7 @@ export class SourceDataResolver implements Resolve<Observable<QualityAssuranceSo
|
|||||||
* @returns Observable<QualityAssuranceSourceObject[]>
|
* @returns Observable<QualityAssuranceSourceObject[]>
|
||||||
*/
|
*/
|
||||||
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<QualityAssuranceSourceObject[]> {
|
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<QualityAssuranceSourceObject[]> {
|
||||||
return this.qualityAssuranceSourceService.getSources(5,0).pipe(
|
return this.qualityAssuranceSourceService.getSources(this.paginationItemsCount,this.paginationStart).pipe(
|
||||||
map((sources: PaginatedList<QualityAssuranceSourceObject>) => {
|
map((sources: PaginatedList<QualityAssuranceSourceObject>) => {
|
||||||
if (sources.page.length === 1) {
|
if (sources.page.length === 1) {
|
||||||
this.router.navigate([this.getResolvedUrl(route) + '/' + sources.page[0].id]);
|
this.router.navigate([this.getResolvedUrl(route) + '/' + sources.page[0].id]);
|
||||||
|
@@ -30,6 +30,7 @@ import { getFirstCompletedRemoteData } from '../../../core/shared/operators';
|
|||||||
import { PaginationService } from '../../../core/pagination/pagination.service';
|
import { PaginationService } from '../../../core/pagination/pagination.service';
|
||||||
import { Item } from '../../../core/shared/item.model';
|
import { Item } from '../../../core/shared/item.model';
|
||||||
import { FindListOptions } from '../../../core/data/find-list-options.model';
|
import { FindListOptions } from '../../../core/data/find-list-options.model';
|
||||||
|
import {environment} from '../../../../environments/environment';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Component to display the Quality Assurance event list.
|
* Component to display the Quality Assurance event list.
|
||||||
@@ -98,7 +99,7 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
|||||||
/**
|
/**
|
||||||
* The Open Aire base url for project search
|
* The Open Aire base url for project search
|
||||||
*/
|
*/
|
||||||
public openAireUrl = 'https://explore.openaire.eu/search/project?projectId=';
|
public openAireUrl = environment.qualityAssuranceConfig.openAireUrl;
|
||||||
/**
|
/**
|
||||||
* The FindListOptions object
|
* The FindListOptions object
|
||||||
*/
|
*/
|
||||||
|
@@ -22,6 +22,7 @@ import { HomeConfig } from './homepage-config.interface';
|
|||||||
import { MarkdownConfig } from './markdown-config.interface';
|
import { MarkdownConfig } from './markdown-config.interface';
|
||||||
import { FilterVocabularyConfig } from './filter-vocabulary-config';
|
import { FilterVocabularyConfig } from './filter-vocabulary-config';
|
||||||
import { DiscoverySortConfig } from './discovery-sort.config';
|
import { DiscoverySortConfig } from './discovery-sort.config';
|
||||||
|
import {QualityAssuranceConfig} from './quality-assurance.config';
|
||||||
|
|
||||||
interface AppConfig extends Config {
|
interface AppConfig extends Config {
|
||||||
ui: UIServerConfig;
|
ui: UIServerConfig;
|
||||||
@@ -48,6 +49,7 @@ interface AppConfig extends Config {
|
|||||||
markdown: MarkdownConfig;
|
markdown: MarkdownConfig;
|
||||||
vocabularies: FilterVocabularyConfig[];
|
vocabularies: FilterVocabularyConfig[];
|
||||||
comcolSelectionSort: DiscoverySortConfig;
|
comcolSelectionSort: DiscoverySortConfig;
|
||||||
|
qualityAssuranceConfig: QualityAssuranceConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,6 +22,7 @@ import { HomeConfig } from './homepage-config.interface';
|
|||||||
import { MarkdownConfig } from './markdown-config.interface';
|
import { MarkdownConfig } from './markdown-config.interface';
|
||||||
import { FilterVocabularyConfig } from './filter-vocabulary-config';
|
import { FilterVocabularyConfig } from './filter-vocabulary-config';
|
||||||
import { DiscoverySortConfig } from './discovery-sort.config';
|
import { DiscoverySortConfig } from './discovery-sort.config';
|
||||||
|
import {QualityAssuranceConfig} from './quality-assurance.config';
|
||||||
|
|
||||||
export class DefaultAppConfig implements AppConfig {
|
export class DefaultAppConfig implements AppConfig {
|
||||||
production = false;
|
production = false;
|
||||||
@@ -432,4 +433,10 @@ export class DefaultAppConfig implements AppConfig {
|
|||||||
sortField:'dc.title',
|
sortField:'dc.title',
|
||||||
sortDirection:'ASC',
|
sortDirection:'ASC',
|
||||||
};
|
};
|
||||||
|
|
||||||
|
qualityAssuranceConfig: QualityAssuranceConfig = {
|
||||||
|
openAireUrl: 'https://explore.openaire.eu/search/project?projectId=',
|
||||||
|
defaultPaginationItemsCount: 5,
|
||||||
|
defaultPaginationStart: 0
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
21
src/config/quality-assurance.config.ts
Normal file
21
src/config/quality-assurance.config.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import { Config } from './config.interface';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Config that determines a metadata sorting config.
|
||||||
|
* It's created mainly to sort by metadata community and collection edition and creation
|
||||||
|
*/
|
||||||
|
export class QualityAssuranceConfig implements Config {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Url for OAIRE resources
|
||||||
|
*/
|
||||||
|
public openAireUrl: string;
|
||||||
|
/**
|
||||||
|
* default count of QA sources to load
|
||||||
|
*/
|
||||||
|
public defaultPaginationItemsCount: number;
|
||||||
|
/**
|
||||||
|
* default starting point of pagination
|
||||||
|
*/
|
||||||
|
public defaultPaginationStart: number;
|
||||||
|
}
|
@@ -306,6 +306,11 @@ export const environment: BuildConfig = {
|
|||||||
sortField:'dc.title',
|
sortField:'dc.title',
|
||||||
sortDirection:'ASC',
|
sortDirection:'ASC',
|
||||||
},
|
},
|
||||||
|
qualityAssuranceConfig: {
|
||||||
|
openAireUrl: 'https://explore.openaire.eu/search/project?projectId=',
|
||||||
|
defaultPaginationItemsCount: 5,
|
||||||
|
defaultPaginationStart: 0
|
||||||
|
},
|
||||||
|
|
||||||
vocabularies: [
|
vocabularies: [
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user