League Events

Setting up a league:

  • Add events
  • Add teams to the events
  • Generate the fixtures

Adding an event

Select Admin, then Events, then Add Event to organisation.

  • an event title, e.g. Division 1
  • select event type of Team League
  • a season, e.g. 2016 which must be active.
  • Primary Grading Type - determines which rating is shown for the player in match cards and used to detect violations of the rating limit (if there is one).
  • Extra rating in brackets - shown after the player when viewing a match card - for example you might want to have FIDE as the main raring and show national rating afterwards.
  • Default grade. If left at zero, then it will be the average grade.
  • Grade limit. Leave at zero for an open event. The behaviour of this field depends on the grade option setting at organisation level.
  • Event order - This defines the positioning of the event in the list of events on the left side of the organisation's LMS home page, those events having a large value appearing further down the page. If two events have the same event order value, eg 0, then their position relative to each other is undefined and may change.
  • Times Teams play - this is the number of times the teams play each other in a season and is used when generating fixtures.
  • Initial Number of boards - this is the default number of boards each fixture in the event has. More can be added by the event owner.
  • Grades Below Default. If this is set to "Count as Default grade" then it causes anyone who has a grade below the default grade for the event to be treated as though they had the default grade. Specifically they would appear in the drop downs for match selection as the default grade (instead of their own grade) and so count towards violation of grading limits as the default grade.
  • The Two matches options should normally be left to the default, as they were put into to support the Birmingham Leagues. They cause they fixture to be considered as 2 separate matches, one home one away for purposes of the league table.
  • Handicap - causes a field to become visible where the match reporter can enter a handicap value (eg for competitions where there is a handicap based on grading)
  • Platform - if lichess or chess.com causes a link to the online player to appear in the matchcard.
  • The criteria for sorting the league table can be modified if required by checking the box to enable sorts and by dragging to re-order them.

Press Save.

Adding teams

Navigate to the event. If you just added it you will be there, otherwise select the event from the list of events under Admin/events or fixtures. Select the Teams tab.

  • Select the club the team belongs to. If the club is not listed it needs adding under Admin/Clubs
  • Select the match night.
  • edit the team name if necessary.
  • Click Add Team.

Generating fixtures

Is normal to create all league divisions before generating fixtures for any of them. The reason for this is that if you want the system to generate the fixture dates it needs to be able to do things such as not generating a fixture for a team in one division at the same time as a team in another division is playing. After all events are created for the season, the fixtures can be generated based on the number of times the teams play. There are 3 choices for fixture dates:

  • Enter them yourself
  • Have the system assign dates for you.
  • Import the fixtures from an Excel or csv file.

If you wish to have the system generate dates for the fixtures, then go to Generating Fixture Dates below. If you are going to enter your fixture dates manually then skip this step, and go straight to Fixtures. If you want to import fixtures from a file go to Fixture Import

Generating Fixture Dates

  • Select Home from the top menu, Select a league event from the left hand fixtures menu. Select Teams. Click on the team name, and then Edit. Enter Match dates to avoid, and teams to avoid fixture clashes with (e.g. 1st and 2nd teams don't play no the same night). Repeat for each league event.
  • Select Home from the top menu. Select a club and fixture generation. Enter any dates where you don't want fixtures.
  • Select Home from the top menu. Select a club and Edit. Verify the venue match limit.

Fixtures - Generate

Select Dates Enter date ranges for which you want no fixtures (e.g. Christmas).

There are now 2 fixture generation methods. The original one is described first. Select Admin from the top menu. Select Fixtures. Select Generate . Set the following options:

  • If you want the system to generate dates, click the assign dates checkbox.
  • Leave a week with no fixtures before teams next fixture - only applicable if generating dates.
  • Start with odd numbered team. This impacts which team is assigned as being away in the first fixture. If teams play each other twice then it is only relevant if you are having the system assign fixture dates - it will affect if the home fixture occurs first or later in the season. If teams only play each other once, then this impacts which team gets the home fixture. It is possible to re-order the teams using the Season option or you can just generate the fixtures and then swap home and away fixtures later under Edit Fixtures if you don't like what the system did.
  • For teams set to avoid fixture clashes avoid whole week. This is only relevant to fixture date generation. For example if you have set Preston 1 to not clash with Preston 2 it will not assign Preston 2 fixtures to the same week as any Preston 1 fixture. Without this ticked it would only avoid assigning fixtures to the same day.
  • Debug. Leave this unchecked. Only really necessary if you want to try and figure out why the system generated the dates that it did.
  • Minimum days till next fixture - involving the same team.
  • Start date - only required if generating dates.
  • End date - only required if generating dates.

Press the Generate Fixtures button. You can have several tries at this, changing the options to generate different sets of dates.

Original Algorithm

The fixture generator takes the list of teams and bends it in the middle ending with a table like so:

Team 1 Team 6
Team 2 Team 5
Team 3 Team 4

And so the first pairings will be team 1 v 6, 2 v 5 etc. (if there is an odd number, team 6 is a bye). You can use the season edit option to reorder the teams in an event to achieve fixtures you want to occur first, eg teams from same club playing first. To do the next round it rotates the whole thing clockwise:

Team 2 Team 1
Team 3 Team 6
Team 4 Team 5

New Algorithm

There are some draw backs with the original fixture algorithm:

  • It only makes one attempt to assign fixtures to its grid of weeks and is therefore subject to what order you have the teams in at the start.
  • It tends to run out of weeks and you can't easily tell why.
  • You have to manually order the teams if you want teams from the same club to play first

For these reasons, there is now a Generate New option. This never fails by running out of weeks, so you always get the fixtures, but its downside is
that sometimes they are wrong. Rather than trying to find one solution matching all the constraints, it just starts by spreading them out. It then messes about
with them by swapping teams round or by shuffling the date one week back and forth to see if it can match more of the constraints in the priority order. The number of times it tries is specified as a number of iterations that you specify. This is slower and there is a limit for fear of slowing the system down for everyone else. It reports any failure to satisfy the constraints. You can also use the check option, see below.


There are 2 options in here:

  • Check Existing Fixtures - this checks the fixtures you have generated, or imported. Since its not possible to always alternate home and away it always reports a problem.
  • Show Constraints - this shows in one place all the various constraints such as dates when you don't want fixtures, so they can be all seen in once place.

Import Fixtures

Select Admin from the top menu. Select Fixtures. Select Import. Before importing fixtures the events and teams to which the fixtures apply must already have been created within the season selected from the drop down. Fixtures can be imported from 2 file types:

It is recommended to try this with a small file first to make sure that you have got the format correct. If you tick the remove existing fixtures box, it will remove any from events contained in the file as long as they don't have any results recorded against them. If you don't tick the remove existing fixtures box then you can import the fixtures from more than one file in batches. The files contain the following fields:

  • Event Name - the event must exist within an active or new season.
  • Home Team name - the team must exist in an event in an active or new season.
  • Away team name - the team must exist in an event in an active or new season.
  • Date - either a date format cell for .xls or the form yyyy-mm-dd for .csv. Note that it is possible to specify a time following the date in hh:mm format.

Note: A team name of 'Bye' is permitted in which case a fixture is created with no team selected. The first line is a header record for titles and is ignored.