diff --git a/src/services/standingsService.ts b/src/services/standingsService.ts
index 11382f4..a0b6335 100644
--- a/src/services/standingsService.ts
+++ b/src/services/standingsService.ts
@@ -37,6 +37,7 @@ export interface TeamStanding {
season: number
teamName: string
teamAbbreviation: string
+ divisionName: string
divisionAbbreviation: string
leagueAbbreviation: string
wins: number
@@ -96,6 +97,7 @@ function normalizeStanding(standing: TeamStandingRaw): TeamStanding {
season: standing.team.season,
teamName: standing.team.sname,
teamAbbreviation: standing.team.abbrev,
+ divisionName: standing.team.division.division_name,
divisionAbbreviation: standing.team.division.division_abbrev,
leagueAbbreviation: standing.team.division.league_abbrev,
wins: standing.wins,
diff --git a/src/services/utilities.ts b/src/services/utilities.ts
index b7217f1..2c935df 100644
--- a/src/services/utilities.ts
+++ b/src/services/utilities.ts
@@ -4,7 +4,7 @@ dayjs.extend(customParseFormat)
export const SITE_URL = 'https://sba.manticorum.com'
-export const CURRENT_SEASON = 8
+export const CURRENT_SEASON = 9
export const MODERN_STAT_ERA_START = 8
@@ -15,9 +15,9 @@ export const WEEKS_PER_SEASON = 18
export const GAMES_PER_SEASON = GAMES_PER_WEEK * WEEKS_PER_SEASON
// TODO: Annually update this start date and holidays with two week series or get it from the DB
-export const SEASON_START_DATE: dayjs.Dayjs = dayjs('07-31-2023', 'MM/DD/YYYY')
-export const THANKSGIVING: dayjs.Dayjs = dayjs('11-23-2023', 'MM/DD/YYYY')
-export const CHRISTMAS: dayjs.Dayjs = dayjs('12-25-2023', 'MM/DD/YYYY')
+export const SEASON_START_DATE: dayjs.Dayjs = dayjs('01-15-2024', 'MM/DD/YYYY')
+export const THANKSGIVING: dayjs.Dayjs = dayjs('11-28-2024', 'MM/DD/YYYY')
+export const CHRISTMAS: dayjs.Dayjs = dayjs('12-25-2024', 'MM/DD/YYYY')
export const POS_MAP = {
diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue
index 5b6eacc..cd849e1 100644
--- a/src/views/HomeView.vue
+++ b/src/views/HomeView.vue
@@ -16,14 +16,12 @@
SBa League
- International wOBA Grand Prix
-
- Crabbers
-
- Fun Diff
-
- NL West
-
+
+
+ {{ division[0].divisionName }}
+
+
+
Wildcard
@@ -60,11 +58,8 @@ export default {
seasonNumber: CURRENT_SEASON as number,
weekNumber: undefined as number | undefined,
teamStandings: [] as TeamStanding[],
- iwgpTeams: [] as TeamStanding[],
- nlwTeams: [] as TeamStanding[],
wildcardTeams: [] as TeamStanding[],
- balTeams: [] as TeamStanding[],
- fdTeams: [] as TeamStanding[],
+ standingsByDivision: [[]] as TeamStanding[][],
newsPosts: [] as NewsPost[]
}
},
@@ -77,15 +72,18 @@ export default {
this.weekNumber = leagueInfo.week
this.teamStandings = await fetchStandings(CURRENT_SEASON)
- // TODO this could be made more robust to division/league structure changes by identifying the unique
- // league/div abbreviations, then grouping on each into an array of arrays, then in the template above
- // v-for over the structure to generate a dynamic standings page
- this.iwgpTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'IWGP')
- this.nlwTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'NLW')
- this.balTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'BAL')
- this.fdTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'FD')
this.wildcardTeams = this.teamStandings.filter(ts => ts.isWildcardTeam)
+ const teamStandingsByDivisionAbbreviation: { [key: string]: TeamStanding[] } = {}
+ this.teamStandings.forEach(ts => {
+ if (!teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation]) {
+ teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation] = []
+ }
+ teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation].push(ts)
+ })
+
+ this.standingsByDivision = Object.values(teamStandingsByDivisionAbbreviation)
+
this.newsPosts = await getPosts()
},
diff --git a/src/views/LeaderboardView.vue b/src/views/LeaderboardView.vue
index 0cbffb4..8d55e8f 100644
--- a/src/views/LeaderboardView.vue
+++ b/src/views/LeaderboardView.vue
@@ -7,9 +7,9 @@
{{ statType }} Leaderboards - Min {{ statMinimum }}
-
+