import 'package:flutter/material.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:ta_running/screens/auth/login_screen.dart'; import 'package:ta_running/screens/main_screen.dart'; import 'package:cloud_firestore/cloud_firestore.dart'; import 'super_user_dashboard.dart'; class SplashScreen extends StatefulWidget { const SplashScreen({super.key}); @override State createState() => _SplashScreenState(); } class _SplashScreenState extends State { @override void initState() { super.initState(); _checkLogin(); } Future _checkLogin() async { await Future.delayed(const Duration(seconds: 2)); final user = FirebaseAuth.instance.currentUser; if (user != null) { // Ambil data user dari Firestore final doc = await FirebaseFirestore.instance .collection('users') .doc(user.uid) .get(); final role = doc.data()?['role'] ?? 'runner'; if (role == 'superuser') { Navigator.pushReplacement( context, MaterialPageRoute(builder: (_) => SuperUserDashboard()), ); } else { Navigator.pushReplacement( context, MaterialPageRoute(builder: (_) => const MainScreen()), ); } } else { Navigator.pushReplacement( context, MaterialPageRoute(builder: (_) => const LoginScreen()), ); } } @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.blueAccent, body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Image.asset( 'images/run.png', width: 100, height: 100, ), const SizedBox(height: 20), const Text( 'Selamat Datang, Runners!', style: TextStyle( fontSize: 26, fontWeight: FontWeight.bold, color: Colors.white, letterSpacing: 1.2, ), ), const SizedBox(height: 10), const Text( 'Ayo mulai lari dan pantau performamu!', style: TextStyle( fontSize: 16, color: Colors.white70, ), ), ], ), ), ); } }