sto-k-odnomu/src/pages/Home.jsx

70 lines
1.8 KiB
React
Raw Normal View History

2026-01-03 14:07:04 +00:00
import React, { useEffect } from 'react';
import { useNavigate } from 'react-router-dom';
import { useAuth } from '../context/AuthContext';
const Home = () => {
const navigate = useNavigate();
const { user, loginAnonymous, isAuthenticated } = useAuth();
useEffect(() => {
const initAuth = async () => {
if (!isAuthenticated) {
try {
await loginAnonymous('Гость');
} catch (error) {
console.error('Auto login failed:', error);
}
}
};
initAuth();
}, [isAuthenticated, loginAnonymous]);
const handleCreateRoom = () => {
navigate('/create-room');
};
const handleJoinRoom = () => {
navigate('/join-room');
};
const handleLocalGame = () => {
navigate('/local-game');
};
return (
<div className="home-page">
<div className="home-container">
<h1>100 к 1</h1>
<p className="welcome-text">
{user ? `Привет, ${user.name}!` : 'Добро пожаловать!'}
</p>
<div className="menu-buttons">
<button onClick={handleCreateRoom} className="menu-button primary">
Создать комнату
</button>
<button onClick={handleJoinRoom} className="menu-button">
Присоединиться к комнате
</button>
<button onClick={handleLocalGame} className="menu-button">
Локальная игра
</button>
</div>
{user && (
<div className="user-stats">
<p>Игр сыграно: {user.gamesPlayed || 0}</p>
<p>Побед: {user.gamesWon || 0}</p>
<p>Очков: {user.totalPoints || 0}</p>
</div>
)}
</div>
</div>
);
};
export default Home;