import { createRoom, joinRoom } from "../services/classroom.js";
export function renderLandingView() {
return `
VIBECODING
`;
}
export function setupLandingEvents(navigateTo) {
const joinBtn = document.getElementById('join-btn');
const instructorBtn = document.getElementById('instructor-mode-btn');
joinBtn.addEventListener('click', async () => {
const roomCode = document.getElementById('room-code-input').value.trim();
const nickname = document.getElementById('nickname-input').value.trim();
if (!roomCode || !nickname) {
alert('請輸入教室代碼和暱稱');
return;
}
try {
joinBtn.textContent = '加入中...';
joinBtn.disabled = true;
const studentId = await joinRoom(roomCode, nickname);
// Save Session
localStorage.setItem('vibecoding_user_id', studentId);
localStorage.setItem('vibecoding_room_code', roomCode);
localStorage.setItem('vibecoding_nickname', nickname);
navigateTo('student');
} catch (error) {
alert('加入失敗: ' + error.message);
joinBtn.textContent = '進入教室';
joinBtn.disabled = false;
}
});
instructorBtn.addEventListener('click', () => {
// Clear any previous admin referer to ensure clean state
localStorage.removeItem('vibecoding_admin_referer');
navigateTo('instructor');
});
}