< Summary

Class:MUNity.BlazorServer.Pages.Conference.ConferenceDashboardPage
Assembly:MUNity.BlazorServer
File(s):C:\Users\aeuke\source\repos\PeerConradi\munity\src\MUNity.BlazorServer\Pages\Conference\ConferenceDashboardPage.razor
Covered lines:0
Uncovered lines:17
Coverable lines:17
Total lines:109
Line coverage:0% (0 of 17)
Covered branches:0
Total branches:4
Branch coverage:0% (0 of 4)
Covered methods:0
Total methods:4
Method coverage:0% (0 of 4)

Metrics

MethodBranch coverage Cyclomatic complexity Line coverage
BuildRenderTree(...)0%20%
get_Id()100%10%
get_AuthStateTask()100%10%
OnInitializedAsync()0%20%

File(s)

C:\Users\aeuke\source\repos\PeerConradi\munity\src\MUNity.BlazorServer\Pages\Conference\ConferenceDashboardPage.razor

#LineLine coverage
 1@using MUNity.BlazorServer.Components.Conference.Dashboard
 2
 3@page "/c/dashboard/{Id}"
 4
 5@inject Services.UserConferenceAuthService conferenceAuthService
 6@inject MunityContext dbContext
 7
 08@if (isTeamMember)
 09{
 10    <!-- Title -->
 11    <h1 class="page-header">
 012        @dbContext.Conferences.Where(n => n.ConferenceId == Id).Select(n => n.ConferenceShort).FirstOrDefault()
 013        <small>@dbContext.Conferences.Where(n => n.ConferenceId == Id).Select(n => n.Name).FirstOrDefault()</small>
 14    </h1>
 15
 16    <div class="row">
 17        <!-- BEGIN col-3 -->
 18        <div class="col-xl-3 col-md-6">
 19            <div class="widget widget-stats bg-blue">
 20                <div class="stats-icon"><i class="fa fa-desktop"></i></div>
 21                <div class="stats-info">
 22                    <h4>Gremien</h4>
 023                    <p>@dbContext.Committees.Count(n => n.Conference.ConferenceId == Id) </p>
 24                </div>
 25                <div class="stats-link">
 26                    <a href="/c/managecommittees/@Id">Gremien und Themen bearbeiten <i class="fa fa-arrow-alt-circle-rig
 27                </div>
 28            </div>
 29        </div>
 30        <!-- END col-3 -->
 31        <!-- BEGIN col-3 -->
 32        <div class="col-xl-3 col-md-6">
 33            <div class="widget widget-stats bg-info">
 34                <div class="stats-icon"><i class="fa fa-link"></i></div>
 35                <div class="stats-info">
 36                    <h4>Rollen</h4>
 037                    <p>@dbContext.Conferences.Where(n => n.ConferenceId == Id).Select(n => n.Roles.Count).FirstOrDefault
 38                </div>
 39                <div class="stats-link">
 40                    <a href="javascript:;">Rollen bearbeiten <i class="fa fa-arrow-alt-circle-right"></i></a>
 41                </div>
 42            </div>
 43        </div>
 44        <!-- END col-3 -->
 45        <!-- BEGIN col-3 -->
 46        <div class="col-xl-3 col-md-6">
 47            <div class="widget widget-stats bg-orange">
 48                <div class="stats-icon"><i class="fa fa-users"></i></div>
 49                <div class="stats-info">
 50                    <h4>Delegationen</h4>
 051                    <p>@dbContext.Delegations.Count(n => n.Conference.ConferenceId == Id) </p>
 52                </div>
 53                <div class="stats-link">
 54                    <a href="/c/managedelegations/@Id">Delegationen bearbeiten <i class="fa fa-arrow-alt-circle-right"><
 55                </div>
 56            </div>
 57        </div>
 58        <!-- END col-3 -->
 59        <!-- BEGIN col-3 -->
 60        <div class="col-xl-3 col-md-6">
 61            <div class="widget widget-stats bg-red">
 62                <div class="stats-icon"><i class="fa fa-clock"></i></div>
 63                <div class="stats-info">
 64                    <h4>TODO</h4>
 65                    <p>00:12:23</p>
 66                </div>
 67                <div class="stats-link">
 68                    <a href="javascript:;">View Detail <i class="fa fa-arrow-alt-circle-right"></i></a>
 69                </div>
 70            </div>
 71        </div>
 72        <!-- END col-3 -->
 73
 74        <div class="col-xl-4 col-lg-6">
 75            <TeamCardComponent ConferenceId=@this.Id />
 76        </div>
 77
 78        <div class="col-3">
 79            <RepresentedCountriesComponent ConferenceId=@this.Id />
 80        </div>
 81    </div>
 82
 83    <div class="d-flex flex-wrap">
 84        <a class="btn btn-primary me-1 mb-1" href="/c/manageroles/@Id">Teilnehmenden-Rollen bearbeiten</a>
 85        <a class="btn btn-primary me-1 mb-1" href="/c/manageapplications/@Id">Bewerbungen/Anmeldungen</a>
 86        <a class="btn btn-primary me-1 mb-1" href="/c/managewebsite/@Id">Website bearbeiten</a>
 87    </div>
 088}
 89else
 090{
 91    <p>Zugriff verweigert!</p>
 092}
 93
 94
 95
 96@code {
 097    [Parameter] public string Id { get; set; }
 98
 099    [CascadingParameter] public Task<AuthenticationState> AuthStateTask { get; set; }
 100
 101    private bool isTeamMember;
 102
 103    protected override async Task OnInitializedAsync()
 0104    {
 0105        await base.OnInitializedAsync();
 0106        var claim = (await AuthStateTask)?.User;
 0107        this.isTeamMember = await conferenceAuthService.IsUserTeamMember(Id, claim);
 0108    }
 109}