186 |
186 |
</ng-template>
|
187 |
187 |
|
188 |
188 |
|
189 |
|
<div *ngIf="communityInfo" class="uk-section uk-padding-remove-top uk-padding-remove-bottom">
|
|
189 |
<div *ngIf="communityInfo && community" class="uk-section uk-padding-remove-top uk-padding-remove-bottom">
|
190 |
190 |
<div class="uk-padding-small">
|
191 |
191 |
<div class="uk-container uk-container-large uk-margin-top"
|
192 |
192 |
*ngIf="communityId">
|
... | ... | |
199 |
199 |
class="subtitle uk-margin-remove">
|
200 |
200 |
{{community.shortTitle}}
|
201 |
201 |
</div>
|
202 |
|
|
203 |
|
<div class="uk-margin-top">
|
204 |
|
<div *ngIf="isRouteEnabled('/curators')" class="uk-margin-top">
|
205 |
|
<curators [longView]="false" [managers]="community.managers" [communityId]="communityId"></curators>
|
206 |
|
</div>
|
207 |
|
<div>
|
208 |
|
<span *ngIf="projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects)">
|
209 |
|
<span class="uk-text-muted">Projects: </span>
|
210 |
|
<a class="uk-margin-auto-vertical uk-margin-auto portal-link" [queryParams]=params
|
211 |
|
routerLinkActive="router-link-active" [routerLink]="searchLinkToProjects">
|
212 |
|
{{projectTotal|number}}
|
213 |
|
</a>
|
214 |
|
</span>
|
215 |
|
<span *ngIf="contentProviderTotal && contentProviderTotal > 0 && isEntityEnabled('datasource') && isRouteEnabled(searchLinkToDataProviders)"
|
216 |
|
[class]="'uk-display-inline-block '+((projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects)) ? 'uk-margin-left' : '')">
|
217 |
|
<span class="uk-text-muted">Content Providers: </span>
|
218 |
|
<a class="uk-margin-auto-vertical uk-margin-auto portal-link" [queryParams]=params
|
219 |
|
routerLinkActive="router-link-active" [routerLink]="searchLinkToDataProviders">
|
220 |
|
{{contentProviderTotal|number}}
|
221 |
|
</a>
|
222 |
|
</span>
|
223 |
|
<span *ngIf="projectsCalculated && contentProvidersCalculated &&
|
224 |
|
((projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects))
|
225 |
|
|| (contentProviderTotal && contentProviderTotal > 0 && isEntityEnabled('datasource') && isRouteEnabled(searchLinkToDataProviders)))"
|
226 |
|
class="uk-icon uk-text-muted uk-margin-small-left"
|
227 |
|
title="{{buildProjectsAndContentProvidesTooltip()}}"
|
228 |
|
uk-tooltip="pos:bottom-right; delay:10; cls: community-page-tooltip uk-width-medium">
|
229 |
|
<svg width="15" height="15" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="question" ratio="1">
|
230 |
|
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle>
|
231 |
|
<circle cx="10.44" cy="14.42" r="1.05"></circle>
|
232 |
|
<path fill="none" stroke="#000" stroke-width="1.2" d="M8.17,7.79 C8.17,4.75 12.72,4.73 12.72,7.72 C12.72,8.67 11.81,9.15 11.23,9.75 C10.75,10.24 10.51,10.73 10.45,11.4 C10.44,11.53 10.43,11.64 10.43,11.75"></path>
|
233 |
|
</svg>
|
234 |
|
</span>
|
235 |
|
</div>
|
236 |
|
<div *ngIf="(zenodoCommunityIdS.length + ((masterZenodoCommunity) ? 1 : 0) > 0) && isRouteEnabled(shareInZenodoPage)" class="">
|
237 |
|
<span class="lowOpacityColor uk-text-muted">Linked to </span>
|
238 |
|
<a class="portal-link" [queryParams]=params routerLinkActive="router-link-active" [routerLink]="shareInZenodoPage">
|
239 |
|
<span>{{zenodoCommunityIdS.length + ((masterZenodoCommunity) ? 1 : 0)}}</span>
|
240 |
|
</a>
|
241 |
|
<span class="lowOpacityColor uk-text-muted"> Zenodo Communities</span>
|
242 |
|
<span class="uk-icon uk-text-muted uk-margin-small-left"
|
243 |
|
title="{{buildZenodoCommunitiesTooltip()}}"
|
244 |
|
uk-tooltip="pos:bottom-right; delay:10; cls: community-page-tooltip uk-width-medium">
|
245 |
|
<svg width="15" height="15" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="question" ratio="1">
|
246 |
|
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle>
|
247 |
|
<circle cx="10.44" cy="14.42" r="1.05"></circle>
|
248 |
|
<path fill="none" stroke="#000" stroke-width="1.2" d="M8.17,7.79 C8.17,4.75 12.72,4.73 12.72,7.72 C12.72,8.67 11.81,9.15 11.23,9.75 C10.75,10.24 10.51,10.73 10.45,11.4 C10.44,11.53 10.43,11.64 10.43,11.75"></path>
|
249 |
|
</svg>
|
250 |
|
</span>
|
251 |
|
</div>
|
252 |
|
</div>
|
253 |
202 |
</div>
|
254 |
203 |
<div>
|
255 |
204 |
<div class="main-tabs-div">
|
256 |
205 |
<ul uk-tab class="uk-text-truncate main-tabs uk-margin-remove uk-child-width-expand uk-width-3-4" uk-switcher="connect: .main-tabs-content">
|
257 |
206 |
<li class="uk-padding-remove">
|
258 |
207 |
<a class="uk-width-1-1 uk-height-1-1">
|
259 |
|
<div class="uk-text-bold">Summary</div>
|
|
208 |
<div class="tab-header">Summary</div>
|
260 |
209 |
</a>
|
261 |
210 |
</li>
|
262 |
211 |
<li *ngIf="publicationTotal && publicationTotal > 0 && isEntityEnabled('publication')"
|
263 |
212 |
class="uk-padding-remove" (click)="show='overview'; searchResearchResults('publication', publicationTotal, publicationResults)">
|
264 |
213 |
<a class="uk-width-1-1 uk-height-1-1">
|
265 |
|
<div class="uk-text-bold">Publications</div><div class="uk-margin-top number">{{publicationTotal|number}}</div>
|
|
214 |
<div class="tab-header">Publications</div><div class="number">{{publicationTotal|number}}</div>
|
266 |
215 |
</a>
|
267 |
216 |
</li>
|
268 |
217 |
<li *ngIf="researchDataTotal && researchDataTotal > 0 && isEntityEnabled('dataset')"
|
269 |
218 |
class="uk-padding-remove" (click)="show='overview'; searchResearchResults('dataset', researchDataTotal, researchDataResults)">
|
270 |
219 |
<a class="uk-width-1-1 uk-height-1-1">
|
271 |
|
<div class="uk-text-bold">Research Data</div><div class="uk-margin-top number">{{researchDataTotal|number}}</div>
|
|
220 |
<div class="tab-header">Research Data</div><div class="number">{{researchDataTotal|number}}</div>
|
272 |
221 |
</a>
|
273 |
222 |
</li>
|
274 |
223 |
<li *ngIf="softwareTotal && softwareTotal > 0 && isEntityEnabled('software')"
|
275 |
224 |
class="uk-padding-remove" (click)="show='overview'; searchResearchResults('software', softwareTotal, softwareResults)">
|
276 |
225 |
<a class="uk-width-1-1 uk-height-1-1">
|
277 |
|
<div class="uk-text-bold">Software</div><div class="uk-margin-top number">{{softwareTotal|number}}</div>
|
|
226 |
<div class="tab-header">Software</div><div class="number">{{softwareTotal|number}}</div>
|
278 |
227 |
</a>
|
279 |
228 |
</li>
|
280 |
229 |
<li *ngIf="orpTotal && orpTotal > 0 && isEntityEnabled('orp')"
|
281 |
230 |
class="uk-padding-remove" (click)="show='overview'; searchResearchResults('other', orpTotal, orpResults)">
|
282 |
231 |
<a class="uk-width-1-1 uk-height-1-1">
|
283 |
|
<div class="uk-text-bold">Other Research</div><div class="uk-margin-top number">{{orpTotal|number}}</div></a>
|
|
232 |
<div class="tab-header">Other Research</div><div class="number">{{orpTotal|number}}</div></a>
|
284 |
233 |
</li>
|
285 |
234 |
<li *ngIf="statistics && statistics.statisticsDisplay && statistics.statisticsDisplay.isActive"
|
286 |
235 |
class="uk-padding-remove statistics" (click)="show='analysis'; activeTab='analytics'">
|
287 |
236 |
<a class="uk-width-1-1 uk-height-1-1">
|
288 |
|
<div class="uk-text-bold">Analytics</div>
|
289 |
|
<div class="uk-margin-top number">
|
|
237 |
<div class="tab-header">Analytics</div>
|
|
238 |
<div class="number">
|
290 |
239 |
<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
|
291 |
240 |
<path d="M0 0h24v24H0z" fill="none"></path>
|
292 |
241 |
<path d="M10 20h4V4h-4v16zm-6 0h4v-8H4v8zM16 9v11h4V9h-4z"></path>
|
... | ... | |
300 |
249 |
<li>
|
301 |
250 |
<div *ngIf="community" class="uk-grid uk-margin-remove">
|
302 |
251 |
<div class="uk-width-expand uk-padding uk-inline">
|
303 |
|
<div>
|
|
252 |
<div *ngIf="isRouteEnabled('/curators')" [class]="community.managers ? 'uk-margin-small-bottom' : ''">
|
|
253 |
<curators [longView]="false" [managers]="community.managers" [communityId]="communityId"></curators>
|
|
254 |
</div>
|
|
255 |
<div [class]="community.date || subscribers ? 'uk-margin-small-bottom' : ''">
|
304 |
256 |
<span *ngIf="community.date" class="uk-margin-right">
|
305 |
257 |
<span class="lowOpacityColor uk-text-muted">Created: </span> {{community.date | date:'dd-MMM-yyyy'}}
|
306 |
258 |
</span>
|
307 |
259 |
<span>
|
308 |
|
<subscribe *ngIf="communityId" [communityId]="communityId" showNumbers=true class=""></subscribe>
|
|
260 |
<subscribe *ngIf="communityId" [communityId]="communityId" showNumbers=true (countSubscribersEvent)="countSubscribersEvent($event)"></subscribe>
|
309 |
261 |
</span>
|
310 |
262 |
</div>
|
|
263 |
<div [class]="((projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects)) ||
|
|
264 |
(contentProviderTotal && contentProviderTotal > 0 && isEntityEnabled('datasource') && isRouteEnabled(searchLinkToDataProviders)))
|
|
265 |
? 'uk-margin-small-bottom' : ''">
|
|
266 |
<span *ngIf="projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects)">
|
|
267 |
<span class="uk-text-muted">Projects: </span>
|
|
268 |
<a class="uk-margin-auto-vertical uk-margin-auto portal-link" [queryParams]=params
|
|
269 |
routerLinkActive="router-link-active" [routerLink]="searchLinkToProjects">
|
|
270 |
{{projectTotal|number}}
|
|
271 |
</a>
|
|
272 |
</span>
|
|
273 |
<span *ngIf="contentProviderTotal && contentProviderTotal > 0 && isEntityEnabled('datasource') && isRouteEnabled(searchLinkToDataProviders)"
|
|
274 |
[class]="'uk-display-inline-block '+((projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects)) ? 'uk-margin-left' : '')">
|
|
275 |
<span class="uk-text-muted">Content Providers: </span>
|
|
276 |
<a class="uk-margin-auto-vertical uk-margin-auto portal-link" [queryParams]=params
|
|
277 |
routerLinkActive="router-link-active" [routerLink]="searchLinkToDataProviders">
|
|
278 |
{{contentProviderTotal|number}}
|
|
279 |
</a>
|
|
280 |
</span>
|
|
281 |
<span *ngIf="projectsCalculated && contentProvidersCalculated &&
|
|
282 |
((projectTotal && projectTotal > 0 && isEntityEnabled('project') && isRouteEnabled(searchLinkToProjects))
|
|
283 |
|| (contentProviderTotal && contentProviderTotal > 0 && isEntityEnabled('datasource') && isRouteEnabled(searchLinkToDataProviders)))"
|
|
284 |
class="uk-icon uk-text-muted uk-margin-small-left"
|
|
285 |
title="{{buildProjectsAndContentProvidesTooltip()}}"
|
|
286 |
uk-tooltip="pos:bottom-right; delay:10; cls: community-page-tooltip uk-width-medium">
|
|
287 |
<svg width="15" height="15" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="question" ratio="1">
|
|
288 |
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle>
|
|
289 |
<circle cx="10.44" cy="14.42" r="1.05"></circle>
|
|
290 |
<path fill="none" stroke="#000" stroke-width="1.2" d="M8.17,7.79 C8.17,4.75 12.72,4.73 12.72,7.72 C12.72,8.67 11.81,9.15 11.23,9.75 C10.75,10.24 10.51,10.73 10.45,11.4 C10.44,11.53 10.43,11.64 10.43,11.75"></path>
|
|
291 |
</svg>
|
|
292 |
</span>
|
|
293 |
</div>
|
|
294 |
<div *ngIf="(zenodoCommunityIdS.length + ((masterZenodoCommunity) ? 1 : 0) > 0) && isRouteEnabled(shareInZenodoPage)" class="">
|
|
295 |
<span class="lowOpacityColor uk-text-muted">Linked to </span>
|
|
296 |
<a class="portal-link" [queryParams]=params routerLinkActive="router-link-active" [routerLink]="shareInZenodoPage">
|
|
297 |
<span>{{zenodoCommunityIdS.length + ((masterZenodoCommunity) ? 1 : 0)}}</span>
|
|
298 |
</a>
|
|
299 |
<span class="lowOpacityColor uk-text-muted"> Zenodo Communities</span>
|
|
300 |
<span class="uk-icon uk-text-muted uk-margin-small-left"
|
|
301 |
title="{{buildZenodoCommunitiesTooltip()}}"
|
|
302 |
uk-tooltip="pos:bottom-right; delay:10; cls: community-page-tooltip uk-width-medium">
|
|
303 |
<svg width="15" height="15" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="question" ratio="1">
|
|
304 |
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle>
|
|
305 |
<circle cx="10.44" cy="14.42" r="1.05"></circle>
|
|
306 |
<path fill="none" stroke="#000" stroke-width="1.2" d="M8.17,7.79 C8.17,4.75 12.72,4.73 12.72,7.72 C12.72,8.67 11.81,9.15 11.23,9.75 C10.75,10.24 10.51,10.73 10.45,11.4 C10.44,11.53 10.43,11.64 10.43,11.75"></path>
|
|
307 |
</svg>
|
|
308 |
</span>
|
|
309 |
</div>
|
|
310 |
|
311 |
311 |
<div *ngIf="community.description"
|
312 |
312 |
[class]="'uk-margin-bottom '+ ((subscribeComponent && subscribeComponent.subscribers > 0) || community.date ? 'uk-margin-top' : '')">
|
313 |
313 |
<div class="uk-text-muted">Description</div>
|
314 |
314 |
<div *ngIf="!showAllDescription" class="">
|
315 |
|
{{community.description.substring(0, 500)}}{{community.description.length > 500 ? '...' : ''}}</div>
|
|
315 |
{{community.description.substring(0, thresholdDescription)}}{{community.description.length > thresholdDescription ? '...' : ''}}</div>
|
316 |
316 |
<div *ngIf="showAllDescription" class="uk-overflow-auto">
|
317 |
317 |
<div class="uk-height-max-medium">{{community.description}}</div>
|
318 |
318 |
</div>
|
319 |
|
<div *ngIf="!showAllDescription && community.description.length > 500 "
|
|
319 |
<div *ngIf="!showAllDescription && community.description.length > thresholdDescription "
|
320 |
320 |
class="uk-animation-fade uk-margin-small-top uk-padding uk-padding-remove-top uk-position-bottom-right">
|
321 |
321 |
<a (click)="showAllDescription = !showAllDescription;">Read more
|
322 |
322 |
</a>
|
... | ... | |
333 |
333 |
class="uk-width-1-3 uk-padding right-column uk-inline">
|
334 |
334 |
<div class="uk-margin-bottom">
|
335 |
335 |
<div class="uk-text-muted">Subjects</div>
|
336 |
|
<span *ngFor="let subject of community.subjects.slice(0,12) let i=index">
|
|
336 |
<span *ngFor="let subject of community.subjects.slice(0,20) let i=index">
|
337 |
337 |
<span *ngIf="subject != ''">
|
338 |
338 |
<a class="portal-link"
|
339 |
339 |
[queryParams]="{f0:'resultsubject',fv0:createParams(subject)}"
|
340 |
340 |
routerLinkActive="router-link-active" [routerLink]="searchLinkToAdvancedResults" >
|
341 |
341 |
<span>{{subject}}</span>
|
342 |
342 |
</a>
|
343 |
|
<span *ngIf="i < community.subjects.length-1 && i != 11">, </span>
|
|
343 |
<span *ngIf="i < community.subjects.length-1 && i != 19">, </span>
|
344 |
344 |
</span>
|
345 |
345 |
</span>
|
346 |
346 |
<div class="uk-margin-top uk-animation-fade uk-padding uk-padding-remove-top uk-position-bottom-right">
|
[Trunk | Connect]:
1. community.component.ts: Add fields 'public thresholdDescription: number = 550;' and 'subscribers: number = 0;' and method 'public countSubscribersEvent($event)'.
2. community.component.html:
a. Move curatos, projects & content providers, zenodo communities inside tab 'Summary'.
b. In tab names add class 'tab-header' and remove 'uk-text-bold'.
c. Cut description according to 'thresholdDescription'.
3. curators.component.html: Add 'uk-inline-block' class in <a>, in order not to break name and surname of a curator into 2 lines.
4. results.component.ts: Add 'view all' link on top right corner too and change class of link to 'uk-button uk-button-text'.
5. subscribe.component.ts: Add output event when getting subscribers number (used by community.component to add margin in needed).