Project

General

Profile

1
<div page-content>
2
  <div header>
3
    <community-info tab="projects"></community-info>
4
    <div [class.uk-invisible]="showLoading"
5
         class="uk-width-1-1 uk-flex uk-flex-right@m uk-flex-center uk-flex-wrap uk-flex-middle uk-grid" uk-grid>
6
      <div class="uk-flex-last@m">
7
        <a class="uk-text-uppercase uk-flex uk-flex-middle" (click)="addNew()"
8
           [attr.uk-tooltip]="(toggle? 'cls: uk-invisible; ' : 'cls: uk-active; ') +
9
                'title: <div class=\'uk-padding-small\'><div class=\'uk-margin-bottom uk-text-bold\'> Search and add more Projects</div><div>The research results linked to the projects specified here will be automatically linked to your community dashboard.</div></div>'">
10
          <button class="uk-icon-button large uk-button-secondary">
11
            <icon name="add"></icon>
12
          </button>
13
          <button class="uk-button uk-button-link uk-margin-small-left uk-text-secondary">Add new project</button>
14
        </a>
15
      </div>
16
      <div #searchInputComponent search-input [control]="filterForm.controls.keyword" [showSearch]="false"
17
           placeholder="Search Projects"
18
           [selected]="communitySearchUtils.keyword" (closeEmitter)="onSearchClose()" (resetEmitter)="resetInput()"
19
           [bordered]="true" colorClass="uk-text-secondary"
20
           class="uk-width-1-3@xl uk-width-2-5@l uk-width-1-2@m uk-width-1-1"></div>
21
    </div>
22
  </div>
23
  <div inner>
24
    <div *ngIf="showLoading" class="uk-margin-large-top">
25
      <loading></loading>
26
    </div>
27

    
28
    <div *ngIf="!showLoading">
29
      <div>
30
        <div class="uk-grid uk-flex uk-flex-middle uk-margin-medium-bottom" uk-grid>
31
          <div *ngIf="allOptions.length > 0"
32
               class="uk-grid uk-flex-middle uk-flex-left@m uk-flex-center uk-width-1-3@xl uk-width-2-5@l uk-width-1-2@m uk-width-1-1 uk-first-column">
33
            <span class="">Filter by: </span>
34
            <div class="uk-width-expand uk-padding-remove uk-margin-small-left" dashboard-input
35
                 [formInput]="filterForm.get('funder')"
36
                 placeholder="Search by funders"
37
                 type="chips" [options]="allOptions" chipLabel="label">
38
            </div>
39
          </div>
40
          <div *ngIf="previewCommunityProjects.length > 0"
41
               class="uk-width-expand@m uk-width-1-1">
42
            <div class="uk-flex-middle uk-flex-right@m uk-flex-center uk-grid">
43
              <span class="">Sort by: </span>
44
              <div class="uk-width-medium uk-padding-remove uk-margin-small-left" dashboard-input
45
                   [formInput]="filterForm.get('sort')"
46
                   type="select"
47
                   [options]="sortOptions">
48
              </div>
49
            </div>
50
          </div>
51
        </div>
52
        <no-load-paging *ngIf="previewCommunityProjects.length > 0" [type]="'projects'"
53
                        (pageChange)="updatePage($event)"
54
                        [page]="page" [pageSize]="resultsPerPage"
55
                        [totalResults]="previewCommunityProjects.length">
56
        </no-load-paging>
57
        <div class="uk-margin-medium-top uk-margin-medium-bottom">
58
          <div *ngIf="previewCommunityProjects.length == 0"
59
               class="uk-card uk-card-default uk-padding-large uk-text-center uk-margin-bottom uk-text-bold">
60
            <div>No projects for {{name}}</div>
61
          </div>
62
          <div class="uk-card uk-card-default uk-text-small uk-margin-bottom"
63
               *ngFor="let item of previewCommunityProjects.slice((page - 1)*resultsPerPage, page*resultsPerPage)">
64
            <div class="uk-grid uk-grid-divider uk-padding" uk-grid>
65
              <div class="uk-width-expand@m uk-width-1-1">
66
                <div class="uk-padding-small uk-padding-remove-horizontal">
67
                  <h6 class="uk-margin-small-bottom">
68
                    <a *ngIf="item.openaireId || (item.grantId && item.funder)"
69
                       target="_blank"
70
                       [href]="projectUrl+'?' + ((item.openaireId) ? 'projectId='+item.openaireId : 'grantId='+item.grantId+'&funder='+item.funder)">
71
                      <span *ngIf="item.name">{{item.name}}</span>
72
                      <span *ngIf="item.name && item.acronym"> (</span><span *ngIf="item.acronym">{{item.acronym}}</span><span *ngIf="item.name && item.acronym">)</span>
73
                      <span *ngIf="!item.name && !item.acronym">[no title available]</span>
74
                      <span class="custom-external custom-icon space"></span>
75
                    </a>
76
                    <span *ngIf="!item.openaireId && !(item.grantId && item.funder)">
77
                      <span *ngIf="item.name">{{item.name}}</span>
78
                      <span *ngIf="item.name && item.acronym"> (</span><span *ngIf="item.acronym">{{item.acronym}}</span><span *ngIf="item.name && item.acronym">)</span>
79
                      <span *ngIf="!item.name && !item.acronym">[no title available]</span>
80
                    </span>
81
                  </h6>
82
                  <div *ngIf="item.grantId" class="uk-margin-small-bottom">
83
                    <span class="title">Grant ID: </span>
84
                    <span>{{item.grantId}}</span>
85
                  </div>
86
                  <div *ngIf="item.funder" class="uk-margin-small-bottom">
87
                    <span class="title">Funder: </span>
88
                    <span>{{item.funder}}</span>
89
                  </div>
90
                </div>
91
              </div>
92
              <div class="uk-width-auto@m uk-width-1-1">
93
                <div class="uk-flex uk-flex-middle uk-flex-center uk-height-1-1">
94
                  <div class="uk-padding-small uk-padding-remove-horizontal">
95

    
96
                    <a (click)="removeProject(item)" class="uk-button action uk-flex uk-flex-middle">
97
                      <icon name="remove_circle_outline"></icon>
98
                      <span class="uk-margin-small-left">Remove project</span>
99
                    </a>
100
                  </div>
101
                </div>
102
              </div>
103
            </div>
104
          </div>
105
        </div>
106
        <no-load-paging *ngIf="previewCommunityProjects.length > 0" [type]="'projects'"
107
                        (pageChange)="updatePage($event)"
108
                        [page]="page" [pageSize]="resultsPerPage"
109
                        [totalResults]="previewCommunityProjects.length">
110
        </no-load-paging>
111
      </div>
112
    </div>
113

    
114
    <modal-alert #AlertModalDeleteCommunity (alertOutput)="confirmedDeleteProject($event)"></modal-alert>
115
  </div>
116
</div>
(5-5/6)