added new schedule

This commit is contained in:
didier amyot committed 2017-05-13 09:58:11 -04:00
1 parent 337508e72a
commit 5d630e28f4
5 files changed
+552 -214

No files matched your search

-89
View File
@@ -1,89 +0,0 @@
var _ = require('lodash');
var hostTeamsFactory = function(teams){
var i = 0;
return function(){
var ret = teams[i];
i = i + 1;
if(i == teams.length){
i = 0;
teams = _.shuffle(teams);
}
return ret;
};
};
var getGuestTeams = function(hostTeams, teams){
return _.difference(hostTeams, teams);
};
var getLastTimeTwoTeamHasPlayedAgainst = function(history, team1, team2){
for(var i = 0; i < history.length; i++){
var nighGame = history[history.length - i - 1];
if(nighGame[team1] == team2 || nighGame[team2] == team1){
return i;
}
}
return -Infinity;
};
var initiateScheduleWithHostTeams = function(teams, numberOfNights, numberOfGamePerNight){
var hostTeams = hostTeamsFactory(teams);
return _.map(_.range(numberOfNights), function(){
var ret = {};
_.each(_.range(numberOfGamePerNight), function(){
ret[hostTeams()] = undefined;
});
return ret;
});
};
var getBestGuestTeam = function(hostTeam, previousSchedule, possibleGuests){
// TODO: FIX ME.
var presiouslyPlayed = _.map(possibleGuests, function(guestTeam){
return getLastTimeTwoTeamHasPlayedAgainst(previousSchedule, hostTeam, guestTeam);
});
var m = _.fromPairs(_.zip(presiouslyPlayed, possibleGuests));
console.log(hostTeam);
console.log(m);
console.log(m[_.min(presiouslyPlayed)]);
console.log('\n\n\n\n');
return m[_.min(presiouslyPlayed)];
};
var addGuestTeamToNight = function(night, previousSchedule, teams){
var hostTeams = _.keys(night);
var nightHistory = 12;
_.each(hostTeams, function(hostTeam){
var alreadyChoosenTeam = _.compact(_.values(night));
var prohibitedGuests = _.concat(hostTeams, alreadyChoosenTeam);
var possibleGuests = _.difference(teams, prohibitedGuests);
night[hostTeam] = getBestGuestTeam(hostTeam, previousSchedule, possibleGuests);
});
return night;
};
var addGuestTeams = function(schedule, teams){
return _.map(schedule, function(night, idx){
return addGuestTeamToNight(night, schedule.slice(0, idx), teams);
});
};
function createSchedule(teams, numberOfNights, numberOfGamePerNight){
var schedule = initiateScheduleWithHostTeams(teams, numberOfNights, numberOfGamePerNight);
return addGuestTeams(schedule, teams);
}
function main(){
var teams = ['jaune', 'vert', 'bleu', 'rouge', 'gris', 'orange'];
var numberOfNights = 10;
var numberOfGamePerNight = 3;
var schedule = createSchedule(teams, numberOfNights, numberOfGamePerNight);
_.each(schedule, function(night){
console.log(night, ',');
});
}
main();
+264 -124
View File
@@ -1,281 +1,421 @@
---
-
date: 2017/5/04 # year/month/day
time: "18:45"
away: jaune
home: rouge
home_points: ~
away_points: ~
rain: false
# generated by https://scheduler.leaguelobster.com/edit/236693/new-league/new-season/#
-
date: 2017/5/04 # year/month/day
time: "20:20"
away: gris
home: bleu
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/11 # year/month/day
time: "18:45"
away: rouge
home: gris
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/11 # year/month/day
time: "20:20"
away: bleu
home: jaune
date: 2017/5/18 # year/month/day
time: "18:30"
home: jaune # t6
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/18 # year/month/day
time: "18:45"
away: gris
home: jaune
time: "20:00"
home: orange # t3
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/18 # year/month/day
time: "20:20"
away: rouge
home: bleu
time: "21:30"
home: vert # t2
away: rouge # t4
home_points: ~
away_points: ~
rain: false
# WEEK 2
-
date: 2017/5/25 # year/month/day
time: "18:30"
home: gris # t1
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/25 # year/month/day
time: "18:45"
away: bleu
home: gris
time: "20:00"
home: rouge # t4
away: jaune # t6
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/25 # year/month/day
time: "20:20"
away: rouge
home: jaune
time: "21:30"
home: vert # t2
away: orange # t3
home_points: ~
away_points: ~
rain: false
# WEEK 3
-
date: 2017/6/1 # year/month/day
time: "18:30"
home: jaune # t6
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/1 # year/month/day
time: "18:45"
away: jaune
home: bleu
time: "20:00"
home: bleu # t5
away: vert # t2
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/1 # year/month/day
time: "20:20"
away: gris
home: rouge
time: "21:30"
home: orange # t3
away: rouge # t4
home_points: ~
away_points: ~
rain: false
# WEEK 4
-
date: 2017/6/8 # year/month/day
time: "18:45"
away: bleu
home: rouge
time: "18:30"
home: vert # t2
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/8 # year/month/day
time: "20:20"
away: jaune
home: gris
time: "20:00"
home: rouge # t4
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/8 # year/month/day
time: "21:30"
home: orange # t3
away: jaune # t6
home_points: ~
away_points: ~
rain: false
# WEEK 5
-
date: 2017/6/15 # year/month/day
time: "18:30"
home: jaune # t6
away: vert # t2
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/15 # year/month/day
time: "18:45"
away: jaune
home: rouge
time: "20:00"
home: gris # t1
away: rouge # t4
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/15 # year/month/day
time: "20:20"
away: gris
home: bleu
time: "21:30"
home: bleu # t5
away: orange # t3
home_points: ~
away_points: ~
rain: false
# WEEK 6
-
date: 2017/6/22 # year/month/day
time: "18:30"
home: bleu # t5
away: jaune # t6
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/22 # year/month/day
time: "18:45"
away: rouge
home: gris
time: "20:00"
home: orange # t3
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/22 # year/month/day
time: "20:20"
away: bleu
home: jaune
time: "21:30"
home: rouge # t4
away: vert # t2
home_points: ~
away_points: ~
rain: false
# WEEK 7
-
date: 2017/6/29 # year/month/day
time: "18:30"
home: jaune # t6
away: rouge # t4
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/29 # year/month/day
time: "18:45"
away: gris
home: jaune
time: "20:00"
home: gris # t1
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/29 # year/month/day
time: "20:20"
away: rouge
home: bleu
time: "21:30"
home: vert # t2
away: orange # t3
home_points: ~
away_points: ~
rain: false
# WEEK 8
-
date: 2017/7/6 # year/month/day
time: "18:30"
home: bleu # t5
away: vert # t2
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/6 # year/month/day
time: "18:45"
away: bleu
home: gris
time: "20:00"
home: gris # t1
away: jaune # t6
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/6 # year/month/day
time: "20:20"
away: rouge
home: jaune
time: "21:30"
home: orange # t3
away: rouge # t4
home_points: ~
away_points: ~
rain: false
# WEEK 9
-
date: 2017/7/13 # year/month/day
time: "18:30"
home: jaune # t6
away: orange # t3
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/13 # year/month/day
time: "18:45"
away: jaune
home: bleu
time: "20:00"
home: rouge # t4
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/13 # year/month/day
time: "20:20"
away: gris
home: rouge
time: "21:30"
home: vert # t2
away: gris # t1
home_points: ~
away_points: ~
rain: false
# WEEK 10
-
date: 2017/7/20 # year/month/day
time: "18:30"
home: gris # t1
away: rouge # t4
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/20 # year/month/day
time: "18:45"
away: bleu
home: rouge
time: "20:00"
home: bleu # t5
away: orange # t3
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/20 # year/month/day
time: "20:20"
away: jaune
home: gris
time: "21:30"
home: vert # t2
away: jaune # t6
home_points: ~
away_points: ~
rain: false
# WEEK 11
-
date: 2017/7/27 # year/month/day
time: "18:30"
home: rouge # t4
away: vert # t2
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/27 # year/month/day
time: "18:45"
away: jaune
home: rouge
time: "20:00"
home: jaune # t6
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/7/27 # year/month/day
time: "20:20"
away: gris
home: bleu
time: "21:30"
home: orange # t3
away: gris # t1
home_points: ~
away_points: ~
rain: false
# WEEK 12
-
date: 2017/8/3 # year/month/day
time: "18:30"
home: gris # t1
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/3 # year/month/day
time: "18:45"
away: rouge
home: gris
time: "20:00"
home: rouge # t4
away: jaune # t6
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/3 # year/month/day
time: "20:20"
away: bleu
home: jaune
time: "21:30"
home: vert # t2
away: orange # t3
home_points: ~
away_points: ~
rain: false
# WEEK 13
-
date: 2017/8/10 # year/month/day
time: "18:30"
home: jaune # t6
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/10 # year/month/day
time: "18:45"
away: jaune
home: rouge
time: "20:00"
home: bleu # t5
away: vert # t2
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/10 # year/month/day
time: "20:20"
away: gris
home: bleu
time: "21:30"
home: orange # t3
away: rouge # t4
home_points: ~
away_points: ~
rain: false
# WEEK 14
-
date: 2017/8/17 # year/month/day
time: "18:45"
away: gris
home: jaune
time: "18:30"
home: rouge # t4
away: bleu # t5
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/17 # year/month/day
time: "20:20"
away: rouge
home: bleu
time: "20:00"
home: vert # t2
away: gris # t1
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/25 # year/month/day
time: "18:45"
away: bleu
home: rouge
date: 2017/8/17 # year/month/day
time: "21:30"
home: orange # t3
away: jaune # t6
home_points: ~
away_points: ~
temporary: false
rain: false
# WEEK 15
-
date: 2017/8/24 # year/month/day
time: "18:30"
home: gris # t1
away: rouge # t4
home_points: ~
away_points: ~
rain: false
-
date: 2017/8/25 # year/month/day
time: "20:20"
away: jaune
home: gris
date: 2017/8/24 # year/month/day
time: "20:00"
home: bleu # t5
away: orange # t3
home_points: ~
away_points: ~
temporary: false
rain: false
-
date: 2017/8/24 # year/month/day
time: "21:30"
home: jaune # t6
away: vert # t2
home_points: ~
away_points: ~
rain: false
+281
View File
@@ -0,0 +1,281 @@
---
-
date: 2017/5/04 # year/month/day
time: "18:45"
away: jaune
home: rouge
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/04 # year/month/day
time: "20:20"
away: gris
home: bleu
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/11 # year/month/day
time: "18:45"
away: rouge
home: gris
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/11 # year/month/day
time: "20:20"
away: bleu
home: jaune
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/18 # year/month/day
time: "18:45"
away: gris
home: jaune
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/18 # year/month/day
time: "20:20"
away: rouge
home: bleu
home_points: ~
away_points: ~
rain: false
-
date: 2017/5/25 # year/month/day
time: "18:45"
away: bleu
home: gris
home_points: ~
away_points: ~
-
date: 2017/5/25 # year/month/day
time: "20:20"
away: rouge
home: jaune
home_points: ~
away_points: ~
-
date: 2017/6/1 # year/month/day
time: "18:45"
away: jaune
home: bleu
home_points: ~
away_points: ~
-
date: 2017/6/1 # year/month/day
time: "20:20"
away: gris
home: rouge
home_points: ~
away_points: ~
-
date: 2017/6/8 # year/month/day
time: "18:45"
away: bleu
home: rouge
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/8 # year/month/day
time: "20:20"
away: jaune
home: gris
home_points: ~
away_points: ~
rain: false
-
date: 2017/6/15 # year/month/day
time: "18:45"
away: jaune
home: rouge
home_points: ~
away_points: ~
-
date: 2017/6/15 # year/month/day
time: "20:20"
away: gris
home: bleu
home_points: ~
away_points: ~
-
date: 2017/6/22 # year/month/day
time: "18:45"
away: rouge
home: gris
home_points: ~
away_points: ~
-
date: 2017/6/22 # year/month/day
time: "20:20"
away: bleu
home: jaune
home_points: ~
away_points: ~
-
date: 2017/6/29 # year/month/day
time: "18:45"
away: gris
home: jaune
home_points: ~
away_points: ~
-
date: 2017/6/29 # year/month/day
time: "20:20"
away: rouge
home: bleu
home_points: ~
away_points: ~
-
date: 2017/7/6 # year/month/day
time: "18:45"
away: bleu
home: gris
home_points: ~
away_points: ~
-
date: 2017/7/6 # year/month/day
time: "20:20"
away: rouge
home: jaune
home_points: ~
away_points: ~
-
date: 2017/7/13 # year/month/day
time: "18:45"
away: jaune
home: bleu
home_points: ~
away_points: ~
-
date: 2017/7/13 # year/month/day
time: "20:20"
away: gris
home: rouge
home_points: ~
away_points: ~
-
date: 2017/7/20 # year/month/day
time: "18:45"
away: bleu
home: rouge
home_points: ~
away_points: ~
-
date: 2017/7/20 # year/month/day
time: "20:20"
away: jaune
home: gris
home_points: ~
away_points: ~
-
date: 2017/7/27 # year/month/day
time: "18:45"
away: jaune
home: rouge
home_points: ~
away_points: ~
-
date: 2017/7/27 # year/month/day
time: "20:20"
away: gris
home: bleu
home_points: ~
away_points: ~
-
date: 2017/8/3 # year/month/day
time: "18:45"
away: rouge
home: gris
home_points: ~
away_points: ~
-
date: 2017/8/3 # year/month/day
time: "20:20"
away: bleu
home: jaune
home_points: ~
away_points: ~
-
date: 2017/8/10 # year/month/day
time: "18:45"
away: jaune
home: rouge
home_points: ~
away_points: ~
-
date: 2017/8/10 # year/month/day
time: "20:20"
away: gris
home: bleu
home_points: ~
away_points: ~
-
date: 2017/8/17 # year/month/day
time: "18:45"
away: gris
home: jaune
home_points: ~
away_points: ~
-
date: 2017/8/17 # year/month/day
time: "20:20"
away: rouge
home: bleu
home_points: ~
away_points: ~
-
date: 2017/8/25 # year/month/day
time: "18:45"
away: bleu
home: rouge
home_points: ~
away_points: ~
temporary: false
-
date: 2017/8/25 # year/month/day
time: "20:20"
away: jaune
home: gris
home_points: ~
away_points: ~
temporary: false
+6
View File
@@ -14,6 +14,12 @@ define(['m', '_'], function (m, _) {
if(teamName == 'gris'){
return '#808080';
}
if(teamName == 'orange'){
return '#FFA500';
}
if(teamName == 'vert'){
return '#008000';
}
return undefined;
};
+1 -1
View File
@@ -106,7 +106,7 @@ define(['m', '_', 'util', 'resultParser', 'views/topNavBar', 'views/footer', 'ar
return m('div.uk-panel.uk-panel-box',[
m('div.uk-panel-badge.uk-badge', m('i.fa.fa-calendar', {style: {'font-size': '1.7em'}})),
m('h3.uk-panel-title', m('a.uk-link-muted', {href: '#/calendrier'}, 'Horaire')),
m.component(scheduleNotYetSet)
m.component(nextGameDaySchedule)
]);
};