Improve performance tab hiding (CC-80); Fix scoreboard table mis-alignment (CC-33)

pull/51/head
HardiReady 2019-02-10 18:37:15 +01:00
parent b3c68f72ba
commit 1d91f8efba
5 changed files with 18 additions and 11 deletions

View File

@ -27,7 +27,7 @@
} }
.mat-column-kill, .mat-column-friendlyFire, .mat-column-revive, .mat-column-flagTouch, .mat-column-vehicleLight, .mat-column-kill, .mat-column-friendlyFire, .mat-column-revive, .mat-column-flagTouch, .mat-column-vehicleLight,
.mat-column-vehicleHeavy, .mat-column-vehicleAir, .mat-column-travelDistance, .mat-column-pilotDistance, .mat-column-vehicleHeavy, .mat-column-vehicleAir, .mat-column-travelDistance, .mat-column-driverDistance,
.mat-column-death, .mat-column-respawn, .mat-column-interact { .mat-column-death, .mat-column-respawn, .mat-column-interact {
flex: 0 0 62px; flex: 0 0 62px;
} }

View File

@ -53,9 +53,9 @@ export class ScoreboardComponent implements OnChanges {
ngOnChanges(changes: SimpleChanges) { ngOnChanges(changes: SimpleChanges) {
if (changes.war) { if (changes.war) {
this.war.players.forEach(player => { this.war.players.forEach(player => {
// meters to kilometer or fill with null, since optional // meters to kilometer or fill with null, since optional
player.travelDistance = player.travelDistance ? Math.round(player.travelDistance /1000) : 0; player.travelDistance = player.travelDistance ? Math.round(player.travelDistance / 1000) : 0;
player.driverDistance = player.driverDistance ? Math.round(player.driverDistance /1000) : 0; player.driverDistance = player.driverDistance ? Math.round(player.driverDistance / 1000) : 0;
}); });
this.rows = changes.war.currentValue.players; this.rows = changes.war.currentValue.players;

View File

@ -50,6 +50,10 @@ span.tab-control {
border-bottom: 0; border-bottom: 0;
} }
.nav-tab-hidden {
visibility: hidden;
}
.nav-tabs > li > a { .nav-tabs > li > a {
background: #e7e7e7; background: #e7e7e7;
border: 1px solid #dadada; border: 1px solid #dadada;

View File

@ -2,9 +2,11 @@
<div class="war-header-container"> <div class="war-header-container">
<div class="pull-left head-field" style="width: 250px"> <div class="pull-left head-field" style="width: 250px">
<h4>{{'stats.scoreboard.standings' | translate}}</h4> <h4>{{'stats.scoreboard.standings' | translate}}</h4>
<span [style.color]="fraction.COLOR_BLUFOR" style="font-weight: bold; margin-right: 10px">{{fraction.BLUFOR}} {{war.ptBlufor}}</span> <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="font-size: x-large">|</span>
<span [style.color]="fraction.COLOR_OPFOR" style="font-weight: bold; margin-left: 10px;">{{war.ptOpfor}} {{fraction.OPFOR}}</span> <span [style.color]="fraction.COLOR_OPFOR"
style="font-weight: bold; margin-left: 10px;">{{war.ptOpfor}} {{fraction.OPFOR}}</span>
</div> </div>
<div class="pull-left head-field " style="padding-left: 100px;"> <div class="pull-left head-field " style="padding-left: 100px;">
@ -48,9 +50,10 @@
{{'stats.scoreboard.tab.player' | translate}} {{'stats.scoreboard.tab.player' | translate}}
</a> </a>
</li> </li>
<li class="nav-item" [ngClass]="{active :tab === 3}" (click)="switchTab(3)" <li class="nav-item"
*ngIf="war && war.players && war.players[0] && war.players[0].performance"> [ngClass]="{active : tab === 3,'nav-tab-hidden' : war && war.players[0] && !war.players[0].performance}"
<a class="nav-link"> (click)="switchTab(3)">
<a class="nav-link">
<mat-icon svgIcon="stats-performance" class="mat-icon-stats-performance"></mat-icon> <mat-icon svgIcon="stats-performance" class="mat-icon-stats-performance"></mat-icon>
{{'stats.scoreboard.tab.performance' | translate}} {{'stats.scoreboard.tab.performance' | translate}}
</a> </a>

View File

@ -1,7 +1,7 @@
export class PlayerUtils { export class PlayerUtils {
//TODO: drop this tmp collection, excluding player transport stats from campaign detail page and highscore page, // TODO: drop this tmp collection, excluding player transport stats from campaign detail page and highscore page,
// adding valid procesing there // adding valid processing there
public static readonly tmpAttributeDisplayNames = [ public static readonly tmpAttributeDisplayNames = [
{prop: 'name', head: 'stats.scoreboard.header.player'}, {prop: 'name', head: 'stats.scoreboard.header.player'},
{prop: 'fraction', head: 'stats.scoreboard.header.fraction'}, {prop: 'fraction', head: 'stats.scoreboard.header.fraction'},