Round-Robin (Laravel 5 Package)
, (*1)
Round-Robin is an easy way to create schedule with round-robin(rr) technique. I used the mnito's base code for this. Look here: https://github.com/mnito/round-robin, (*2)
Installation
1) In order to install Laravel Round-Robin, just add the following to your composer.json. Then run composer update:, (*3)
"marcelotk15/round-robin": "0.1.*"
or run composer require marcelotk15/round-robin, (*4)
2) Open your config/app.php and add the following to the providers array:, (*5)
Laravel\RoundRobin\RoundRobinServiceProvider::class,
3) Open your config/app.php and add the following to the facades array:, (*6)
'RoundRobin' => Laravel\RoundRobin\RoundRobinFacade::class,
Controllers and etc
use Laravel\RoundRobin\RoundRobin;
Using (Examples)
Setuping (without Facade):, (*7)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = new RoundRobin($teams)->make();
// or with 'from' static method
$schedule = RoundRobin::from($teams)->make();
With a facade:, (*8)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = RoundRobin::from($teams)->make();
Generate a schedule without randomly shuffling the teams using the $shuffle boolean parameter:, (*9)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = RoundRobin::from($teams)->doNotShuffle()->make();
Use your own seed with the $seed integer parameter for predetermined shuffling:, (*10)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = RoundRobin::from($teams)->shuffle(15)->make();
If you want a double Round-robin:, (*11)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = RoundRobin::from($teams)->doubleRoundRobin()->make();
If you want a get a Schedule Object:, (*12)
$teams = ['Arsenal', 'Atlético de Madrid', 'Borussia', 'Barcelona','Liverpool', 'Bayer 04', 'Real Madrid'];
$schedule = RoundRobin::from($teams)->makeSchedule();
License
Laravel Round-Robin is free software distributed under the terms of the MIT license., (*13)