import 'package:flutter/material.dart'; import 'package:mensaappbackend/modules/ratingCard.dart'; import 'package:mensaappbackend/providers/pageProvider.dart'; import 'package:mensaappbackend/providers/viewProvider.dart'; import 'package:provider/provider.dart'; import 'package:supabase_flutter/supabase_flutter.dart'; class PageDashboard extends StatelessWidget { const PageDashboard({super.key}); Future> requestSupabaseToday() async { var supabase = Supabase.instance.client; var now = DateTime.now(); var morning = DateTime(now.year, now.month, now.day, 10, 0); var result = await supabase.from("ratings_database").select("ratings").gte("created_at", morning); return result; } final ratingNames = const { "page1": {"title": "Essen", "q1": "Geschmack", "q2": "Qualität"}, "page2": {"title": "Service", "q1": "Undefined", "q2": "Undefined"}, "page3": {"title": "Wünsche", "q1": "Undefined", "q2": "Undefined"} }; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( backgroundColor: Theme.of(context).colorScheme.primary, title: Text( "Dashboard", style: TextStyle(color: Theme.of(context).colorScheme.onPrimary), ), centerTitle: false, actions: [ TextButton.icon( onPressed: () { var supabase = Supabase.instance.client; supabase.auth.signOut(); Provider.of(context, listen: false) .setSelectedPage(0); }, label: Text( "Logout", style: TextStyle(color: Theme.of(context).colorScheme.onPrimary), ), icon: Icon( Icons.logout, color: Theme.of(context).colorScheme.onPrimary, ), ) ], ), body: FutureBuilder( future: requestSupabaseToday(), builder: (context, snapshot) { return Consumer ( builder: (context, viewProvider, child) { return viewProvider.views[viewProvider.selectedView]!(context, snapshot, ratingNames); }, ); }, ), ); } }