mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-17 10:00:46 -04:00
did stuff
This commit is contained in:
@@ -8,9 +8,16 @@ registerModule('services/roverUI', (require, exports) => {
|
||||
const sensorOutput = document.getElementById('sensorOutput');
|
||||
const requestBtn = document.getElementById('requestControl');
|
||||
const lockBtn = document.getElementById('lockToggle');
|
||||
const activeDriverEl = document.getElementById('activeDriver');
|
||||
|
||||
let roster = [];
|
||||
|
||||
state.onRoleChange((role) => {
|
||||
const isAdmin = role === 'admin' || role === 'lockdown';
|
||||
if (requestBtn) requestBtn.disabled = !isAdmin;
|
||||
if (lockBtn) lockBtn.disabled = !isAdmin;
|
||||
});
|
||||
|
||||
socket.on('rovers', (list) => {
|
||||
roster = list;
|
||||
roverSelect.innerHTML = '';
|
||||
@@ -48,6 +55,13 @@ registerModule('services/roverUI', (require, exports) => {
|
||||
sensorOutput.textContent = lines.join('\n');
|
||||
});
|
||||
|
||||
socket.on('activeDriver', ({ roverId, socketId }) => {
|
||||
if (roverId !== state.getSelected()) return;
|
||||
if (activeDriverEl) {
|
||||
activeDriverEl.textContent = `Active driver: ${socketId || 'none'}`;
|
||||
}
|
||||
});
|
||||
|
||||
requestBtn?.addEventListener('click', () => {
|
||||
socket.emit('requestControl', { roverId: state.getSelected() });
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user