Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<h3>Sessions for {{ selectedEvent.event_name }}</h3>
} @else if (vmDashboardActive && rbacSuccessVms) {
<h3>VMs for {{ selectedEvent.event_name }}</h3>
} @else if (usersDashboardActive && rbacSuccessVms) {
} @else if (usersDashboardActive && rbacSuccessUsers) {
<h3>Users participating in {{ selectedEvent.event_name }}</h3>
} @else if (statisticsDashboardActive && rbacSuccessSessions) {
<h3>Statistics for {{ selectedEvent.event_name }}</h3>
Expand Down Expand Up @@ -52,7 +52,7 @@ <h3>Costs for {{ selectedEvent.event_name }}</h3>
</ng-template>
</clr-tab>
}
@if (rbacSuccessSessions) {
@if (rbacSuccessUsers) {
<clr-tab>
<button clrTabLink>Users</button>
<ng-template [(clrIfActive)]="usersDashboardActive">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ export class DashboardDetailsComponent implements OnInit, OnDestroy {

public rbacSuccessSessions: boolean = false;
public rbacSuccessVms: boolean = false;
public rbacSuccessUsers: boolean = false;

private eventId: string;
private eventSubscription: Subscription;
Expand Down Expand Up @@ -72,6 +73,22 @@ export class DashboardDetailsComponent implements OnInit, OnDestroy {
).then((rbacCheck: boolean) => {
this.rbacSuccessVms = rbacCheck;
});

this.setRbacCheck(
[
'scheduledevents',
'sessions',
'progresses',
'users',
'courses',
'scenarios',
'quizes',
'quizevaluations',
],
['list', 'get'],
).then((rbacCheck: boolean) => {
this.rbacSuccessUsers = rbacCheck;
});
}

/**
Expand Down
45 changes: 45 additions & 0 deletions src/app/dashboards/users-dashboard/users-dashboard.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@
<clr-dg-column [clrDgSortBy]="'uniqueScenarios'"
>Unique Scenarios</clr-dg-column
>
<clr-dg-column>Quiz Names</clr-dg-column>
<clr-dg-column>Score (%)</clr-dg-column>
<clr-dg-column [clrDgSortBy]="'passedQuizzes'">Quiz Results</clr-dg-column>
<clr-dg-column [clrDgField]="'status'">Status</clr-dg-column>

<clr-dg-row *clrDgItems="let user of dashboardUsers">
Expand All @@ -34,6 +37,48 @@
{{ user.progresses?.length ?? 0 }}
</clr-dg-cell>
<clr-dg-cell>{{ user.uniqueScenarios }}</clr-dg-cell>
<clr-dg-cell>
@for (result of user.quizResults; track result.key) {
<span
class="label"
title="{{ result.title }} in {{ result.scenarioName }}"
>{{ result.title }}</span
>
} @empty {
-
}
</clr-dg-cell>
<clr-dg-cell>
@for (result of user.quizResults; track result.key) {
<span
class="label"
title="{{ result.title }} in {{ result.scenarioName }}"
>
@if (result.score === undefined) {
-
} @else {
{{ result.score }}/100
}
</span>
} @empty {
-
}
</clr-dg-cell>
<clr-dg-cell>
@if (user.quizResultStatus === 'not-applicable') {
-
} @else if (user.quizResultStatus === 'not-started') {
<span class="badge badge-gray">NOT STARTED</span>
} @else if (user.quizResultStatus === 'failed') {
<span class="badge badge-danger">NO PASS</span>
} @else if (user.quizResultStatus === 'passed') {
<span class="badge badge-success">PASS</span>
} @else {
<span class="badge badge-info">
{{ user.passedQuizzes }}/{{ user.totalQuizzes }}
</span>
}
</clr-dg-cell>
<clr-dg-cell>
@if (user.status === 'completed') {
<span class="badge badge-success">COMPLETED</span>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
.badge {
padding: 10px;
}

.label {
margin-right: 0.25rem;
}
Loading
Loading