diff --git a/refilc_mobile_ui/lib/screens/login/kreten_login.dart b/refilc_mobile_ui/lib/screens/login/kreten_login.dart index 2c44d627..59a6b580 100644 --- a/refilc_mobile_ui/lib/screens/login/kreten_login.dart +++ b/refilc_mobile_ui/lib/screens/login/kreten_login.dart @@ -24,10 +24,11 @@ import 'package:flutter/material.dart'; import 'package:webview_flutter/webview_flutter.dart'; class KretenLoginWidget extends StatefulWidget { - const KretenLoginWidget({super.key, required this.onLogin}); + const KretenLoginWidget({super.key, required this.onLogin, this.onDemoMode}); // final String selectedSchool; final void Function(String code) onLogin; + final VoidCallback? onDemoMode; @override State createState() => _KretenLoginWidgetState(); @@ -259,6 +260,13 @@ class _KretenLoginWidgetState extends State icon: const Icon(Icons.refresh), label: const Text('Próbáld újra'), ), + if (widget.onDemoMode != null) ...[ + const SizedBox(height: 12), + OutlinedButton( + onPressed: widget.onDemoMode, + child: const Text('Kipróbálom fiók nélkül'), + ), + ], const SizedBox(height: 12), TextButton( onPressed: () => Navigator.of(context).pop(), diff --git a/refilc_mobile_ui/lib/screens/login/login_screen.dart b/refilc_mobile_ui/lib/screens/login/login_screen.dart index 6c95e732..35b84d6e 100644 --- a/refilc_mobile_ui/lib/screens/login/login_screen.dart +++ b/refilc_mobile_ui/lib/screens/login/login_screen.dart @@ -279,7 +279,7 @@ class LoginScreenState extends State { context: context, isScrollControlled: true, // This ensures the modal accommodates input fields properly - builder: (BuildContext context) { + builder: (BuildContext sheetContext) { return Container( height: MediaQuery.of(context) .size @@ -355,6 +355,15 @@ class LoginScreenState extends State { context) .pop(); }, + onDemoMode: () { + Navigator.of(context).pop(); + final userProvider = Provider.of(context, listen: false); + final demoUser = User.demo(); + userProvider.addUser(demoUser); + userProvider.setUser(demoUser.id); + setSystemChrome(context); + Navigator.of(context).pushReplacementNamed('login_to_navigation'); + }, ), ), ),