1
|
<!--disable_transitions -->
|
2
|
<div class="double-header stakeholderPage">
|
3
|
<div class="">
|
4
|
<div id="header_menu" class="uk-width-1-1">
|
5
|
<nav class="uk-navbar">
|
6
|
|
7
|
<div class="uk-navbar-left">
|
8
|
<img class="badge "
|
9
|
src="assets/theme-assets/prototype_flag.svg"
|
10
|
alt="BETA">
|
11
|
<a *ngIf="stakeholder"
|
12
|
class="uk-logo uk-navbar-item ng-star-inserted uk-link uk-margin-small-top uk-margin-medium-left"
|
13
|
routerlink="/"
|
14
|
routerlinkactive="uk-link">
|
15
|
<img *ngIf="stakeholder.logoUrl" [src]="stakeholder.logoUrl" class="uk-responsive-height">
|
16
|
<div *ngIf="!stakeholder.logoUrl">
|
17
|
{{stakeholder.index_name}}
|
18
|
</div>
|
19
|
</a>
|
20
|
<div class="uk-margin-large-left uk-width-medium ng-star-inserted">
|
21
|
<div class="">
|
22
|
<!-- <div dashboard-input label="Search for..." [formInput]="keyword"></div>-->
|
23
|
</div>
|
24
|
</div>
|
25
|
</div>
|
26
|
|
27
|
<div *ngIf="stakeholder && status === errorCodes.DONE && activeTopic" class="uk-navbar-right uk-margin-right">
|
28
|
<ul class="uk-navbar-nav user_actions uk-padding uk-padding-remove-vertical">
|
29
|
<li>
|
30
|
<user-mini *ngIf="properties"
|
31
|
[user]="user" [dashboard]="true"
|
32
|
[logInUrl]=properties.loginUrl [logOutUrl]=properties.logoutUrl
|
33
|
[cookieDomain]=properties.cookieDomain
|
34
|
[userMenuItems]=userMenuItems>
|
35
|
</user-mini>
|
36
|
</li>
|
37
|
</ul>
|
38
|
</div>
|
39
|
</nav>
|
40
|
</div>
|
41
|
</div>
|
42
|
<div class="sidebar_main_swipe header_full" [class.sidebar_main_active]="open">
|
43
|
<div id="header_main">
|
44
|
<nav class="uk-light uk-navbar">
|
45
|
<!--<div class="main_logo_top">
|
46
|
<div *ngIf="stakeholder && stakeholder.index_name" class=" uk-margin-small-top">
|
47
|
<div class="uk-text-bold uk-h4 uk-margin-remove-bottom">{{stakeholder.index_name}}</div>
|
48
|
<div class="uk-h5 uk-margin-remove">Monitor Dashboard</div>
|
49
|
</div>
|
50
|
</div>-->
|
51
|
<div *ngIf="stakeholder && status === errorCodes.DONE && activeTopic" class="uk-navbar-center">
|
52
|
<ul class="uk-navbar-nav">
|
53
|
<ng-template ngFor [ngForOf]="stakeholder.topics" let-topic let-i="index">
|
54
|
<li *ngIf="topic.isPublic && topic.isActive"
|
55
|
[ngClass]="(topic.alias === activeTopic.alias)?'uk-active':''">
|
56
|
<a (click)="navigateTo(stakeholder.alias, topic.alias)" class="uk-margin-remove-bottom uk-h4"
|
57
|
><span>{{topic.name}}</span></a>
|
58
|
</li>
|
59
|
</ng-template>
|
60
|
</ul>
|
61
|
</div>
|
62
|
</nav>
|
63
|
</div>
|
64
|
<dashboard-sidebar *ngIf="sideBarItems.length > 0 && stakeholder" [items]="sideBarItems"
|
65
|
[activeItem]="activeCategory?activeCategory.alias:null"
|
66
|
[activeSubItem]="activeSubCategory?activeSubCategory.alias:null" [showHeader]=false
|
67
|
></dashboard-sidebar>
|
68
|
<div *ngIf="activeSubCategory"
|
69
|
id="page_content">
|
70
|
<div id="page_content_inner">
|
71
|
<!-- <div>
|
72
|
Filters
|
73
|
<input class="uk-input uk-form-width-medium" placeholder="Funding Stream" type="text" name="fund_level_0"
|
74
|
[(ngModel)]="fundingL0">
|
75
|
|
76
|
<input class="uk-input uk-form-width-medium" placeholder="Start year" type="text" name="start_year"
|
77
|
[(ngModel)]="startYear">
|
78
|
<input class="uk-input uk-form-width-medium" placeholder="End year" type="text" name="end_year"
|
79
|
[(ngModel)]="endYear">
|
80
|
<button class="uk-button uk-button-primary" (click)="setIndicators()">Apply</button>
|
81
|
</div>-->
|
82
|
<div *ngIf="activeSubCategory.numbers.length == 0 && activeSubCategory.charts.length == 0">
|
83
|
<div class="">
|
84
|
<div class="uk-h3">
|
85
|
No indicators available yet. Stay tuned!
|
86
|
</div>
|
87
|
</div>
|
88
|
</div>
|
89
|
<div *ngIf="activeSubCategory" class="uk-grid uk-grid-medium uk-margin-bottom uk-margin-top"
|
90
|
uk-height-match="target: div.md-card">
|
91
|
<ng-template ngFor [ngForOf]="activeSubCategory.numbers" let-number let-i="index">
|
92
|
<h4 class="uk-width-1-1">{{number.title}}</h4>
|
93
|
<ng-template ngFor [ngForOf]="number.indicators" let-indicator let-j="index">
|
94
|
<div *ngIf="indicator.isActive && indicator.isPublic"
|
95
|
[class.uk-width-1-3@m]="indicator.width === 'small'"
|
96
|
[class.uk-width-1-2@m]="indicator.width === 'medium'"
|
97
|
[class.uk-width-1-1]="indicator.width === 'large'">
|
98
|
<div class="md-card" [attr.uk-tooltip]="indicator.description">
|
99
|
<div class="md-card-content">
|
100
|
<span class="uk-text-muted uk-margin-bottom uk-h5">{{indicator.name}}</span>
|
101
|
<h2 *ngIf="numberResults.get(i + '-' + j)" class="uk-margin-remove">
|
102
|
<span>{{numberResults.get(i + '-' + j) | number}}</span>
|
103
|
</h2>
|
104
|
</div>
|
105
|
</div>
|
106
|
</div>
|
107
|
</ng-template>
|
108
|
</ng-template>
|
109
|
</div>
|
110
|
<div
|
111
|
*ngIf="(activeSubCategory && (activeSubCategory.charts.length == 0 ||
|
112
|
(activeSubCategory.charts.length == 1 && activeSubCategory.charts[0].indicators.length == 0)))
|
113
|
&& ((activeSubCategory &&
|
114
|
activeSubCategory.description &&
|
115
|
activeSubCategory.description.length > 0) ||
|
116
|
(activeCategory && activeCategory.description && activeCategory.description.length > 0) ||
|
117
|
(activeTopic && activeTopic.description && activeTopic.description.length > 0))"
|
118
|
class="">
|
119
|
<div class="">
|
120
|
<div class="uk-h5">
|
121
|
{{activeSubCategory.description && activeSubCategory.description.length > 0 ? activeSubCategory.description
|
122
|
: (activeCategory.description && activeCategory.description.length > 0 ? activeCategory.description :
|
123
|
(activeTopic.description && activeTopic.description.length > 0 ? activeTopic.description : ""))}}
|
124
|
</div>
|
125
|
</div>
|
126
|
</div>
|
127
|
<div *ngIf="activeSubCategory"
|
128
|
>
|
129
|
<div *ngFor="let chart of activeSubCategory.charts; let i = index;" class="uk-grid uk-grid-medium uk-margin-bottom uk-flex uk-flex-bottom "
|
130
|
uk-height-match="target: div > div > .chartTitle">
|
131
|
|
132
|
<h3 *ngIf="chart.title && chart.title.length > 0" class="uk-width-1-1 uk-margin-top">{{chart.title}}</h3>
|
133
|
<ng-template ngFor [ngForOf]="chart.indicators" let-indicator let-j="index">
|
134
|
<div *ngIf="indicator.isActive && indicator.isPublic && chartsActiveType.get(i + '-' + j)"
|
135
|
[class.uk-width-1-3@m]="indicator.width === 'small'"
|
136
|
[class.uk-width-1-2@m]="indicator.width === 'medium'"
|
137
|
[class.uk-width-1-1]="indicator.width === 'large'">
|
138
|
<div class="indicatorBox">
|
139
|
<h4 class="uk-margin-bottom chartTitle uk-flex uk-flex-bottom ">
|
140
|
<div>{{indicator.name + " "}}</div>
|
141
|
</h4>
|
142
|
<div class="md-card" [attr.uk-tooltip]="indicator.description">
|
143
|
<div class="md-card-content uk-text-center">
|
144
|
<div *ngIf="indicator.indicatorPaths.length > 1" class="uk-button-group">
|
145
|
<button *ngFor="let indicatorPath of indicator.indicatorPaths;"
|
146
|
class="uk-button"
|
147
|
(click)="setActiveChart(i, j, indicatorPath.type)"
|
148
|
[class.uk-button-secondary]="chartsActiveType.get(i + '-' + j).url === indicatorPath.url">
|
149
|
{{indicatorPath.type}}
|
150
|
</button>
|
151
|
</div>
|
152
|
<iframe *ngIf="chartsActiveType.get(i + '-' + j).source !== 'image'"
|
153
|
[src]="chartsActiveType.get(i + '-' + j).safeResourceUrl"
|
154
|
class="uk-width-1-1 uk-height-medium"></iframe>
|
155
|
<!-- {{chartsActiveType.get(i).safeResourceUrl}}-->
|
156
|
<!-- <a [href]="chartsActiveType.get(i).safeResourceUrl" target="_blank" > ChartuURL</a>-->
|
157
|
<img *ngIf="chartsActiveType.get(i + '-' + j).source === 'image'"
|
158
|
[src]="chartsActiveType.get(i + '-' + j).safeResourceUrl"
|
159
|
class="uk-width-1-1 uk-height-medium">
|
160
|
</div>
|
161
|
</div>
|
162
|
</div>
|
163
|
</div>
|
164
|
</ng-template>
|
165
|
</div>
|
166
|
</div>
|
167
|
</div>
|
168
|
</div>
|
169
|
</div>
|
170
|
<a *ngIf="stakeholder && isAdmin()" id="style_switcher" class="" routerLinkActive="active"
|
171
|
[routerLink]="['/admin', this.stakeholder.alias]">
|
172
|
<div id="style_switcher_toggle"><i class="material-icons">settings</i></div>
|
173
|
</a>
|
174
|
</div>
|
175
|
|
176
|
|