Fix sign-in, title bar, formatting

This commit is contained in:
Reimar 2024-08-27 08:21:15 +02:00
parent e996702408
commit de8d898289
Signed by: Reimar
GPG Key ID: 93549FA07F0AE268
2 changed files with 88 additions and 95 deletions

View File

@ -67,10 +67,8 @@ Future<bool> isLoggedIn(BuildContext context) async {
final prefs = await SharedPreferences.getInstance(); final prefs = await SharedPreferences.getInstance();
final token = prefs.getString('token'); final token = prefs.getString('token');
if (token == null){ if (token == null) {
prefs.remove('id'); prefs.remove('id');
loggedIn = false;
user = User as User?;
return false; return false;
} }

View File

@ -52,101 +52,96 @@ class _SideMenuState extends State<SideMenu> {
} }
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
appBar: AppBar( appBar: AppBar(
backgroundColor: Theme.of(context).colorScheme.inversePrimary, backgroundColor: Theme.of(context).colorScheme.inversePrimary,
title: Row( title: Text('SkanTravels',
children: [ style: GoogleFonts.jacquesFrancois(
const SizedBox(width: 55), fontSize: 30,
Text('SkanTravels', color: Colors.black,
style: GoogleFonts.jacquesFrancois(
fontSize: 30,
color: Colors.black,
),
), ),
], ),
), ),
), drawer: Drawer(
drawer: Drawer( child: ListView(
child: ListView( padding: EdgeInsets.zero,
padding: EdgeInsets.zero, children: [
children: [ DrawerHeader(
DrawerHeader( child: Column(
child: Column( children: [
children: [ const Image(image: AssetImage('assets/logo.png'), height: 100),
const Image(image: AssetImage('assets/logo.png'), height: 100), Text(
Text( 'SkanTravels',
'SkanTravels', style: GoogleFonts.jacquesFrancois(
style: GoogleFonts.jacquesFrancois( fontSize: 20,
fontSize: 20, color: const Color(0xFF1862E7),
color: const Color(0xFF1862E7), ),
), ),
), ],
], ),
), ),
), ListTile(
ListTile( title: const Text('Home'),
title: const Text('Home'), leading: const Icon(Icons.home),
leading: const Icon(Icons.home), selected: _selectedIndex == 0,
selected: _selectedIndex == 0, onTap: () {
onTap: () { Navigator.pushReplacementNamed(context, '/home');
Navigator.pushReplacementNamed(context, '/home'); },
}, ),
), ListTile(
ListTile( title: const Text('Favorites'),
title: const Text('Favorites'), leading: const Icon(Icons.star),
leading: const Icon(Icons.star), selected: _selectedIndex == 1,
selected: _selectedIndex == 1, onTap: () {
onTap: () { Navigator.pushReplacementNamed(context, '/favorites');
Navigator.pushReplacementNamed(context, '/favorites'); },
}, ),
), ListTile(
ListTile( title: const Text('Profile'),
title: const Text('Profile'), leading: const Icon(Icons.person),
leading: const Icon(Icons.person), selected: _selectedIndex == 2,
selected: _selectedIndex == 2, onTap: () {
onTap: () { Navigator.pushReplacementNamed(context, '/profile');
Navigator.pushReplacementNamed(context, '/profile'); },
}, ),
), const Divider(
const Divider( color: Colors.grey,
color: Colors.grey, thickness: 2,
thickness: 2, indent: 40,
indent: 40, ),
), ...(loggedIn
...(loggedIn ? [
? [ ListTile(
ListTile( title: const Text('Log out'),
title: const Text('Log out'), leading: const Icon(Icons.logout),
leading: const Icon(Icons.logout), selected: false,
selected: false, onTap: _logout,
onTap: _logout, ),
), ]
] : [
: [ ListTile(
ListTile( title: const Text('Register'),
title: const Text('Register'), leading: const Icon(Icons.add_box_outlined),
leading: const Icon(Icons.add_box_outlined), selected: _selectedIndex == 3,
selected: _selectedIndex == 3, onTap: () {
onTap: () { Navigator.pushReplacementNamed(context, '/register');
Navigator.pushReplacementNamed(context, '/register'); },
}, ),
), ListTile(
ListTile( title: const Text('Login'),
title: const Text('Login'), leading: const Icon(Icons.login),
leading: const Icon(Icons.login), selected: _selectedIndex == 4,
selected: _selectedIndex == 4, onTap: () {
onTap: () { Navigator.pushReplacementNamed(context, '/login');
Navigator.pushReplacementNamed(context, '/login'); },
}, ),
), ]
] ),
), ],
], ),
), ),
), body: widget.body,
body: widget.body, );
); }
}
} }