fix: ordering songs in show

This commit is contained in:
2020-03-22 00:08:09 +01:00
committed by smuddy
parent 8149e56dad
commit 597f6ac187
3 changed files with 6 additions and 7 deletions

View File

@@ -2,12 +2,12 @@
<app-card
heading="{{show.showType|showType}}, {{show.date.toDate()|date:'dd.MM.yyyy'}}">
<div *ngIf="showSongs" class="song-list">
<div *ngIf="showSongs && songs" class="song-list">
<app-song *ngFor="let song of showSongs"
[showId]="showId"
[showSong]="song"
[showSongs]="showSongs"
[song]="getSong(songs, song.songId)"
[song]="getSong(song.songId)"
></app-song>
</div>

View File

@@ -64,9 +64,8 @@ export class ShowComponent implements OnInit {
event.source.value = null;
}
public getSong(songs: Song[], songId: string): Song {
if (!songs) return null;
const filtered = songs.filter(_ => _.id === songId);
public getSong(songId: string): Song {
const filtered = this.songs.filter(_ => _.id === songId);
return filtered.length > 0 ? filtered[0] : null;
}
}

View File

@@ -54,7 +54,7 @@ export class SongComponent implements OnInit {
}
public async reorderUp(): Promise<void> {
const index = this.showSongs.findIndex(_ => _.songId === this.song.id);
const index = this.showSongs.findIndex(_ => _.songId === this._song.id);
if (index === 0) return;
const song = this.showSongs[index];
@@ -65,7 +65,7 @@ export class SongComponent implements OnInit {
}
public async reorderDown(): Promise<void> {
const index = this.showSongs.findIndex(_ => _.songId === this.song.id);
const index = this.showSongs.findIndex(_ => _.songId === this._song.id);
if (index === this.showSongs.length - 1) return;
const song = this.showSongs[index];