Skip to content

Commit

Permalink
feat(jury-tool): allow specifying backend url
Browse files Browse the repository at this point in the history
  • Loading branch information
Benjamin-Frost committed May 25, 2024
1 parent 3ce63da commit 5e1ab84
Showing 1 changed file with 46 additions and 10 deletions.
56 changes: 46 additions & 10 deletions jury/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,30 @@
padding: 1rem;
margin: 0;
}

#urlInputContainer {
text-align: center;
margin-bottom: 1rem;
}

#urlInput {
width: 300px;
padding: 0.5rem;
font-size: 1rem;
}

#setUrlButton {
padding: 0.5rem 1rem;
font-size: 1rem;
}
</style>
</head>
<body>
<h1>Jury Tool</h1>
<div id="urlInputContainer">
<input type="text" id="urlInput" placeholder="Enter backend URL" />
<button id="setUrlButton">Set URL</button>
</div>
<div id="events"></div>
<script>
const events = [
Expand All @@ -52,6 +72,8 @@ <h1>Jury Tool</h1>
'aec-cc',
];

let backendUrl = '';

// Create html elements for each event
events.forEach((event) => {
const div = document.createElement('div');
Expand All @@ -64,21 +86,35 @@ <h1>Jury Tool</h1>

const pre = document.createElement('pre');
pre.id = event + '-data';
pre.textContent = 'Loading...';
pre.textContent = 'Enter a backend URL to start';
document.getElementById(event).appendChild(pre);
});

// Update data for each event, every second
setInterval(() => {
document.getElementById('setUrlButton').addEventListener('click', () => {
backendUrl = document.getElementById('urlInput').value;
if (backendUrl) {
updateEventData();
}
});

function updateEventData() {
// Update text to "Loading..." once fetching starts
events.forEach((event) => {
fetch(`http://localhost:3000/events/${event}/subscribe?wait=false`)
.then((response) => response.json())
.then((data) => {
document.getElementById(event + '-data').textContent =
JSON.stringify(data, null, 2);
});
document.getElementById(event + '-data').textContent = 'Loading...';
});
}, 1000);

// Update data for each event, every second
setInterval(() => {
events.forEach((event) => {
fetch(`${backendUrl}/events/${event}/subscribe?wait=false`)
.then((response) => response.json())
.then((data) => {
document.getElementById(event + '-data').textContent =
JSON.stringify(data, null, 2);
});
});
}, 1000);
}
</script>
</body>
</html>

0 comments on commit 5e1ab84

Please sign in to comment.