add possibility to delete multiple player awardings at once (CC-23)

pull/37/head
HardiReady 2018-06-17 12:46:58 +02:00
parent 07a6822920
commit a29a39d8e0
2 changed files with 28 additions and 14 deletions

View File

@ -73,7 +73,9 @@
<th class="col-sm-2">Begründung</th> <th class="col-sm-2">Begründung</th>
<th class="col-sm-1 text-right">Datum</th> <th class="col-sm-1 text-right">Datum</th>
<th class="col-sm-1 text-center">Status</th> <th class="col-sm-1 text-center">Status</th>
<th class="col-sm-1 text-center"></th> <th class="col-sm-1 text-center">
<span class="btn btn-default" (click)="deleteAwarding()">Löschen</span>
</th>
</tr> </tr>
</thead> </thead>
<tbody *ngFor="let award of awards"> <tbody *ngFor="let award of awards">
@ -94,10 +96,15 @@
<a class="small text-nowrap">{{award.date | date: 'dd.MM.yyyy'}}</a> <a class="small text-nowrap">{{award.date | date: 'dd.MM.yyyy'}}</a>
</td> </td>
<td class="text-center"> <td class="text-center">
{{award.confirmed === 0? 'In Bearbeitung' : (award.confirmed === 1? 'Genehmigt' : 'Abgelehnt')}} {{award.confirmed === 0 ? 'In Bearbeitung' : (award.confirmed === 1 ? 'Genehmigt' : 'Abgelehnt')}}
</td> </td>
<td class="text-center"> <td class="text-center">
<span class="glyphicon glyphicon-trash trash" title="Löschen" (click)="deleteAwarding(award._id)"></span> <label>
<input name="deleteAward"
type="checkbox"
value="{{award._id}}"
[(ngModel)]="award.checked">
</label>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -93,17 +93,24 @@ export class AwardUserComponent implements OnInit {
} }
} }
deleteAwarding(awardingId) { deleteAwarding() {
this.awardingService.deleteAwarding(awardingId).subscribe((res) => { const checkedAwardings = this.awards.filter(award => award['checked'] == true);
this.awardingService.getUserAwardings(this.userId)
.subscribe((awards) => { if (checkedAwardings.length > 0) {
this.awards = awards; checkedAwardings.forEach(awarding => {
this.showSuccessLabel = true; this.awardingService.deleteAwarding(awarding._id).subscribe((res) => {
setTimeout(() => { this.awardingService.getUserAwardings(this.userId)
this.showSuccessLabel = false; .subscribe((awards) => {
}, 2000); this.awards = awards;
}); });
}); });
});
this.showSuccessLabel = true;
setTimeout(() => {
this.showSuccessLabel = false;
}, 4000);
}
} }
cancel() { cancel() {