2017-11-13 13:49:47 +01:00
|
|
|
<div *ngIf="war" class="war-header fade-in" xmlns="http://www.w3.org/1999/html">
|
|
|
|
<div class="war-header-container">
|
|
|
|
<div class="pull-left head-field" style="width: 250px">
|
2018-10-03 11:22:21 +02:00
|
|
|
<h4>{{'stats.scoreboard.standings' | translate}}</h4>
|
2017-11-13 13:49:47 +01:00
|
|
|
<span [style.color]="fraction.COLOR_BLUFOR" style="font-weight: bold; margin-right: 10px">{{fraction.BLUFOR}} {{war.ptBlufor}}</span>
|
|
|
|
<span style="font-size: x-large">|</span>
|
|
|
|
<span [style.color]="fraction.COLOR_OPFOR" style="font-weight: bold; margin-left: 10px;">{{war.ptOpfor}} {{fraction.OPFOR}}</span>
|
|
|
|
</div>
|
|
|
|
|
2017-11-19 13:20:57 +01:00
|
|
|
<div class="pull-left head-field " style="padding-left: 100px;">
|
2018-10-03 11:22:21 +02:00
|
|
|
<h4 class="pull-left" style="margin-bottom: 0;">{{'stats.scoreboard.participants' | translate}}</h4>
|
2017-11-13 13:49:47 +01:00
|
|
|
<ngx-charts-pie-chart
|
2017-11-19 13:20:57 +01:00
|
|
|
class="pull-left"
|
2017-11-13 13:49:47 +01:00
|
|
|
[view]="[120, 120]"
|
|
|
|
[scheme]="colorScheme"
|
|
|
|
[results]="playerChart"
|
|
|
|
[legend]="false"
|
|
|
|
[explodeSlices]="false"
|
|
|
|
[labels]="false"
|
|
|
|
[doughnut]="false"
|
|
|
|
[gradient]="false">
|
|
|
|
</ngx-charts-pie-chart>
|
|
|
|
</div>
|
|
|
|
|
2017-11-19 13:20:57 +01:00
|
|
|
<div class="pull-left " style="padding-left: 100px; padding-top:15px">
|
2018-04-02 11:20:04 +02:00
|
|
|
<a class="btn btn-default" style="margin: 20px" target="_blank" href="resource/logs/{{war._id}}/clean.log">
|
2018-10-03 11:22:21 +02:00
|
|
|
{{'stats.scoreboard.show.logs' | translate}}
|
2018-04-02 11:20:04 +02:00
|
|
|
</a>
|
2017-11-13 13:49:47 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2018-02-26 08:36:46 +01:00
|
|
|
<ul class="nav nav-tabs">
|
2017-11-13 13:49:47 +01:00
|
|
|
<li class="nav-item" [ngClass]="{active :tab === 0}" (click)="switchTab(0)">
|
2019-02-04 12:36:18 +01:00
|
|
|
<a class="nav-link">
|
|
|
|
<mat-icon svgIcon="stats-scoreboard"></mat-icon>
|
2018-10-03 11:22:21 +02:00
|
|
|
{{'stats.scoreboard.tab.scoreboard' | translate}}
|
|
|
|
</a>
|
2017-11-13 13:49:47 +01:00
|
|
|
</li>
|
|
|
|
<li class="nav-item" [ngClass]="{active :tab === 1}" (click)="switchTab(1)">
|
2019-02-04 12:36:18 +01:00
|
|
|
<a class="nav-link">
|
2019-02-04 12:48:47 +01:00
|
|
|
<mat-icon svgIcon="stats-fraction" style="stroke:#666666"></mat-icon>
|
2018-10-03 11:22:21 +02:00
|
|
|
{{'stats.scoreboard.tab.fractions' | translate}}
|
|
|
|
</a>
|
2017-11-13 13:49:47 +01:00
|
|
|
</li>
|
2017-11-13 14:00:59 +01:00
|
|
|
<li class="nav-item" [ngClass]="{active :tab === 2, deactivated :tab !== 2} ">
|
2019-02-04 12:36:18 +01:00
|
|
|
<a class="nav-link">
|
|
|
|
<mat-icon svgIcon="stats-player"></mat-icon>
|
2018-10-03 11:22:21 +02:00
|
|
|
{{'stats.scoreboard.tab.player' | translate}}
|
|
|
|
</a>
|
2017-11-13 14:00:59 +01:00
|
|
|
</li>
|
2019-02-10 00:54:25 +01:00
|
|
|
<li class="nav-item" [ngClass]="{active :tab === 3}" (click)="switchTab(3)"
|
|
|
|
*ngIf="war && war.players && war.players[0] && war.players[0].performance">
|
|
|
|
<a class="nav-link">
|
2019-02-07 21:05:58 +01:00
|
|
|
<mat-icon svgIcon="stats-performance" class="mat-icon-stats-performance"></mat-icon>
|
|
|
|
{{'stats.scoreboard.tab.performance' | translate}}
|
|
|
|
</a>
|
|
|
|
</li>
|
2018-04-02 11:20:04 +02:00
|
|
|
<li>
|
|
|
|
<div *ngIf="tab === 0">
|
|
|
|
<form class="pull-left tab-control">
|
|
|
|
<label class="radio-inline">
|
|
|
|
<input type="radio" name="fractSelect"
|
|
|
|
[checked]="(fractionFilterSelected == undefined) ? 'true' : 'false'"
|
|
|
|
[(ngModel)]="fractionFilterSelected"
|
2018-10-03 11:22:21 +02:00
|
|
|
(change)="filterPlayersByFraction()">
|
|
|
|
{{'stats.scoreboard.fraction.filter.all' | translate}}
|
2018-04-02 11:20:04 +02:00
|
|
|
</label>
|
|
|
|
<label class="radio-inline">
|
|
|
|
<input type="radio" name="fractSelect" value="BLUFOR"
|
|
|
|
[(ngModel)]="fractionFilterSelected"
|
|
|
|
#fractRadioBufor
|
2018-10-03 11:22:21 +02:00
|
|
|
(change)="filterPlayersByFraction(fractRadioBufor.value)">
|
|
|
|
{{fraction.BLUFOR}}
|
2018-04-02 11:20:04 +02:00
|
|
|
</label>
|
|
|
|
<label class="radio-inline">
|
|
|
|
<input type="radio" name="fractSelect" value="OPFOR"
|
|
|
|
[(ngModel)]="fractionFilterSelected"
|
|
|
|
#fractRadioOpfor
|
2018-10-03 11:22:21 +02:00
|
|
|
(change)="filterPlayersByFraction(fractRadioOpfor.value)">
|
|
|
|
{{fraction.OPFOR}}
|
2018-04-02 11:20:04 +02:00
|
|
|
</label>
|
|
|
|
</form>
|
2018-04-02 13:20:44 +02:00
|
|
|
<span class="btn btn-default pull-left tab-control" (click)="scoreBoardComponent.exportCSV()">
|
2018-10-03 11:22:21 +02:00
|
|
|
{{'stats.scoreboard.download.csv' | translate}}
|
2018-04-02 11:20:04 +02:00
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</li>
|
2017-11-13 13:49:47 +01:00
|
|
|
</ul>
|
|
|
|
|
|
|
|
<!--Sub-Components (=TABS)-->
|
|
|
|
<div *ngIf="war">
|
2018-03-08 10:17:10 +01:00
|
|
|
<cc-scoreboard
|
2017-11-13 13:49:47 +01:00
|
|
|
*ngIf="tab === 0"
|
2018-04-02 13:20:44 +02:00
|
|
|
#scoreboard
|
2017-11-13 13:49:47 +01:00
|
|
|
[war]="war"
|
2017-11-13 15:45:12 +01:00
|
|
|
[fractionFilterSelected]="fractionFilterSelected"
|
|
|
|
(playerTabSwitch)="switchToPlayerTab($event)">
|
2018-03-08 10:17:10 +01:00
|
|
|
</cc-scoreboard>
|
2017-11-13 13:49:47 +01:00
|
|
|
<war-detail-fraction
|
|
|
|
*ngIf="tab === 1 && logData"
|
|
|
|
[war]="war"
|
|
|
|
[logData]="logData">
|
|
|
|
</war-detail-fraction>
|
2017-11-13 15:45:12 +01:00
|
|
|
<campaign-player-detail
|
|
|
|
*ngIf="tab === 2 && singlePlayerView === 1"
|
|
|
|
[campaignId]="war.campaign"
|
|
|
|
[playerName]="playerDetailName"
|
|
|
|
(switchTab)="switchTab($event)">
|
|
|
|
</campaign-player-detail>
|
2019-02-07 21:05:58 +01:00
|
|
|
<cc-server-statistics
|
|
|
|
*ngIf="tab === 3"
|
|
|
|
[war]="war"
|
2019-02-09 21:55:13 +01:00
|
|
|
[performanceData]="performanceData">
|
2019-02-07 21:05:58 +01:00
|
|
|
</cc-server-statistics>
|
2017-11-13 13:49:47 +01:00
|
|
|
</div>
|
|
|
|
|
2017-07-08 21:56:11 +02:00
|
|
|
</div>
|