314 lines
23 KiB
HTML
314 lines
23 KiB
HTML
<div>
|
|
<div>
|
|
<div class="uk-grid uk-margin-top uk-animation-fade">
|
|
<div class="uk-width-expand">
|
|
|
|
<div class="uk-grid uk-flex uk-flex-middle">
|
|
<div class="uk-width-1-2">
|
|
Select communities to link to
|
|
</div>
|
|
<div class="uk-width-1-2">
|
|
<div class="uk-margin">
|
|
<div class="uk-inline">
|
|
<span class="uk-form-icon uk-icon" ><svg width="20" height="20" viewBox="0 0 20 20"
|
|
xmlns="http://www.w3.org/2000/svg" icon="search" ratio="1"><circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"></circle><path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"></path></svg></span>
|
|
<input class=" uk-input uk-width-medium" [(ngModel)]="keyword" name="keyword"
|
|
placeholder="Search communities..."/>
|
|
<span *ngIf="keyword.length > 0" class="uk-margin-small-right uk-icon" style="cursor: pointer;"
|
|
(click)="keyword='';">
|
|
<svg width="20" height="20" viewBox="0 0 20 20"
|
|
xmlns="http://www.w3.org/2000/svg" data-svg="close"><path fill="none" stroke="#000"
|
|
stroke-width="1.06"
|
|
d="M16,16 L4,4"></path><path
|
|
fill="none"
|
|
stroke="#000"
|
|
stroke-width="1.06"
|
|
d="M16,4 L4,16"></path></svg>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
<div class="uk-margin-right uk-padding">
|
|
<span *ngFor="let community of communities" [title]="(this.results.length>=basketLimit)?'Basket reached the size limit':''">
|
|
<span [class]="((this.results.length>=basketLimit)?'uk-disabled':'')+' uk-margin-small-bottom uk-margin-small-right '+getCommunityClass(community)"
|
|
(click)="select(community)" style="cursor:pointer;">
|
|
<a href="#modal-categories" uk-toggle>
|
|
{{community.label}}
|
|
</a>
|
|
</span>
|
|
</span>
|
|
</div>
|
|
|
|
<!-- Categories modal-->
|
|
<div id="modal-categories" uk-modal="bg-close:false;">
|
|
<div class="uk-modal-dialog uk-modal-body uk-height-min-medium">
|
|
<a class="uk-modal-close uk-position-right uk-margin-right uk-margin-top" type="button">
|
|
<svg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg" data-svg="close-icon">
|
|
<line fill="none" stroke="#000" stroke-width="1.1" x1="1" y1="1" x2="13" y2="13"></line>
|
|
<line fill="none" stroke="#000" stroke-width="1.1" x1="13" y1="1" x2="1" y2="13"></line>
|
|
</svg>
|
|
</a>
|
|
|
|
<div class="portal-color uk-margin-top">
|
|
<span class="uk-icon-button icon-button-small portal-icon-button uk-icon">
|
|
<svg height="20" icon="check" ratio="1" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><polyline fill="none" points="4,10 8,15 17,4" stroke="#000" stroke-width="1.1"></polyline></svg>
|
|
</span>
|
|
<span
|
|
class="uk-text-bold">{{selectedCommunityLabel}}</span> community is now in your Links Basket
|
|
</div>
|
|
<div *ngIf="loading" class="uk-alert uk-alert-primary" role="alert">Loading communities information...</div>
|
|
<div *ngIf="error" class="uk-alert uk-alert-warning"
|
|
role="alert">An error occured while loading communities...
|
|
</div>
|
|
<!-- *ngIf="categories[selectedCommunityId] && categories[selectedCommunityId].length > 0 " -->
|
|
<div class="uk-margin-small-top uk-text-small" *ngIf="categories[selectedCommunityId] &&
|
|
categories[selectedCommunityId].length > 0 ">
|
|
Optionally, you can specify additional Community's paths to link your sources.
|
|
</div>
|
|
|
|
<div *ngIf="categories[selectedCommunityId] && categories[selectedCommunityId].length == 0 "
|
|
class=" uk-margin-small-top uk-text-small uk-text-muted">
|
|
No aditional community paths found for this community.
|
|
</div>
|
|
<ul *ngIf="categories[selectedCommunityId] && categories[selectedCommunityId].length > 0 "
|
|
class=" uk-list uk-margin-top uk-animation-fade uk-overflow-auto uk-height-medium">
|
|
<li *ngFor="let category of categories[selectedCommunityId]">
|
|
<span (click)="browseConcepts(category.id)">
|
|
<span *ngIf="!conceptsClassDisplay[category.id]" class="uk-icon"><svg width="20" height="20"
|
|
viewBox="0 0 20 20"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
ratio="1"> <polygon
|
|
points="8 5 13 10 8 15"></polygon></svg></span>
|
|
<span *ngIf="conceptsClassDisplay[category.id]" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon
|
|
points="5 7 15 7 10 12"></polygon></svg>
|
|
</span>
|
|
{{category.label}} - {{category.id}}</span>
|
|
<a *ngIf="!isSelected(category.id)"
|
|
(click)="addNewContext(selectedCommunityLabel,category.label,{'id':category.id, 'label':category.label})"
|
|
[class]="((this.results.length>=basketLimit)?'uk-disabled':'')+' uk-icon-button icon-button-small'">
|
|
<span class="uk-icon" [title]="(this.results.length>=basketLimit)?'Basket reached the size limit':''">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus"
|
|
ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17"
|
|
height="1"></rect></svg>
|
|
</span>
|
|
</a>
|
|
|
|
<span *ngIf="isSelected(category.id)"
|
|
class="uk-icon-button icon-button-small portal-icon-button uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="check"
|
|
ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.1"
|
|
points="4,10 8,15 17,4"></polyline></svg>
|
|
</span>
|
|
<div *ngIf="conceptsCategoryLoading[category.id]" class="uk-alert uk-alert-primary"
|
|
role="alert">Loading category information...
|
|
</div>
|
|
<div
|
|
[class]="(conceptsClassDisplay[category.id] && conceptsClass[category.id] && conceptsClass[category.id].length>5)?'uk-panel-scrollable':''">
|
|
<div
|
|
*ngIf="conceptsClass[category.id] && conceptsClass[category.id].length == 0 && conceptsClassDisplay[category.id]">No more paths found
|
|
</div>
|
|
<ul *ngIf="conceptsClass[category.id] && conceptsClassDisplay[category.id]"
|
|
class="uk-list uk-animation-fade" id="ul_{{category.id}}">
|
|
<li *ngFor="let concept1 of conceptsClass[category.id]">
|
|
<span (click)="displaySubcategory(concept1.id)">
|
|
<span *ngIf="!conceptsClassDisplay[concept1.id] && concept1.concepts" class="uk-icon"><svg
|
|
width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon
|
|
points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[concept1.id] && concept1.concepts" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon
|
|
points="5 7 15 7 10 12"></polygon></svg></span>
|
|
{{concept1.label}}
|
|
</span>
|
|
<a *ngIf="!isSelected(concept1.id)"
|
|
(click)="addNewContext(selectedCommunityLabel,category.label,concept1)"
|
|
[class]="((this.results.length>=basketLimit)?'uk-disabled':'')+' uk-icon-button icon-button-small'"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect
|
|
x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept1.id)"
|
|
class="uk-icon-button icon-button-small portal-icon-button uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="check"
|
|
ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.1"
|
|
points="4,10 8,15 17,4"></polyline></svg>
|
|
</span>
|
|
<div
|
|
[class]="(conceptsClassDisplay[concept1.id] && concept1.concepts && concept1.concepts.length>5)?'uk-panel-scrollable':''">
|
|
<div
|
|
*ngIf="concept1.concepts && concept1.concepts.length==0 && conceptsClassDisplay[concept1.id]">No more paths found
|
|
</div>
|
|
<ul *ngIf="concept1.concepts && conceptsClassDisplay[concept1.id] " class="uk-animation-fade">
|
|
<li *ngFor="let concept2 of concept1.concepts"><span
|
|
(click)="displaySubcategory(concept2.id)">
|
|
<span *ngIf="!conceptsClassDisplay[concept2.id] && concept2.concepts" class="uk-icon"><svg
|
|
width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon
|
|
points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[concept2.id] && concept2.concepts" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon
|
|
points="5 7 15 7 10 12"></polygon></svg></span>
|
|
{{concept2.label}}</span>
|
|
<a *ngIf="!isSelected(concept2.id)"
|
|
(click)="addNewContext(selectedCommunityLabel,category.label,concept2)"
|
|
[class]="((this.results.length>=basketLimit)?'uk-disabled':'')+' uk-icon-button icon-button-small'"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect
|
|
x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept2.id)"
|
|
class="uk-icon-button icon-button-small portal-icon-button uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"
|
|
icon="check" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.1"
|
|
points="4,10 8,15 17,4"></polyline></svg>
|
|
</span>
|
|
<ul *ngIf="concept2.concepts && conceptsClassDisplay[concept2.id] "
|
|
class="uk-animation-fade">
|
|
<li *ngFor="let concept3 of concept2.concepts">{{concept3.label}} [title]="(this.results.length>=basketLimit)?'Basket reached the size limit':''"
|
|
<a *ngIf="!isSelected(concept3.id)"
|
|
(click)="addNewContext(selectedCommunityLabel,category.label,concept3)"
|
|
[class]="((this.results.length>=basketLimit)?'uk-disabled':'')+' uk-icon-button icon-button-small'"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect
|
|
x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept3.id)"
|
|
class="uk-icon-button icon-button-small portal-icon-button uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"
|
|
icon="check" ratio="1"><polyline fill="none" stroke="#000" stroke-width="1.1"
|
|
points="4,10 8,15 17,4"></polyline></svg>
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
|
|
</ul>
|
|
<!-- </li>
|
|
</ul> -->
|
|
<p class="">
|
|
<button class="uk-button uk-button-default uk-modal-close uk-margin-right uk-margin-top uk-align-right"
|
|
type="button">Close
|
|
</button>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<!-- <div class="uk-text-large">Select a community <helper div="link-context-form" tooltip=true></helper> </div>
|
|
<select [(ngModel)]="selectedCommunityId" (ngModelChange)="communityChanged()" class="uk-margin-large-bottom uk-select uk-width-medium " name="select_funder" >
|
|
<option value="0" >Select community</option>
|
|
<option *ngFor="let community of communities" [value]="community.id" >{{community.label}}</option>
|
|
</select> -->
|
|
<!--div class="uk-text-large">and then</div>
|
|
<div class=" uk-margin-left uk-margin-left">
|
|
<div class=" uk-text-bold">search for community concepts</div>
|
|
<table class="uk-margin-remove uk-width-1-1 uk-table uk-table-responsive" ><tr>
|
|
<tr>
|
|
<td *ngIf="selectedCommunityId != '0' && categories.length > 0" class="uk-width-medium">
|
|
<select [(ngModel)]="selectedCategoryId" (ngModelChange)="categoryChanged()" class="uk-select uk-width-medium " name="select_funder" >
|
|
<option value="0" >Select category</option>
|
|
<option *ngFor="let category of categories" [value]="category.id" >{{category.label}}</option>
|
|
</select>
|
|
</td><td >
|
|
<static-autocomplete [(properties)]=properties [(list)] = concepts [allowDuplicates]=true [showSelected]=false [placeHolderMessage] = "'Concept name'" title = "Concepts" [multipleSelections]=true (addItem) = "select($event)" > </static-autocomplete>
|
|
</td></tr>
|
|
|
|
</table>
|
|
</div-->
|
|
<!-- <div *ngIf="loading" class="uk-alert uk-alert-primary" role="alert">Loading communities information...</div>
|
|
<div *ngIf="error" class="uk-alert uk-alert-warning" role="alert">An error occured while loading communities...</div>
|
|
<div class="uk-text-large ">or</div>
|
|
<div class=" uk-text-bold uk-margin-bottom uk-margin-left">browse through community categories:
|
|
<button uk-toggle="target: #browse; animation: uk-animation-fade" class="uk-button portal-button"> Browse </button>
|
|
</div> -->
|
|
<div class="uk-margin-left">
|
|
|
|
<!-- <div id="browse" class=" uk-margin-small">
|
|
|
|
<div *ngIf="selectedCommunityId =='0'" class="uk-alert uk-alert-warning" >Please select community first...</div>
|
|
<div *ngIf="selectedCommunityId !='0'" class="uk-panel uk-panel-scrollable">
|
|
<ul class="uk-list ">
|
|
<li>
|
|
<span (click)="displaySubcategory(selectedCommunityId)" >
|
|
<span *ngIf="!conceptsClassDisplay[selectedCommunityId]" class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[selectedCommunityId]" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="5 7 15 7 10 12"></polygon></svg></span>{{selectedCommunityLabel}}
|
|
</span>
|
|
<a *ngIf="!isSelected(selectedCommunityId)" (click)="addNewContext(selectedCommunityLabel,null,{'id':selectedCommunityId, 'label':selectedCommunityLabel})" class="uk-icon-button icon-button-small uk-icon">
|
|
<span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span> </a>
|
|
<span *ngIf="isSelected(selectedCommunityId)" class="uk-label uk-label-success uk-margin-small-top">Added</span>
|
|
<ul *ngIf="conceptsClassDisplay[selectedCommunityId]" class="uk-animation-fade" >
|
|
<li *ngFor="let category of categories" >
|
|
<span (click)="browseConcepts(category.id)" >
|
|
<span *ngIf="!conceptsClassDisplay[category.id]" class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[category.id]" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="5 7 15 7 10 12"></polygon></svg></span>
|
|
{{category.label}}</span><a *ngIf="!isSelected(category.id)" (click)="addNewContext(selectedCommunityLabel,category.label,{'id':category.id, 'label':category.label})" class="uk-icon-button icon-button-small" >
|
|
<span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(category.id)" class="uk-label uk-label-success uk-margin-small-top">Added</span>
|
|
<div *ngIf="conceptsCategoryLoading[category.id]" class="uk-alert uk-alert-primary" role="alert">Loading category information...</div>
|
|
|
|
<ul *ngIf="conceptsClass[category.id] && conceptsClassDisplay[category.id]" class="uk-list uk-animation-fade" id="ul_{{category.id}}" >
|
|
<li *ngFor="let concept1 of conceptsClass[category.id]" >
|
|
<span (click)="displaySubcategory(concept1.id)" >
|
|
<span *ngIf="!conceptsClassDisplay[concept1.id] && concept1.concepts" class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[concept1.id] && concept1.concepts" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="5 7 15 7 10 12"></polygon></svg></span>
|
|
{{concept1.label}}
|
|
</span>
|
|
<a *ngIf="!isSelected(concept1.id)" (click)="addNewContext(selectedCommunityLabel,category.label,concept1)" class="uk-icon-button icon-button-small"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept1.id)" class="uk-label uk-label-success uk-margin-small-top">Added</span>
|
|
<ul *ngIf="concept1.concepts && conceptsClassDisplay[concept1.id] " class="uk-animation-fade" >
|
|
<li *ngFor="let concept2 of concept1.concepts"><span (click)="displaySubcategory(concept2.id)" >
|
|
<span *ngIf="!conceptsClassDisplay[concept2.id] && concept2.concepts" class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="8 5 13 10 8 15"></polygon></svg></span>
|
|
|
|
<span *ngIf="conceptsClassDisplay[concept2.id] && concept2.concepts" class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1"> <polygon points="5 7 15 7 10 12"></polygon></svg></span>
|
|
{{concept2.label}}</span>
|
|
<a *ngIf="!isSelected(concept2.id)" (click)="addNewContext(selectedCommunityLabel,category.label,concept2)" class="uk-icon-button icon-button-small"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept2.id)" class="uk-label uk-label-success uk-margin-small-top">Added</span>
|
|
<ul *ngIf="concept2.concepts && conceptsClassDisplay[concept2.id] " class="uk-animation-fade" >
|
|
<li *ngFor="let concept3 of concept2.concepts">{{concept3.label}}
|
|
<a *ngIf="!isSelected(concept3.id)" (click)="addNewContext(selectedCommunityLabel,category.label,concept3)" class="uk-icon-button icon-button-small"><span class="uk-icon">
|
|
<svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="plus" ratio="0.8"><rect x="9" y="1" width="1" height="17"></rect><rect x="1" y="9" width="17" height="1"></rect></svg>
|
|
</span></a>
|
|
<span *ngIf="isSelected(concept3.id)" class="uk-label uk-label-success uk-margin-small-top">Added</span>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</ul>
|
|
</div>
|
|
</div> -->
|
|
</div>
|
|
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning" role="alert">{{warningMessage}}</div>
|
|
<div *ngIf="infoMessage.length > 0" class="uk-alert uk-alert-primary" role="alert">{{infoMessage}}</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|