Link to game pages on team page/schedule table

This commit is contained in:
Peter 2024-01-21 21:14:52 -05:00
parent 77be97ac4f
commit 5b26093f5e
2 changed files with 60 additions and 8 deletions

View File

@ -37,10 +37,34 @@
{{ row.homeTeam.sname }}
</RouterLink>
</td>
<td>{{ makeGameScore(row.game1) }}</td>
<td>{{ makeGameScore(row.game2) }}</td>
<td>{{ makeGameScore(row.game3) }}</td>
<td>{{ makeGameScore(row.game4) }}</td>
<td>
<RouterLink v-if="isPlayed(row.game1)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game1!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game1) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game2)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game2!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game2) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game3)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game3!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game3) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game4)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game4!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game4) }}
</RouterLink>
<template v-else>-</template>
</td>
</tr>
</tbody>
</table>
@ -79,10 +103,34 @@
{{ row.homeTeam.sname }}
</RouterLink>
</td>
<td>{{ makeGameScore(row.game1) }}</td>
<td>{{ makeGameScore(row.game2) }}</td>
<td>{{ makeGameScore(row.game3) }}</td>
<td>{{ makeGameScore(row.game4) }}</td>
<td>
<RouterLink v-if="isPlayed(row.game1)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game1!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game1) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game2)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game2!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game2) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game3)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game3!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game3) }}
</RouterLink>
<template v-else>-</template>
</td>
<td>
<RouterLink v-if="isPlayed(row.game4)"
:to="{ name: 'games', params: { seasonNumber: seasonNumber, weekNumber: row.week, gameNumber: row.game4!.game_num, team1Abbreviation: row.awayTeam.abbrev, team2Abbreviation: row.homeTeam.abbrev } }">
{{ makeGameScore(row.game4) }}
</RouterLink>
<template v-else>-</template>
</td>
</tr>
</tbody>
</table>
@ -167,6 +215,9 @@ export default {
return storage
}, {} as { [key: string]: Game[] })
},
isPlayed(game: Game | undefined) {
return !!game && (game.away_score || game.home_score)
},
makeGameScore(game: Game | undefined): string {
if (!game || (!game.away_score && !game.home_score)) return '-'
return `${game.away_team.abbrev} ${game.away_score}-${game.home_score} ${game.home_team.abbrev}`

View File

@ -49,4 +49,5 @@ export interface Game {
home_score: number,
away_manager: Manager
home_manager: Manager
scorecard_url: string
}