commit
503a1b7a18
|
@ -14,32 +14,15 @@ thread2 = threading.Thread(target=socketio.run,args=(app,))
|
||||||
thread2.start()
|
thread2.start()
|
||||||
|
|
||||||
master_games_dic = {} #key timestamp : (game game, {} state)
|
master_games_dic = {} #key timestamp : (game game, {} state)
|
||||||
game_states = {}
|
data_to_send = []
|
||||||
|
|
||||||
def data_to_send():
|
|
||||||
template = jinja2.Environment(loader=jinja2.FileSystemLoader('templates')).get_template('game.html')
|
|
||||||
data = []
|
|
||||||
for timestamp in game_states:
|
|
||||||
data.append({
|
|
||||||
'timestamp' : timestamp,
|
|
||||||
'league' : game_states[timestamp]['leagueoruser'] if game_states[timestamp]['is_league'] else '',
|
|
||||||
'html' : template.render(
|
|
||||||
state=game_states[timestamp],
|
|
||||||
base_filled="/static/img/base_filled.png",
|
|
||||||
base_empty="/static/img/base_empty.png",
|
|
||||||
out_out="/static/img/out_out.png",
|
|
||||||
out_in="/static/img/out_in.png"
|
|
||||||
)
|
|
||||||
})
|
|
||||||
return data
|
|
||||||
|
|
||||||
@socketio.on("recieved")
|
@socketio.on("recieved")
|
||||||
def handle_new_conn(data):
|
def handle_new_conn(data):
|
||||||
socketio.emit("states_update", data_to_send(), room=request.sid)
|
socketio.emit("states_update", data_to_send, room=request.sid)
|
||||||
|
|
||||||
def update_loop():
|
def update_loop():
|
||||||
while True:
|
while True:
|
||||||
global game_states
|
game_states = {}
|
||||||
game_times = iter(master_games_dic.copy().keys())
|
game_times = iter(master_games_dic.copy().keys())
|
||||||
for game_time in game_times:
|
for game_time in game_times:
|
||||||
this_game, state, discrim_string = master_games_dic[game_time]
|
this_game, state, discrim_string = master_games_dic[game_time]
|
||||||
|
@ -134,5 +117,21 @@ def update_loop():
|
||||||
|
|
||||||
state["update_pause"] -= 1
|
state["update_pause"] -= 1
|
||||||
|
|
||||||
socketio.emit("states_update", data_to_send())
|
global data_to_send
|
||||||
|
template = jinja2.Environment(loader=jinja2.FileSystemLoader('templates')).get_template('game.html')
|
||||||
|
data_to_send = []
|
||||||
|
for timestamp in game_states:
|
||||||
|
data_to_send.append({
|
||||||
|
'timestamp' : timestamp,
|
||||||
|
'league' : game_states[timestamp]['leagueoruser'] if game_states[timestamp]['is_league'] else '',
|
||||||
|
'html' : template.render(
|
||||||
|
state=game_states[timestamp],
|
||||||
|
base_filled="/static/img/base_filled.png",
|
||||||
|
base_empty="/static/img/base_empty.png",
|
||||||
|
out_out="/static/img/out_out.png",
|
||||||
|
out_in="/static/img/out_in.png"
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
socketio.emit("states_update", data_to_send)
|
||||||
time.sleep(6)
|
time.sleep(6)
|
||||||
|
|
|
@ -14,9 +14,9 @@ $(document).ready(function (){
|
||||||
|
|
||||||
//get all leagues
|
//get all leagues
|
||||||
leagues = []
|
leagues = []
|
||||||
for (var i in json) {
|
for (var game of json) {
|
||||||
if (json[i].league != "" && !leagues.includes(json[i].league)) {
|
if (game.league != "" && !leagues.includes(game.league)) {
|
||||||
leagues.push(json[i].league)
|
leagues.push(game.league)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,15 +32,15 @@ $(document).ready(function (){
|
||||||
})
|
})
|
||||||
|
|
||||||
// add leagues not already present
|
// add leagues not already present
|
||||||
for (var i in leagues) { // we removed the entries that are already there in the loop above
|
for (var league of leagues) { // we removed the entries that are already there in the loop above
|
||||||
$('#filters').append("<button class='filter'>"+leagues[i]+"</button>");
|
$('#filters').append("<button class='filter'>"+league+"</button>");
|
||||||
}
|
}
|
||||||
|
|
||||||
//add click handlers to each filter
|
//add click handlers to each filter
|
||||||
$('#filters .filter').each(function(index) {
|
$('#filters .filter').each(function(index) {
|
||||||
$(this).click(function() {
|
$(this).click(function() {
|
||||||
if ($('#filters #selected_filter').text() == 'All') {
|
if ($('#filters #selected_filter').text() == 'All') {
|
||||||
updateGames(Object(), ""); // clear grid when switching off of All, to make games collapse to top
|
updateGames([], ""); // clear grid when switching off of All, to make games collapse to top
|
||||||
}
|
}
|
||||||
$('#filters #selected_filter').attr('id', '');
|
$('#filters #selected_filter').attr('id', '');
|
||||||
$(this).attr('id', 'selected_filter');
|
$(this).attr('id', 'selected_filter');
|
||||||
|
@ -50,10 +50,11 @@ $(document).ready(function (){
|
||||||
});
|
});
|
||||||
|
|
||||||
const updateGames = (json, filter) => {
|
const updateGames = (json, filter) => {
|
||||||
|
|
||||||
filterjson = [];
|
filterjson = [];
|
||||||
for (var i in json) {
|
for (var game of json) {
|
||||||
if (json[i].league == filter || filter == "All") {
|
if (game.league == filter || filter == "All") {
|
||||||
filterjson.push(json[i]);
|
filterjson.push(game);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,9 +73,16 @@ $(document).ready(function (){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i in filterjson) {
|
for (var game of filterjson) {
|
||||||
|
//updates game in list
|
||||||
|
for (var slotnum = 0; slotnum < grid.children.length; slotnum++) {
|
||||||
|
if (grid.children[slotnum].timestamp == game.timestamp) {
|
||||||
|
insertGame(slotnum, game);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
//adds game to list if not there already
|
//adds game to list if not there already
|
||||||
if (!Array.prototype.slice.call(grid.children).some((x) => x.timestamp == filterjson[i].timestamp)) {
|
if (!Array.prototype.slice.call(grid.children).some((x) => x.timestamp == game.timestamp)) {
|
||||||
for (var slotnum = 0; true; slotnum++) { //this is really a while loop but shh don't tell anyone
|
for (var slotnum = 0; true; slotnum++) { //this is really a while loop but shh don't tell anyone
|
||||||
if (slotnum >= grid.children.length) {
|
if (slotnum >= grid.children.length) {
|
||||||
for (var i = 0; i < 3; i ++) {
|
for (var i = 0; i < 3; i ++) {
|
||||||
|
@ -82,18 +90,11 @@ $(document).ready(function (){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (grid.children[slotnum].className == "emptyslot") {
|
if (grid.children[slotnum].className == "emptyslot") {
|
||||||
insertGame(slotnum, filterjson[i]);
|
insertGame(slotnum, game);
|
||||||
break;
|
break;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
//updates game in list
|
|
||||||
for (var slotnum = 0; slotnum < grid.children.length; slotnum++) {
|
|
||||||
if (grid.children[slotnum].timestamp == filterjson[i].timestamp) {
|
|
||||||
insertGame(slotnum, filterjson[i]);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//remove last rows if not needed
|
//remove last rows if not needed
|
||||||
|
|
Loading…
Reference in New Issue
Block a user