diff --git a/api/routes/wars.js b/api/routes/wars.js index e57fcf4..33ba5cc 100644 --- a/api/routes/wars.js +++ b/api/routes/wars.js @@ -149,7 +149,7 @@ wars.route('/:id') err.status = codes.notfound; return next(err); } - PlayerModel.find({warId: item._id}, (err, items) => { + PlayerModel.find({warId: item._id}, {'_id': 0, 'warId': 0, '__v': 0, 'updatedAt': 0, 'timestamp': 0}, (err, items) => { if (err) { return next(err); } diff --git a/static/package.json b/static/package.json index 67bf713..7d7b6cc 100644 --- a/static/package.json +++ b/static/package.json @@ -23,7 +23,7 @@ "@angular/platform-browser-dynamic": "^4.3.2", "@angular/router": "^4.3.2", "@swimlane/ngx-charts": "^6.0.1", - "angular2-datatable": "^0.6.0", + "@swimlane/ngx-datatable": "^10.2.3", "bootstrap": "^3.3.7", "core-js": "^2.4.1", "d3": "^4.10.0", diff --git a/static/src/app/statistic/stats.module.ts b/static/src/app/statistic/stats.module.ts index b1ce602..08e153b 100644 --- a/static/src/app/statistic/stats.module.ts +++ b/static/src/app/statistic/stats.module.ts @@ -3,14 +3,14 @@ import {CommonModule} from "@angular/common"; import {SharedModule} from "../shared.module"; import {statsRouterModule, statsRoutingComponents} from "./stats.routing"; import {WarService} from "../services/war-service/war.service"; -import {DataTableModule} from "angular2-datatable"; import {LineChartModule, PieChartModule} from "@swimlane/ngx-charts"; import {AccordionModule, CarouselModule} from "ngx-bootstrap"; +import {NgxDatatableModule} from "@swimlane/ngx-datatable"; @NgModule({ declarations: statsRoutingComponents, imports: [CommonModule, SharedModule, statsRouterModule, LineChartModule, PieChartModule, - AccordionModule.forRoot(), CarouselModule.forRoot(), DataTableModule], + AccordionModule.forRoot(), CarouselModule.forRoot(), NgxDatatableModule], providers: [WarService] }) export class StatsModule { diff --git a/static/src/app/statistic/war-detail/war-detail.component.html b/static/src/app/statistic/war-detail/war-detail.component.html index ec53cf9..655f1c0 100644 --- a/static/src/app/statistic/war-detail/war-detail.component.html +++ b/static/src/app/statistic/war-detail/war-detail.component.html @@ -51,67 +51,10 @@
-
- - - - - - - - - - - - - - - - - - - - - - - - - -
- Spieler - - Fraktion - - Kills - - FriendlyFire - - Revive - - Eroberung - - Tod - - Respawn -
- {{player.name}} - - {{player.fraction === 'BLUFOR' ? 'NATO' : 'CSAT'}} - - {{player.kill}} - - {{player.friendlyFire}} - - {{player.revive}} - - {{player.flagTouch}} - - {{player.death}} - - {{player.respawn}} -
-
+ +
diff --git a/static/src/app/statistic/war-detail/war-detail.component.ts b/static/src/app/statistic/war-detail/war-detail.component.ts index a0827b4..18943f4 100644 --- a/static/src/app/statistic/war-detail/war-detail.component.ts +++ b/static/src/app/statistic/war-detail/war-detail.component.ts @@ -17,12 +17,12 @@ export class WarDetailComponent { fractionRadioSelect: string; - sortBy = "kill"; - - sortOrder = "desc"; - playerChart: any[] = []; + rows = []; + + columns = []; + constructor(private route: ActivatedRoute, private warService: WarService) { Object.assign(this, this.playerChart) @@ -35,7 +35,7 @@ export class WarDetailComponent { .flatMap(id => this.warService.getWar(id)) .subscribe(war => { this.war = war; - this.players = war.players; + this.rows = war.players; this.playerChart = [ { "name": "CSAT", @@ -47,6 +47,17 @@ export class WarDetailComponent { } ]; }); + + this.columns = [ + {prop: 'name', name: 'Spieler'}, + {prop: 'fraction', name: 'Fraktion'}, + {prop: 'kill', name: 'Kills'}, + {prop: 'friendlyFire', name: 'FriendlyFire'}, + {prop: 'revive', name: 'Revive'}, + {prop: 'flagTouch', name: 'Eroberung'}, + {prop: 'death', name: 'Tod'}, + {prop: 'respawn', name: 'Respawn'} + ]; } filterPlayersByFraction(fraction: string) {