263 lines
16 KiB
HTML
263 lines
16 KiB
HTML
<ng-template #destinations_basket>
|
|
<div *ngIf="(results.length)> 0 || showOptions.show=='result'" class="uk-padding-small uk-padding-remove-horizontal" style="min-height: 17px;">
|
|
<start-over *ngIf=" (results.length)> 0"
|
|
[results]="results" [localStoragePrefix]="localStoragePrefix+'results'"
|
|
message="all results (projects, communities, research results)"
|
|
class="uk-float-right"></start-over>
|
|
<bulk-claim *ngIf="showOptions.show=='result'" [results]="results" [properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'results'"
|
|
[basketLimit]="basketLimit"></bulk-claim>
|
|
</div>
|
|
<div class="uk-padding-small uk-padding-remove-horizontal">
|
|
<div *ngIf="results.length >= basketLimit "
|
|
class="uk-alert uk-alert-warning uk-text-center">
|
|
Basket reached the size limit. No more entities can be added.
|
|
</div>
|
|
<claim-selected-results sectionTitle="Selected Results" [results]="results"
|
|
[localStoragePrefix]="localStoragePrefix+'results'" type="target">
|
|
</claim-selected-results>
|
|
<div *ngIf="(results.length) == 0 " class=" uk-text-center">
|
|
No entities to link with the sources. Start adding entities from the left panel.
|
|
</div>
|
|
|
|
</div>
|
|
</ng-template>
|
|
|
|
|
|
<div class="linking uk-background-default">
|
|
<div class="uk-container uk-container-large uk-section uk-section-small uk-padding-remove-bottom">
|
|
<div class="uk-padding-small uk-padding-remove-horizontal">
|
|
<breadcrumbs *ngIf="!inlineEntity" [breadcrumbs]="breadcrumbs"></breadcrumbs>
|
|
<!-- [routerLink]="inlineEntity.result?.url.split('?')[0]"-->
|
|
<!-- [queryParams]="routerHelper.createQueryParam(inlineEntity.result?.url.split('?')[1].split('=')[0], inlineEntity.id)"-->
|
|
<a *ngIf="inlineEntity && inlineEntity.result"
|
|
(click)="back()"
|
|
class="uk-button uk-button-link uk-text-transform-none uk-flex uk-flex-middle">
|
|
<icon name="west" [flex]="true"></icon>
|
|
<span class="uk-margin-small-left">Back to {{getEntityName(inlineEntity.type, false)}}</span>
|
|
</a>
|
|
<a *ngIf="inlineEntity && inlineEntity.project"
|
|
[routerLink]="inlineEntity.project?.url?.split('?')[0]"
|
|
[queryParams]="routerHelper.createQueryParam(inlineEntity.project?.url.split('?')[1].split('=')[0], inlineEntity.id)"
|
|
class="uk-button uk-button-link uk-text-transform-none uk-flex uk-flex-middle">
|
|
<icon name="west" [flex]="true"></icon>
|
|
<span class="uk-margin-small-left">Back to {{getEntityName(inlineEntity.type, false)}}</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="!inlineEntity" uk-sticky="offset: 65; bottom: #pageBottom; media: @m" class="uk-blur-background">
|
|
<div class="uk-section-xsmall">
|
|
<stepper>
|
|
<step [status]="stepStatus('source')" stepId="source" stepNumber="1"
|
|
[stepText]="'Find Sources'" (stepChanged)="stepHasChanged($event)"
|
|
[active]="this.showOptions.show" [showStepLine]="false"></step>
|
|
<step [status]="stepStatus('target')" stepId="target" [stepNumber]="2"
|
|
[stepText]="'Link Sources to Entities'"
|
|
(stepChanged)="stepHasChanged($event)" [active]="this.showOptions.show"
|
|
[showStepLine]="true"></step>
|
|
<step [status]="stepStatus('claim')" stepId="claim" [stepNumber]="3"
|
|
[stepText]="'Summarize and finish'"
|
|
(stepChanged)="stepHasChanged($event)" [active]="this.showOptions.show"
|
|
[showStepLine]="true"></step>
|
|
</stepper>
|
|
</div>
|
|
</div>
|
|
<div id="pageTop"></div>
|
|
<metadata-preview *ngIf="showOptions.show=='claim' && properties" class="uk-margin-top"
|
|
[results]="results" [sources]="sources"
|
|
[localStoragePrefix]="localStoragePrefix" [inlineEntity]="inlineEntity"
|
|
[showOptions]="showOptions" [properties]=properties [pageContents]="pageContents"
|
|
[defaultColors]="!communityId" [communityId]="communityId"
|
|
>
|
|
</metadata-preview>
|
|
<div id="tm-main" class="uk-section uk-padding-remove-top" *ngIf="showOptions.show != 'claim'">
|
|
<div>
|
|
<schema2jsonld *ngIf="url" [URL]="url" name="Link your {{openaireEntities.RESULTS}}" type="other"></schema2jsonld>
|
|
<div [class]="((showOptions.show == 'claim')?'':' uk-margin-top ')+' uk-container uk-container-large '">
|
|
<div *ngIf="properties" class="uk-section uk-padding-remove-top">
|
|
<div [class]="((showOptions.show == 'claim')?'':' uk-margin-top ')+' uk-container uk-container-large '">
|
|
<div class="uk-grid basketContainer" *ngIf="showOptions.show!='claim'" uk-grid>
|
|
<div class="uk-width-2-3 uk-position-z-index">
|
|
<h2 *ngIf="inlineEntity" class="uk-text-center">Link source to</h2>
|
|
<div *ngIf="showOptions.show=='source'">
|
|
<claim-result-search-form [selectedResults]="sources" [properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'sources'"
|
|
[basketLimit]="basketLimit" [centerAlign]="!!inlineEntity"
|
|
></claim-result-search-form>
|
|
</div>
|
|
<div *ngIf="showOptions.show=='project'">
|
|
<claim-projects-search-form [selectedProjects]="results" [properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'results'"
|
|
[basketLimit]="basketLimit" [showOptions]="showOptions"
|
|
[centerAlign]="!!inlineEntity"
|
|
></claim-projects-search-form>
|
|
</div>
|
|
<div *ngIf="showOptions.show=='context'">
|
|
<claim-contexts-search-form [communityId]=communityId [results]="results" [sources]="sources"
|
|
[properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'results'"
|
|
[basketLimit]="basketLimit" [showOptions]="showOptions"
|
|
[centerAlign]="!!inlineEntity"
|
|
></claim-contexts-search-form>
|
|
</div>
|
|
<div *ngIf="showOptions.show=='result'">
|
|
<claim-result-search-form [selectedResults]="results" [properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'results'"
|
|
[basketLimit]="basketLimit" [showOptions]="showOptions"
|
|
[centerAlign]="!!inlineEntity"
|
|
></claim-result-search-form>
|
|
</div>
|
|
</div>
|
|
<!-- Basket-->
|
|
<div *ngIf="showOptions.show != 'claim'" class="uk-width-1-3">
|
|
<div id="basket" uk-sticky="offset: 220; bottom: !*; media: @m" style="z-index: 0!important;">
|
|
<div class="uk-card uk-card-default linkingBasket">
|
|
<div class="uk-card-body uk-padding-small">
|
|
<div class="uk-margin-right">
|
|
<ng-container *ngIf="inlineEntity">
|
|
<div class="uk-margin-small-bottom">
|
|
<div class="uk-text-emphasis uk-text-bolder">Source</div>
|
|
<claim-selected-results [results]="[inlineEntity]"
|
|
[localStoragePrefix]="localStoragePrefix+'sources'" class=""
|
|
[enableRemove]="false" type="source">
|
|
</claim-selected-results>
|
|
</div>
|
|
<div class="uk-padding-small uk-padding-remove-horizontal"><hr class="uk-margin-remove"/></div>
|
|
<div class="uk-margin-small-top">
|
|
<div class="uk-text-emphasis uk-text-bolder">Link source to <span *ngIf="results.length> 0">({{(results.length) | number}})</span></div>
|
|
<ng-container *ngTemplateOutlet="destinations_basket"></ng-container>
|
|
</div>
|
|
</ng-container>
|
|
|
|
<ng-container *ngIf="!inlineEntity">
|
|
<ul class="uk-tab" uk-tab>
|
|
<li [class.uk-active]="showOptions.basketShowSources"
|
|
(click)="showOptions.basketswitchToSources()">
|
|
<a>
|
|
Sources to link ({{(sources.length) |number}})
|
|
</a>
|
|
</li>
|
|
<li [class.uk-disabled]="sources.length == 0"
|
|
[class.uk-active]="showOptions.basketShowLinksTo">
|
|
<a (click)="showOptions.basketswitchToLinkTo()">Link to <span
|
|
*ngIf="results.length> 0">({{(results.length) | number}})</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<div *ngIf="showOptions.basketShowSources">
|
|
<div class="uk-height-medium uk-overflow-auto">
|
|
<div *ngIf="showOptions.show == 'source'" class="uk-padding-small uk-padding-remove-horizontal" style="min-height:17px;">
|
|
<start-over *ngIf="showOptions.show == 'source' && sources.length> 0"
|
|
[results]="sources"
|
|
[localStoragePrefix]="localStoragePrefix+'sources'"
|
|
message="all sources" class="uk-float-right"></start-over>
|
|
<bulk-claim *ngIf="showOptions.show == 'source'" [results]="sources"
|
|
[properties]=properties
|
|
[localStoragePrefix]="localStoragePrefix+'sources'" [basketLimit]="basketLimit"
|
|
>
|
|
</bulk-claim>
|
|
|
|
</div>
|
|
<div class="uk-padding-small uk-padding-remove-horizontal">
|
|
<div *ngIf="sources.length == 0" class="uk-text-center uk-text-meta">
|
|
No Sources added yet. Start adding sources from the left panel. Or upload a DOI's CSV file.
|
|
</div>
|
|
<div *ngIf="sources.length >= basketLimit " class="uk-alert uk-alert-warning uk-text-center">
|
|
Basket reached the size limit. No more sources can be added.
|
|
</div>
|
|
<claim-selected-results *ngIf="sources.length > 0" [results]="sources"
|
|
[localStoragePrefix]="localStoragePrefix+'sources'" class=""
|
|
[enableRemove]="true" type="source">
|
|
</claim-selected-results>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="showOptions.basketShowLinksTo">
|
|
<div class="uk-height-medium uk-overflow-auto">
|
|
<ng-container *ngTemplateOutlet="destinations_basket"></ng-container>
|
|
</div>
|
|
</div>
|
|
</ng-container>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="showOptions.show == 'source'"
|
|
class="uk-card-footer uk-flex uk-flex-center clickable"
|
|
[class.uk-tile-primary]="sources.length > 0"
|
|
[class.uk-background-muted]="sources.length == 0"
|
|
[class.uk-disabled]="sources.length == 0"
|
|
(click)="stepHasChanged('target')">
|
|
<button class="uk-flex uk-flex-middle uk-button uk-button-text"
|
|
[class.uk-disabled]="sources.length == 0" [disabled]="sources.length == 0">
|
|
<icon name="link" visuallyHidden="link" [flex]="true"></icon>
|
|
<div class="uk-width-expand uk-margin-small-left">STEP 2 - LINK SOURCES TO ENTITIES</div>
|
|
</button>
|
|
|
|
</div>
|
|
<div *ngIf="showOptions.show != 'source'"
|
|
class="uk-card-footer uk-flex uk-flex-center clickable"
|
|
[class.uk-tile-primary]="results.length > 0"
|
|
[class.uk-background-muted]="results.length == 0"
|
|
[class.uk-disabled]="results.length == 0" (click)="stepHasChanged('claim')">
|
|
<button class="uk-flex uk-flex-middle uk-button uk-button-text"
|
|
[class.uk-disabled]="results.length == 0" [disabled]="results.length == 0">
|
|
<icon *ngIf="inlineEntity" name="link" visuallyHidden="link" [flex]="true"></icon>
|
|
<div class="uk-width-expand uk-margin-small-left"><ng-container *ngIf="!inlineEntity">STEP {{inlineEntity ? '2' : '3'}} - </ng-container>SUMMARISE</div>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- <helper position="right" styleName=" uk-width-1-5"></helper>-->
|
|
</div>
|
|
<helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
|
|
[texts]="pageContents['bottom']"></helper>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="pageBottom"></div>
|
|
<modal-alert (alertOutput)="closeSelectionModal($event)">
|
|
<div class="uk-grid uk-text-center uk-padding uk-child-width-1-3">
|
|
<div *ngIf="showOptions.linkToEntities.indexOf('project')!=-1 " (click)="closeSelectionModal('project')" class="clickable">
|
|
<button class="uk-icon-button">
|
|
<span class="uk-icon">
|
|
<svg height="20" icon="album" ratio="1" viewBox="0 0 20 20" width="20"
|
|
xmlns="http://www.w3.org/2000/svg"><rect height="1" width="10" x="5" y="2"></rect><rect
|
|
height="1" width="14" x="3" y="4"></rect><rect fill="none" height="11" stroke="#000"
|
|
width="17" x="1.5"
|
|
y="6.5"></rect></svg></span>
|
|
</button>
|
|
<div>Projects</div>
|
|
</div>
|
|
<div *ngIf="showOptions.linkToEntities.indexOf('result')!=-1 " (click)="closeSelectionModal('result')"
|
|
class="clickable">
|
|
<button class="uk-icon-button">
|
|
<span class="uk-icon">
|
|
<svg height="20" icon="copy" ratio="1" viewBox="0 0 20 20" width="20"
|
|
xmlns="http://www.w3.org/2000/svg"><rect fill="none" height="16" stroke="#000"
|
|
width="12" x="3.5" y="2.5"></rect><polyline
|
|
fill="none" points="5 0.5 17.5 0.5 17.5 17" stroke="#000"></polyline></svg>
|
|
</span>
|
|
</button>
|
|
<div>Research results</div>
|
|
</div>
|
|
<div *ngIf="showOptions.linkToEntities.indexOf('context')!=-1 " (click)="closeSelectionModal('context')"
|
|
class="clickable">
|
|
<button class="uk-icon-button">
|
|
<span class="uk-icon">
|
|
<svg height="20" icon="users" ratio="1" viewBox="0 0 20 20" width="20"
|
|
xmlns="http://www.w3.org/2000/svg"><circle cx="7.7" cy="8.6" fill="none" r="3.5"
|
|
stroke="#000" stroke-width="1.1"></circle><path
|
|
d="M1,18.1 C1.7,14.6 4.4,12.1 7.6,12.1 C10.9,12.1 13.7,14.8 14.3,18.3" fill="none"
|
|
stroke="#000" stroke-width="1.1"></path><path
|
|
d="M11.4,4 C12.8,2.4 15.4,2.8 16.3,4.7 C17.2,6.6 15.7,8.9 13.6,8.9 C16.5,8.9 18.8,11.3 19.2,14.1"
|
|
fill="none" stroke="#000" stroke-width="1.1"></path></svg></span>
|
|
</button>
|
|
<div>Communities</div>
|
|
</div>
|
|
|
|
</div>
|
|
</modal-alert>
|
|
</div>
|