1
|
<aside id="sidebar_main">
|
2
|
<div *ngIf="stakeholder" class="sidebar_main_header">
|
3
|
<div class="uk-padding-small">
|
4
|
<img class="uk-margin-bottom" *ngIf="stakeholder.logoUrl" [src]="stakeholder.logoUrl">
|
5
|
<h4 class="uk-text-bold uk-margin-remove">{{stakeholder.index_name}}</h4>
|
6
|
<span class="uk-text-large">Admin Dashboard</span>
|
7
|
</div>
|
8
|
</div>
|
9
|
<div *ngIf="stakeholder" class="menu_section">
|
10
|
<ul>
|
11
|
<li [class.current_section]="analysisOpen"
|
12
|
[class.act_section]="analysisOpen"
|
13
|
class="submenu_trigger">
|
14
|
<a [routerLink]="" (click)="analysisOpen = !analysisOpen">
|
15
|
<span class="menu_icon"><i class="material-icons">donut_large</i></span>
|
16
|
<span class="menu_title">Analysis Indicators</span>
|
17
|
</a>
|
18
|
<ul [style.display]="(analysisOpen?'block':'none')">
|
19
|
<ng-template ngFor [ngForOf]="stakeholder.topics" let-topic let-i="index">
|
20
|
<li>
|
21
|
<a (click)="navigateTo(topic.alias)">
|
22
|
<span *ngIf="topic.icon" class="menu_icon uk-margin-small-right"><i
|
23
|
class="material-icons">{{topic.icon}}</i></span>
|
24
|
<div class="menu_title uk-inline">
|
25
|
{{topic.name}}
|
26
|
<button class="uk-position-center-right-out uk-margin-right uk-button uk-button-link onHover"
|
27
|
(click)="$event.stopPropagation();saveTopicOpen(editTopic, i)">
|
28
|
<i class="material-icons">more_horiz</i>
|
29
|
</button>
|
30
|
</div>
|
31
|
</a>
|
32
|
<div uk-drop="mode: none; offset: -2; delay-hide: 0;" #editTopic
|
33
|
class="uk-padding-large uk-padding-remove-vertical uk-padding-remove-right uk-drop">
|
34
|
<div *ngIf="copyTopic">
|
35
|
<div class="md-card">
|
36
|
<div class="md-card-content uk-position-relative">
|
37
|
<a class="uk-position-top-right">
|
38
|
<i (click)="hide(editTopic)" class="material-icons">close</i>
|
39
|
</a>
|
40
|
<div class="uk-grid-small" uk-grid>
|
41
|
<div class="uk-width-1-1">
|
42
|
<label class="uk-text-bold">Topic Settings</label>
|
43
|
<input class="uk-input uk-form-small" [(ngModel)]="copyTopic.name"
|
44
|
[class.uk-form-danger]="!valid && (!copyTopic.name || copyTopic.name === '')"
|
45
|
type="text">
|
46
|
</div>
|
47
|
<div class="uk-width-1-1">
|
48
|
<label>Description</label>
|
49
|
<textarea class="uk-textarea" [(ngModel)]="copyTopic.description"
|
50
|
rows="3" type="text"></textarea>
|
51
|
</div>
|
52
|
<div class="uk-width-1-2">
|
53
|
<select class="uk-select uk-form-small" [(ngModel)]="copyTopic.isPublic">
|
54
|
<option [value]="true">Public</option>
|
55
|
<option [value]="false">Private</option>
|
56
|
</select>
|
57
|
</div>
|
58
|
<div class="uk-width-1-2">
|
59
|
<select class="uk-select uk-form-small" [(ngModel)]="copyTopic.isActive">
|
60
|
<option [value]="true">Active</option>
|
61
|
<option [value]="false">Inactive</option>
|
62
|
</select>
|
63
|
</div>
|
64
|
</div>
|
65
|
<hr>
|
66
|
<div class="uk-grid-small uk-child-width-1-2" uk-grid>
|
67
|
<div>
|
68
|
<button class="md-btn md-btn-small" (click)="deleteTopicOpen(editTopic, i)">Delete</button>
|
69
|
</div>
|
70
|
<div>
|
71
|
<button class="md-btn md-btn-small md-btn-primary uk-float-right"
|
72
|
(click)="saveTopic(editTopic, i)">Save
|
73
|
</button>
|
74
|
</div>
|
75
|
</div>
|
76
|
</div>
|
77
|
</div>
|
78
|
</div>
|
79
|
</div>
|
80
|
</li>
|
81
|
</ng-template>
|
82
|
<li>
|
83
|
<a (click)="saveTopicOpen(newTopic)">
|
84
|
<span class="menu_icon"><i class="material-icons">add</i></span>
|
85
|
<span class="menu_title">Create new Topic</span>
|
86
|
</a>
|
87
|
<div uk-drop="mode: none; offset: -2; delay-hide: 0" #newTopic
|
88
|
class="uk-padding-large uk-padding-remove-vertical uk-padding-remove-right uk-drop">
|
89
|
<div *ngIf="copyTopic">
|
90
|
<div class="md-card">
|
91
|
<div class="md-card-content uk-position-relative">
|
92
|
<a class="uk-position-top-right">
|
93
|
<i (click)="hide(newTopic)" class="material-icons">close</i>
|
94
|
</a>
|
95
|
<div class="uk-grid-small" uk-grid>
|
96
|
<div class="uk-width-1-1">
|
97
|
<label class="uk-text-bold">New Topic</label>
|
98
|
<input class="uk-input uk-form-small" [(ngModel)]="copyTopic.name"
|
99
|
[class.uk-form-danger]="!valid && (!copyTopic.name || copyTopic.name === '')"
|
100
|
type="text">
|
101
|
</div>
|
102
|
<div class="uk-width-1-1">
|
103
|
<label>Description</label>
|
104
|
<textarea class="uk-textarea" [(ngModel)]="copyTopic.description"
|
105
|
rows="3" type="text"></textarea>
|
106
|
</div>
|
107
|
<div class="uk-width-1-2">
|
108
|
<select class="uk-select uk-form-small" [(ngModel)]="copyTopic.isPublic">
|
109
|
<option [value]="true">Public</option>
|
110
|
<option [value]="false">Private</option>
|
111
|
</select>
|
112
|
</div>
|
113
|
<div class="uk-width-1-2">
|
114
|
<select class="uk-select uk-form-small" [(ngModel)]="copyTopic.isActive">
|
115
|
<option [value]="true">Active</option>
|
116
|
<option [value]="false">Inactive</option>
|
117
|
</select>
|
118
|
</div>
|
119
|
</div>
|
120
|
<hr>
|
121
|
<div class="uk-grid-small uk-child-width-1-2" uk-grid>
|
122
|
<div>
|
123
|
<button class="md-btn md-btn-small" (click)="hide(newTopic)">Cancel</button>
|
124
|
</div>
|
125
|
<div>
|
126
|
<button class="md-btn md-btn-small md-btn-primary uk-float-right" (click)="saveTopic(newTopic)">
|
127
|
Create
|
128
|
</button>
|
129
|
</div>
|
130
|
</div>
|
131
|
</div>
|
132
|
</div>
|
133
|
</div>
|
134
|
</div>
|
135
|
</li>
|
136
|
</ul>
|
137
|
</li>
|
138
|
</ul>
|
139
|
</div>
|
140
|
</aside>
|
141
|
<div id="page_content" click-outside-or-esc targetId="page_content" (clickOutside)="toggleOpen($event)">
|
142
|
<div id="page_content_inner">
|
143
|
<h4 class="uk-text-bold">
|
144
|
Customise your Monitor Dashboard!
|
145
|
</h4>
|
146
|
<div class="uk-text-large uk-margin-bottom">
|
147
|
<div>
|
148
|
Modify or add new topics, categories and content.<br><br>
|
149
|
Start your navigation through the <span class="md-color-blue-900">left side menu!</span>
|
150
|
</div>
|
151
|
<div class="uk-margin-small-top uk-margin-small-bottom uk-margin-large-left">
|
152
|
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="88" viewBox="0 0 30 88">
|
153
|
<g id="Group_749" data-name="Group 749" transform="translate(-872.168 -490.5)">
|
154
|
<text class="fill_text" id="OR" transform="translate(872.168 540.271)" font-size="18"
|
155
|
font-family="OpenSans-Bold, Open Sans" font-weight="900" opacity="0.8">
|
156
|
<tspan x="0" y="0">OR</tspan>
|
157
|
</text>
|
158
|
<line class="stroke_line" id="Line_225" data-name="Line 225" y2="30" transform="translate(885.5 490.5)"
|
159
|
fill="none" stroke="#000" stroke-width="1" opacity="0.2"/>
|
160
|
<line class="stroke_line" id="Line_226" data-name="Line 226" y2="30" transform="translate(885.5 548.5)"
|
161
|
fill="none" stroke="#000" stroke-width="1" opacity="0.2"/>
|
162
|
</g>
|
163
|
</svg>
|
164
|
</div>
|
165
|
<div class="uk-width-1-1">
|
166
|
Select one of the <span class="md-color-blue-900">topics below</span>!
|
167
|
</div>
|
168
|
</div>
|
169
|
<div *ngIf="stakeholder" class="uk-child-width-1-3@m uk-child-width-1-1@s uk-grid-match uk-grid-medium" uk-grid>
|
170
|
<ng-template ngFor [ngForOf]="stakeholder.topics" let-topic>
|
171
|
<div>
|
172
|
<a [routerLink]="topic.alias" class="md-card">
|
173
|
<div class="md-card-content">
|
174
|
<h6 class="uk-text-bold">{{topic.name}}</h6>
|
175
|
<div class="uk-text-secondary">
|
176
|
{{topic.description}}
|
177
|
</div>
|
178
|
</div>
|
179
|
</a>
|
180
|
</div>
|
181
|
</ng-template>
|
182
|
</div>
|
183
|
</div>
|
184
|
</div>
|
185
|
<modal-alert #deleteTopicModal (alertOutput)="deleteTopic()"></modal-alert>
|