Add delete war option
parent
6bf7992f0f
commit
07df5bd4c8
|
@ -129,10 +129,12 @@ wars.route('/:id')
|
||||||
WarModel.findByIdAndRemove(req.params.id, (err, item) => {
|
WarModel.findByIdAndRemove(req.params.id, (err, item) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
err.status = codes.wrongrequest;
|
err.status = codes.wrongrequest;
|
||||||
|
return next(err);
|
||||||
}
|
}
|
||||||
else if (!item) {
|
else if (!item) {
|
||||||
err = new Error("item not found");
|
err = new Error("item not found");
|
||||||
err.status = codes.notfound;
|
err.status = codes.notfound;
|
||||||
|
return next(err);
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO: add removal of resource files
|
//TODO: add removal of resource files
|
||||||
|
@ -142,7 +144,7 @@ wars.route('/:id')
|
||||||
|
|
||||||
// we don't set res.locals.items and thus it will send a 204 (no content) at the end. see last handler user.use(..)
|
// we don't set res.locals.items and thus it will send a 204 (no content) at the end. see last handler user.use(..)
|
||||||
res.locals.processed = true;
|
res.locals.processed = true;
|
||||||
next(err); // this works because err is in normal case undefined and that is the same as no parameter
|
next();
|
||||||
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<h1>Übersicht über alle Spieler, Squads und Armeen</h1>
|
<h1>Übersicht über alle Spieler, Squads und Armeen</h1>
|
||||||
|
|
||||||
<div style="width: 1900px; margin-left: 25%">
|
<div style="width: 1200px; margin-left: 25%">
|
||||||
|
|
||||||
<div class="div-table" style="width: 490px; float:left">
|
<div class="div-table" style="width: 490px; float:left">
|
||||||
<h3 class="text-blufor army-head">NATO</h3>
|
<h3 class="text-blufor army-head">NATO</h3>
|
||||||
|
|
|
@ -38,5 +38,10 @@ export class WarService {
|
||||||
.map(res => res.json())
|
.map(res => res.json())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deleteWar(id: string) {
|
||||||
|
return this.http.delete(this.config.apiUrl + this.config.apiWarPath + '/' + id)
|
||||||
|
.map(res => res.json())
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,8 +10,11 @@
|
||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<div style="margin-left: 500px; margin-top:1%">
|
<div style="margin-left: 500px; margin-top:1%">
|
||||||
<a class="btn btn-default btn-" style="margin: 20px" target="_blank" href="resource/logs/{{war._id}}/clean.log">Logfile
|
<a class="btn btn-default" style="margin: 20px" target="_blank" href="resource/logs/{{war._id}}/clean.log">Logfile
|
||||||
anzeigen</a>
|
anzeigen</a>
|
||||||
|
<button *ngIf="loginService.hasPermission(3)" class="btn btn-warning" style="margin: 20px" (click)="delete()">
|
||||||
|
Schlacht löschen
|
||||||
|
</button>
|
||||||
<form class="form-group">
|
<form class="form-group">
|
||||||
<label class="radio-inline">
|
<label class="radio-inline">
|
||||||
<input type="radio" name="fractSelect"
|
<input type="radio" name="fractSelect"
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import {Component} from "@angular/core";
|
import {Component} from "@angular/core";
|
||||||
import {Player, War} from "../models/model-interfaces";
|
import {Player, War} from "../models/model-interfaces";
|
||||||
import {WarService} from "../services/war-service/war.service";
|
import {WarService} from "../services/war-service/war.service";
|
||||||
import {ActivatedRoute} from "@angular/router";
|
import {ActivatedRoute, Router} from "@angular/router";
|
||||||
|
import {LoginService} from "../services/login-service/login-service";
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -21,8 +22,10 @@ export class WarDetailComponent {
|
||||||
|
|
||||||
sortOrder = "desc";
|
sortOrder = "desc";
|
||||||
|
|
||||||
constructor(private route: ActivatedRoute,
|
constructor(private router: Router,
|
||||||
private warService: WarService) {
|
private route: ActivatedRoute,
|
||||||
|
private warService: WarService,
|
||||||
|
private loginService: LoginService) {
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -46,4 +49,13 @@ export class WarDetailComponent {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete() {
|
||||||
|
if (confirm('Soll die Schlacht "' + this.war.title + '" wirklich gelöscht werden?')) {
|
||||||
|
this.warService.deleteWar(this.war._id)
|
||||||
|
.subscribe((res) => {
|
||||||
|
this.router.navigate(['../..'], {relativeTo: this.route});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue