groups calcetto
by BeNdErR
JavaScript
var groupNames = ["A","B","C","D","E","F","G","H","I","J","K","L"];
var teamsPerGroup = 4;
var groupsTable = [];
var teamsTable = [{
name: "A"
}, {
name: "B"
}, {
name: "C"
}, {
name: "D"
}, {
name: "E"
}, {
name: "F"
}, {
name: "G"
}, {
name: "H"
}, {
name: "I"
}, {
name: "L"
}];
shuffle(teamsTable);
function createGroups(teams) {
var sliceStart = 0;
var groups = [];
while(sliceStart < teams.length){
groups.push({
id : "id",
name : groupNames[groups.length],
teams : teams.slice(sliceStart, sliceStart + teamsPerGroup)
});
sliceStart += teamsPerGroup;
}
for(var g = 0; g < groups.length; g++){
var currentGroup = groups[g];
currentGroup.games = [];
for(var x = 0; x < currentGroup.teams.length; x++){
var homeTeam = currentGroup.teams[x].name;
for(var y = x + 1; y < currentGroup.teams.length; y++){
var opponentTeam = currentGroup.teams[y].name;
currentGroup.games.push({
id : "gameId",
home : homeTeam,
opponent : opponentTeam,
homeScore : 0,
opponentScore : 0
})
}
}
shuffle(currentGroup.games)
}
return(groups);
}
groupsTable = createGroups(teamsTable);
console.log(groupsTable);
function shuffle(o){
for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
return o;
};