SPR-606 Games per Team

https://spordle.atlassian.net/browse/SPR-606

The missing piece of the scheduler is to be able to produce a team matrix then manually allocate games to dates.

Requirements

  • Specify n games to be played per team

  • Step to refine how many games are played per team

  • Calendar mode to allocate games to a date

UX

This depends on the draft games revamp, which will change the draft creation flow so that it works as a modal which has multiple steps.

Game generation

  • The games per team method option would enable an additional step that isn’t otherwise shown when using the total rounds method

    • Total games per team must be an even number to avoid unbalanced schedules

  • The matrix will be a grid of all teams (similar to analysis) showing how many games are played between each team

    • Values are based on the games per team value entered in the first step and may be manually adjusted in the matrix by the user

    • Totals should be shown at the bottom of each column to indicate how games are being played by the team to highlight any discrepancies immediately

Date allocation

  • Games may be produced without a date. The current calendar depends on a date to be able to show the events at each arena, so we need to add an additional mode toggle to the calendar to allocate dates to games

  • This would be a month calendar grid (similar to the availability calendar) where selecting the game would instead show a full month view and a list of game numbers to show when either team is playing a game

    • We might be able to use icons/colours to signify which team’s game it is

  • Could also show a weekly view with an all day section at top (similar to most calendar) so we can show more game details and reuse existing components. Tradeoff is viewing a shorter period of days at once

    • This would be a quicker initial starting point before creating a monthly calendar grid

Implementation

Games per team generation TODO

https://spordle.atlassian.net/browse/SPR-609

  • Add configuration and implement the library

Monthly calendar view TODO

https://spordle.atlassian.net/browse/SPR-754

https://spordle.atlassian.net/browse/SPR-487

  • Initially, this would be a read-only mode to provide a zoomed out view

  • Extend the monthly view to be able to drag and drop games to allocate dates