From 43c8d6dc28899f6bf1cb0448a6be8aefcf2d0151 Mon Sep 17 00:00:00 2001 From: Nicolas Gruber Date: Thu, 27 Apr 2023 15:16:23 +0200 Subject: [PATCH] =?UTF-8?q?CitizenForum=20hinzugef=C3=BCgt=20und=20deutsch?= =?UTF-8?q?es=20Datum?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/UserDefinedList.dart | 64 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 6 deletions(-) diff --git a/lib/UserDefinedList.dart b/lib/UserDefinedList.dart index e80e0de..2a1547e 100644 --- a/lib/UserDefinedList.dart +++ b/lib/UserDefinedList.dart @@ -130,11 +130,12 @@ class _NewsListState extends State { return ListView.builder( itemCount: documents.length, itemBuilder: (BuildContext context, int index) { - final Map data = - documents[index].data()! as Map; + final Map data = documents[index].data()! as Map; + final DateTime createdDate = data['createdDate'].toDate(); + final formattedDate = DateFormat('dd.MM.yyyy').format(createdDate); return UserDefinedItem( title: data['title'] ?? '', - datum: (data['createdDate'].toDate().toString()).substring(0,10), + datum: formattedDate, description: data['description'] ?? '', image: Image.network((data['imageUrl'])), ); @@ -147,7 +148,7 @@ class _NewsListState extends State { } - class IssueList extends StatefulWidget { +class IssueList extends StatefulWidget { const IssueList({Key? key}) : super(key: key); @override @@ -181,11 +182,62 @@ class _IssueListState extends State { itemCount: documents.length, itemBuilder: (BuildContext context, int index) { final Map data = documents[index].data()! as Map; + final DateTime createdDate = data['createdDate'].toDate(); + final formattedDate = DateFormat('dd.MM.yyyy').format(createdDate); return UserDefinedItem( title: data['title'] ?? '', - datum: (data['createdDate'].toDate().toString()).substring(0,10), + datum: formattedDate, description: data['description'] ?? '', - image: Image.network(data['imageUrl'] ?? ''), + image: Image.network((data['imageUrl'])), + ); + }, + ); + } + }, + ); + } +} +class CitizensForum extends StatefulWidget { + const CitizensForum({Key? key}) : super(key: key); + + @override + _CitizensForum createState() => _CitizensForum(); +} + +class _CitizensForum extends State { + final FirebaseFirestore firestore = FirebaseFirestore.instance; + late Stream citizenStream; + + @override + void initState() { + super.initState(); + citizenStream = firestore.collection('CitizensForum').snapshots(); + } + + @override + Widget build(BuildContext context) { + return StreamBuilder( + stream: citizenStream, + builder: (BuildContext context, AsyncSnapshot snapshot) { + if (snapshot.hasError) { + return Text('Error: ${snapshot.error}'); + } + switch (snapshot.connectionState) { + case ConnectionState.waiting: + return const Text('Loading...'); + default: + final List documents = snapshot.data!.docs; + return ListView.builder( + itemCount: documents.length, + itemBuilder: (BuildContext context, int index) { + final Map data = documents[index].data()! as Map; + final DateTime createdDate = data['createdDate'].toDate(); + final formattedDate = DateFormat('dd.MM.yyyy').format(createdDate); + return UserDefinedItem( + title: data['title'] ?? '', + datum: formattedDate, + description: data['description'] ?? '', + image: Image.network((data['imageUrl'])), ); }, );