fApp/lib/screens/login_screen.dart
Flummi ee2db04a36
All checks were successful
Flutter Schmutter / build (push) Successful in 3m47s
v1.3.3+59
2025-06-17 19:03:40 +02:00

69 lines
1.9 KiB
Dart

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:f0ckapp/controller/auth_controller.dart';
class LoginPage extends StatefulWidget {
const LoginPage({super.key});
@override
State<StatefulWidget> createState() => _LoginPageState();
}
class _LoginPageState extends State<LoginPage> {
final AuthController authController = Get.find();
final TextEditingController usernameController = TextEditingController();
final TextEditingController passwordController = TextEditingController();
void _showMsg(String message, {String title = ''}) {
Get
..closeAllSnackbars()
..snackbar(message, title, snackPosition: SnackPosition.BOTTOM);
}
@override
void dispose() {
usernameController.dispose();
passwordController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: CustomScrollView(
slivers: [
SliverAppBar(floating: false, pinned: true, title: Text('Login')),
SliverList(
delegate: SliverChildListDelegate([
ListTile(
title: Text('Benutzername'),
subtitle: TextField(controller: usernameController),
),
ListTile(
title: Text('Passwort'),
subtitle: TextField(
controller: passwordController,
obscureText: true,
),
),
ElevatedButton(
onPressed: () async {
final success = await authController.login(
usernameController.text,
passwordController.text,
);
if (!success) {
_showMsg('Login fehlgeschlagen!');
}
},
child: Text('Login'),
),
]),
),
],
),
);
}
}