add seatIsSelected to SelectedSeatService, so seats cannot be interacted with while cooking/reservation
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
<button (click)="updateSelectedSeats(this.seat())" [disabled]="state() == TheaterSeatState.BOOKED || state() == TheaterSeatState.RESERVED" class="mx-1 hover:opacity-50">
|
<button (click)="updateSelectedSeats(this.seat())" [disabled]="state() == TheaterSeatState.BOOKED || state() == TheaterSeatState.RESERVED || !seatService.getSeatIsSelected()" class="mx-1 hover:opacity-50">
|
||||||
<mat-icon [ngStyle]="{'opacity': selected ? '0.5' : '1', color: getSeatStateColor() }" style="font-size: 30px; width: 30px; height: 30px">
|
<mat-icon [ngStyle]="{'opacity': selected ? '0.5' : '1', color: getSeatStateColor() }" style="font-size: 30px; width: 30px; height: 30px">
|
||||||
@if(this.seat().row.category.id ==1){
|
@if(this.seat().row.category.id ==1){
|
||||||
event_seat
|
event_seat
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ export class SeatComponent{
|
|||||||
|
|
||||||
selected: boolean = false;
|
selected: boolean = false;
|
||||||
|
|
||||||
private seatService = inject(SelectedSeatsService)
|
protected seatService = inject(SelectedSeatsService)
|
||||||
|
|
||||||
getSeatStateColor(): any {
|
getSeatStateColor(): any {
|
||||||
switch (this.state()) {
|
switch (this.state()) {
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import {Sitzplatz} from '@infinimotion/model-frontend';
|
|||||||
})
|
})
|
||||||
export class SelectedSeatsService {
|
export class SelectedSeatsService {
|
||||||
private selectedSeatsList: Sitzplatz[] = [];
|
private selectedSeatsList: Sitzplatz[] = [];
|
||||||
|
private seatIsSelectable: boolean = true;
|
||||||
|
|
||||||
pushSelectedSeat(selectedSeat: Sitzplatz): void {
|
pushSelectedSeat(selectedSeat: Sitzplatz): void {
|
||||||
this.selectedSeatsList.push(selectedSeat);
|
this.selectedSeatsList.push(selectedSeat);
|
||||||
@@ -35,4 +36,16 @@ export class SelectedSeatsService {
|
|||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getSeatIsSelected(): boolean{
|
||||||
|
return this.seatIsSelectable;
|
||||||
|
}
|
||||||
|
|
||||||
|
setSeatIsSelectableTrue(): void {
|
||||||
|
this.seatIsSelectable = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
setSeatIsSelectableFalse(): void {
|
||||||
|
this.seatIsSelectable = false;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user