114 lines
7.1 KiB
HTML
114 lines
7.1 KiB
HTML
<div page-content (stickyEmitter)="stickyPageHeader = $event">
|
|
<div header>
|
|
<div class="uk-flex uk-flex-middle uk-margin-top info" [class.uk-active]="stickyPageHeader">
|
|
<div>
|
|
<div class="uk-margin-remove uk-text-background uk-text-bold uk-h6">Admin Dashboard - Manage <span class="uk-text-capitalize">{{openAIREEntities.DATASOURCES}}</span>
|
|
</div>
|
|
<h1 class="uk-h4 uk-margin-remove">{{community.shortTitle}}</h1>
|
|
</div>
|
|
</div>
|
|
<community-info tab="content-providers"></community-info>
|
|
</div>
|
|
<div inner>
|
|
<div class="uk-flex uk-flex-right@m uk-flex-center uk-flex-middle uk-grid uk-margin-top" uk-grid>
|
|
<div search-input [expandable]="true" [searchControl]="filterForm.get('keyword')" searchInputClass="outer"
|
|
[placeholder]="'Search ' + openAIREEntities.DATASOURCES" [disabled]="loading"
|
|
class="uk-width-1-3@xl uk-width-2-5@l uk-width-1-2@m uk-width-1-1"></div>
|
|
<div>
|
|
<button class="uk-button uk-button-default uk-flex uk-flex-middle" (click)="addNew()"
|
|
[attr.uk-tooltip]="'<div><div class=\'uk-margin-bottom uk-text-bold\'> Search and add more <span class=\'uk-text-lowercase\'>' + openAIREEntities.DATASOURCES + '<span></span></div><div>The research results collected from the <span class=\'uk-text-lowercase\'>' + openAIREEntities.DATASOURCES + '</span> specified here will be automatically linked to your community dashboard.</div></div>'"
|
|
[disabled]="loading || disableAdd" [class.uk-disabled]="loading || disableAdd">
|
|
<icon name="add" [flex]="true"></icon>
|
|
<span class="uk-margin-small-left uk-text-bold uk-text-uppercase">New {{openAIREEntities.DATASOURCE}}</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
<div class="uk-section uk-section-small uk-position-relative" style="min-height: 60vh">
|
|
<div *ngIf="loading" class="uk-position-center">
|
|
<loading></loading>
|
|
</div>
|
|
<div *ngIf="!loading">
|
|
<div *ngIf="previewCommunityContentProviders.length == 0"
|
|
class="uk-card uk-card-default uk-padding-large uk-text-center uk-margin-bottom uk-text-bold">
|
|
<div>No <span class="uk-text-lowercase">{{openAIREEntities.DATASOURCES}} </span>
|
|
<span *ngIf="communityContentProviders.length == 0; else: notFound">for {{community.shortTitle}}</span>
|
|
<ng-template #notFound>found</ng-template>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="previewCommunityContentProviders.length > 0">
|
|
<no-load-paging [type]="previewCommunityContentProviders.length === 1?openAIREEntities.DATASOURCE:openAIREEntities.DATASOURCES"
|
|
(pageChange)="updatePage($event)"
|
|
[page]="page" [pageSize]="resultsPerPage"
|
|
[totalResults]="previewCommunityContentProviders.length">
|
|
</no-load-paging>
|
|
<div class="uk-grid uk-grid-large uk-child-width-1-1 uk-child-width-1-2@m uk-margin-top uk-margin-bottom"
|
|
uk-height-match="target: .uk-card-body; row: false;" uk-grid>
|
|
<div *ngFor="let item of currentPage; let i=index">
|
|
<div class="uk-card uk-card-default">
|
|
<div class="uk-card-body">
|
|
<h6 class="uk-margin-bottom">
|
|
<a *ngIf="item.openaireId"
|
|
target="_blank" class="custom-external uk-link-text"
|
|
[href]="contentProviderUrl+item.openaireId">
|
|
<span *ngIf="item.officialname">{{item.officialname}}</span>
|
|
<span *ngIf="!item.officialname && item.name">{{item.name}}</span>
|
|
<span *ngIf="!item.officialname && !item.name">[no title available]</span>
|
|
</a>
|
|
<span *ngIf="!item.openaireId">
|
|
<span *ngIf="item.officialname">{{item.officialname}}</span>
|
|
<span *ngIf="!item.officialname && item.name">{{item.name}}</span>
|
|
<span *ngIf="!item.officialname && !item.name">[no title available]</span>
|
|
</span>
|
|
</h6>
|
|
<div *ngIf="item.selectioncriteria?.criteria?.length > 0" class="uk-margin-small-bottom uk-text-small">
|
|
<div class="uk-text-meta uk-margin-small-bottom">Filters</div>
|
|
<div [innerHTML]="getFiltersAsText(item.selectioncriteria.criteria)"></div>
|
|
<div *ngIf="item.selectioncriteria.criteria.length > 3" class="uk-margin-small-top">
|
|
<a class="uk-link view-more-less-link" (click)="openCriteria(item)">View all {{item.selectioncriteria.criteria.length}} filters</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="uk-card-footer uk-padding-remove-vertical">
|
|
<div class="uk-grid uk-grid-small uk-flex-nowrap uk-grid-divider uk-flex-right" uk-grid>
|
|
<div>
|
|
<div class="uk-padding-small uk-padding-remove-horizontal">
|
|
<a (click)="openCriteria(item)" class="uk-button uk-button-link uk-flex uk-flex-middle">
|
|
<icon name="filters" [flex]="true"></icon>
|
|
<span *ngIf="item.selectioncriteria?.criteria?.length > 0" class="uk-margin-small-left"
|
|
uk-tooltip="<div>Edit filters to limit research results.<br>Results which satisfy any of the selected filters will be included in your community.</div>">
|
|
Edit filters
|
|
</span>
|
|
<span *ngIf="!(item.selectioncriteria?.criteria?.length > 0)" class="uk-margin-small-left"
|
|
uk-tooltip="<div>Add filter to limit research results.<br>Results which satisfy any of the selected filters will be included in your community.</div>">
|
|
Add filters
|
|
</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="uk-padding-small uk-padding-remove-horizontal">
|
|
<a (click)="removeContentProvider(item)"
|
|
class="uk-button uk-button-link uk-flex uk-flex-middle">
|
|
<icon name="remove" [flex]="true"></icon>
|
|
<span class="uk-margin-small-left">Remove</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="uk-margin-small-top">
|
|
<paging-no-load [currentPage]="page"
|
|
[totalResults]="previewCommunityContentProviders.length" [size]="resultsPerPage"
|
|
(pageChange)="updatePage($event)" customClasses="uk-flex-right@m uk-flex-center">
|
|
</paging-no-load>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<modal-alert #deleteModal [overflowBody]="false" (alertOutput)="confirmedDeleteContentProvider()" classTitle="uk-background-primary uk-light"></modal-alert>
|