Spaces:
Running
Running
Commit
Β·
a6e2f58
1
Parent(s):
974b3b2
Formatting
Browse files- Templates/index.html +118 -113
Templates/index.html
CHANGED
@@ -342,121 +342,126 @@
|
|
342 |
|
343 |
|
344 |
function submitData() {
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
headers: {
|
365 |
-
'Content-Type': 'application/json',
|
366 |
-
},
|
367 |
-
body: JSON.stringify(games),
|
368 |
-
})
|
369 |
-
.then(response => response.json())
|
370 |
-
.then(data => {
|
371 |
-
if (data.moneylines && data.over_unders) {
|
372 |
-
const table = document.getElementById('gameTable');
|
373 |
-
const rows = table.querySelectorAll('tr');
|
374 |
-
|
375 |
-
data.moneylines.forEach((moneyline, index) => {
|
376 |
-
const row = rows[parseInt(moneyline.rowIndex) + 1];
|
377 |
-
|
378 |
-
const winnerCell = row.cells[row.cells.length - 2];
|
379 |
-
winnerCell.innerHTML = '';
|
380 |
-
|
381 |
-
const wrapperDiv = document.createElement('div');
|
382 |
-
wrapperDiv.className = 'winner-wrapper';
|
383 |
-
|
384 |
-
const winnerImg = document.createElement('img');
|
385 |
-
winnerImg.src = `/Static/${moneyline.Winner}.webp`;
|
386 |
-
winnerImg.alt = moneyline.Winner;
|
387 |
-
winnerImg.width = 50;
|
388 |
-
winnerImg.className = 'winner-image hidden';
|
389 |
-
wrapperDiv.appendChild(winnerImg);
|
390 |
-
|
391 |
-
const winnerEmojiDiv = document.createElement('div');
|
392 |
-
winnerEmojiDiv.className = 'emoji';
|
393 |
-
|
394 |
-
if (moneyline.Winner === moneyline.Result) {
|
395 |
-
winnerEmojiDiv.textContent = 'β
';
|
396 |
-
} else {
|
397 |
-
winnerEmojiDiv.textContent = 'β';
|
398 |
-
}
|
399 |
-
if (moneyline.Result === 'N/A') {
|
400 |
-
winnerEmojiDiv.textContent = `(${(moneyline.Probabilities[0] * 100).toFixed(1)}%)`;
|
401 |
-
}
|
402 |
-
wrapperDiv.appendChild(winnerEmojiDiv);
|
403 |
-
|
404 |
-
setTimeout(() => {
|
405 |
-
winnerImg.classList.remove('hidden');
|
406 |
-
}, 10);
|
407 |
-
|
408 |
-
const winnerOverlayDiv = document.createElement('div');
|
409 |
-
winnerOverlayDiv.className = 'overlay';
|
410 |
-
winnerOverlayDiv.textContent = `${(moneyline.Probabilities[0] * 100).toFixed(2)}%`;
|
411 |
-
//wrapperDiv.appendChild(winnerOverlayDiv);
|
412 |
-
winnerCell.appendChild(wrapperDiv);
|
413 |
-
|
414 |
-
const overUnderCell = row.cells[row.cells.length - 1];
|
415 |
-
overUnderCell.innerHTML = '';
|
416 |
-
|
417 |
-
const overUnderDiv = document.createElement('div');
|
418 |
-
overUnderDiv.className = 'over-under-wrapper hidden';
|
419 |
-
|
420 |
-
const textDiv = document.createElement('div');
|
421 |
-
textDiv.className = 'over-under-text';
|
422 |
-
textDiv.textContent = data.over_unders[index]['Over/Under'];
|
423 |
-
if (textDiv.textContent === 'Over') {
|
424 |
-
overUnderDiv.className += ' over';
|
425 |
-
} else if (textDiv.textContent === 'Under') {
|
426 |
-
overUnderDiv.className += ' under';
|
427 |
-
} else {
|
428 |
-
overUnderDiv.className += ' na';
|
429 |
-
}
|
430 |
-
|
431 |
-
overUnderDiv.appendChild(textDiv);
|
432 |
-
|
433 |
-
const overEmojiDiv = document.createElement('div');
|
434 |
-
overEmojiDiv.className = 'emoji';
|
435 |
-
|
436 |
-
if (data.over_unders[index]['Over/Under'] === data.over_unders[index]['Result']) {
|
437 |
-
overEmojiDiv.textContent = 'β
';
|
438 |
-
} else {
|
439 |
-
overEmojiDiv.textContent = 'β';
|
440 |
-
}
|
441 |
-
if (data.over_unders[index]['Result'] === 'N/A') {
|
442 |
-
overEmojiDiv.textContent = `(${(data.over_unders[index]['Probability'][0] * 100).toFixed(1)}%)`;
|
443 |
-
}
|
444 |
-
overUnderDiv.appendChild(overEmojiDiv);
|
445 |
-
|
446 |
-
setTimeout(() => {
|
447 |
-
overUnderDiv.classList.remove('hidden');
|
448 |
-
}, 10);
|
449 |
-
|
450 |
-
const overUnderOverlayDiv = document.createElement('div');
|
451 |
-
overUnderOverlayDiv.className = 'overlay';
|
452 |
-
overUnderOverlayDiv.textContent = `${(data.over_unders[index]['Probability'][0] * 100).toFixed(2)}%`;
|
453 |
-
//overUnderDiv.appendChild(overUnderOverlayDiv);
|
454 |
|
455 |
-
|
456 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
457 |
});
|
458 |
-
|
459 |
-
|
460 |
}
|
461 |
|
462 |
document.getElementById('submitButton').addEventListener('click', submitData);
|
|
|
342 |
|
343 |
|
344 |
function submitData() {
|
345 |
+
const predictButton = document.getElementById('submitButton');
|
346 |
+
const table = document.getElementById('gameTable');
|
347 |
+
const rows = table.querySelectorAll('tr');
|
348 |
+
const games = [];
|
349 |
+
|
350 |
+
predictButton.textContent = 'Predicting...';
|
351 |
+
|
352 |
+
rows.forEach((row, index) => {
|
353 |
+
if (index === 0) return;
|
354 |
+
const cells = row.querySelectorAll('td');
|
355 |
+
const game = {};
|
356 |
+
|
357 |
+
game.Date = cells[0].textContent;
|
358 |
+
game.AwayTeam = cells[1].querySelector('img').alt;
|
359 |
+
game.HomeTeam = cells[2].querySelector('img').alt;
|
360 |
+
game.OverUnderLine = cells[3].querySelector('input').value;
|
361 |
+
game.rowIndex = index - 1;
|
362 |
+
games.push(game);
|
363 |
+
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
364 |
|
365 |
+
fetch('/submit_games', {
|
366 |
+
method: 'POST',
|
367 |
+
headers: {
|
368 |
+
'Content-Type': 'application/json',
|
369 |
+
},
|
370 |
+
body: JSON.stringify(games),
|
371 |
+
})
|
372 |
+
.then(response => response.json())
|
373 |
+
.then(data => {
|
374 |
+
if (data.moneylines && data.over_unders) {
|
375 |
+
const table = document.getElementById('gameTable');
|
376 |
+
const rows = table.querySelectorAll('tr');
|
377 |
+
|
378 |
+
data.moneylines.forEach((moneyline, index) => {
|
379 |
+
const row = rows[parseInt(moneyline.rowIndex) + 1];
|
380 |
+
|
381 |
+
const winnerCell = row.cells[row.cells.length - 2];
|
382 |
+
winnerCell.innerHTML = '';
|
383 |
+
|
384 |
+
const wrapperDiv = document.createElement('div');
|
385 |
+
wrapperDiv.className = 'winner-wrapper';
|
386 |
+
|
387 |
+
const winnerImg = document.createElement('img');
|
388 |
+
winnerImg.src = `/Static/${moneyline.Winner}.webp`;
|
389 |
+
winnerImg.alt = moneyline.Winner;
|
390 |
+
winnerImg.width = 50;
|
391 |
+
winnerImg.className = 'winner-image hidden';
|
392 |
+
wrapperDiv.appendChild(winnerImg);
|
393 |
+
|
394 |
+
const winnerEmojiDiv = document.createElement('div');
|
395 |
+
winnerEmojiDiv.className = 'emoji';
|
396 |
+
|
397 |
+
if (moneyline.Winner === moneyline.Result) {
|
398 |
+
winnerEmojiDiv.textContent = 'β
';
|
399 |
+
} else {
|
400 |
+
winnerEmojiDiv.textContent = 'β';
|
401 |
+
}
|
402 |
+
if (moneyline.Result === 'N/A') {
|
403 |
+
winnerEmojiDiv.textContent = `(${(moneyline.Probabilities[0] * 100).toFixed(1)}%)`;
|
404 |
+
}
|
405 |
+
wrapperDiv.appendChild(winnerEmojiDiv);
|
406 |
+
|
407 |
+
setTimeout(() => {
|
408 |
+
winnerImg.classList.remove('hidden');
|
409 |
+
}, 10);
|
410 |
+
|
411 |
+
const winnerOverlayDiv = document.createElement('div');
|
412 |
+
winnerOverlayDiv.className = 'overlay';
|
413 |
+
winnerOverlayDiv.textContent = `${(moneyline.Probabilities[0] * 100).toFixed(2)}%`;
|
414 |
+
//wrapperDiv.appendChild(winnerOverlayDiv);
|
415 |
+
winnerCell.appendChild(wrapperDiv);
|
416 |
+
|
417 |
+
const overUnderCell = row.cells[row.cells.length - 1];
|
418 |
+
overUnderCell.innerHTML = '';
|
419 |
+
|
420 |
+
const overUnderDiv = document.createElement('div');
|
421 |
+
overUnderDiv.className = 'over-under-wrapper hidden';
|
422 |
+
|
423 |
+
const textDiv = document.createElement('div');
|
424 |
+
textDiv.className = 'over-under-text';
|
425 |
+
textDiv.textContent = data.over_unders[index]['Over/Under'];
|
426 |
+
if (textDiv.textContent === 'Over') {
|
427 |
+
overUnderDiv.className += ' over';
|
428 |
+
} else if (textDiv.textContent === 'Under') {
|
429 |
+
overUnderDiv.className += ' under';
|
430 |
+
} else {
|
431 |
+
overUnderDiv.className += ' na';
|
432 |
+
}
|
433 |
+
|
434 |
+
overUnderDiv.appendChild(textDiv);
|
435 |
+
|
436 |
+
const overEmojiDiv = document.createElement('div');
|
437 |
+
overEmojiDiv.className = 'emoji';
|
438 |
+
|
439 |
+
if (data.over_unders[index]['Over/Under'] === data.over_unders[index]['Result']) {
|
440 |
+
overEmojiDiv.textContent = 'β
';
|
441 |
+
} else {
|
442 |
+
overEmojiDiv.textContent = 'β';
|
443 |
+
}
|
444 |
+
if (data.over_unders[index]['Result'] === 'N/A') {
|
445 |
+
overEmojiDiv.textContent = `(${(data.over_unders[index]['Probability'][0] * 100).toFixed(1)}%)`;
|
446 |
+
}
|
447 |
+
overUnderDiv.appendChild(overEmojiDiv);
|
448 |
+
|
449 |
+
setTimeout(() => {
|
450 |
+
overUnderDiv.classList.remove('hidden');
|
451 |
+
}, 10);
|
452 |
+
|
453 |
+
const overUnderOverlayDiv = document.createElement('div');
|
454 |
+
overUnderOverlayDiv.className = 'overlay';
|
455 |
+
overUnderOverlayDiv.textContent = `${(data.over_unders[index]['Probability'][0] * 100).toFixed(2)}%`;
|
456 |
+
//overUnderDiv.appendChild(overUnderOverlayDiv);
|
457 |
+
|
458 |
+
overUnderCell.appendChild(overUnderDiv);
|
459 |
+
|
460 |
+
});
|
461 |
+
}
|
462 |
});
|
463 |
+
|
464 |
+
predictButton.textContent = 'Predict';
|
465 |
}
|
466 |
|
467 |
document.getElementById('submitButton').addEventListener('click', submitData);
|