mirror of
https://github.com/TomasiDeveloping/PlayerManagement.git
synced 2026-04-16 09:12:20 +00:00
68 lines
2.3 KiB
TypeScript
68 lines
2.3 KiB
TypeScript
import {Component, inject, OnInit} from '@angular/core';
|
|
import {ActivatedRoute} from "@angular/router";
|
|
import {PlayerModel} from "../../models/player.model";
|
|
import {PlayerService} from "../../services/player.service";
|
|
import {NgbModal} from "@ng-bootstrap/ng-bootstrap";
|
|
import {PlayerNoteModalComponent} from "../../modals/player-note-modal/player-note-modal.component";
|
|
import {PlayerAdmonitionModalComponent} from "../../modals/player-admonition-modal/player-admonition-modal.component";
|
|
import {ToastrService} from "ngx-toastr";
|
|
|
|
@Component({
|
|
selector: 'app-player-information',
|
|
templateUrl: './player-information.component.html',
|
|
styleUrl: './player-information.component.css'
|
|
})
|
|
export class PlayerInformationComponent implements OnInit {
|
|
|
|
public currentPlayer: PlayerModel | undefined;
|
|
public playerId: string = '';
|
|
private readonly _activatedRote: ActivatedRoute = inject(ActivatedRoute);
|
|
private readonly _playerService: PlayerService = inject(PlayerService);
|
|
private readonly _modalService: NgbModal = inject(NgbModal);
|
|
private readonly _toastr: ToastrService = inject(ToastrService);
|
|
|
|
ngOnInit() {
|
|
this.playerId = this._activatedRote.snapshot.params['id'];
|
|
|
|
this.getPlayer(this.playerId);
|
|
}
|
|
|
|
getPlayer(playerId: string) {
|
|
this._playerService.getPlayer(playerId).subscribe({
|
|
next: ((response: PlayerModel) => {
|
|
if (response) {
|
|
this.currentPlayer = response;
|
|
}
|
|
}),
|
|
error: ((error) => {
|
|
console.log(error);
|
|
this._toastr.error('Could not load player', 'Error loading player');
|
|
})
|
|
});
|
|
}
|
|
|
|
|
|
openPlayerNotes(player: PlayerModel) {
|
|
const modalRef = this._modalService.open(PlayerNoteModalComponent,
|
|
{animation: true, backdrop: 'static', centered: true, size: 'lg'});
|
|
modalRef.componentInstance.player = player
|
|
modalRef.dismissed.subscribe({
|
|
next: (() => {
|
|
this.getPlayer(player.id);
|
|
})
|
|
});
|
|
}
|
|
|
|
openPlayerAdmonitions(currentPlayer: PlayerModel) {
|
|
const modalRef = this._modalService.open(PlayerAdmonitionModalComponent,
|
|
{animation: true, backdrop: 'static', centered: true, size: 'lg'});
|
|
modalRef.componentInstance.player = currentPlayer
|
|
modalRef.dismissed.subscribe({
|
|
next: (() => {
|
|
this.getPlayer(currentPlayer
|
|
.id);
|
|
})
|
|
});
|
|
}
|
|
}
|