diff --git a/lib/state/app/modules/marianumMessage/view/marianum_message_list_view.dart b/lib/state/app/modules/marianumMessage/view/marianum_message_list_view.dart index bab6a1d..1957886 100644 --- a/lib/state/app/modules/marianumMessage/view/marianum_message_list_view.dart +++ b/lib/state/app/modules/marianumMessage/view/marianum_message_list_view.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; -import '../../../../../api/mhsl/message/getMessages/getMessagesResponse.dart'; -import '../../../../../view/pages/more/message/messageView.dart'; +import 'marianum_message_view.dart'; import '../../../infrastructure/loadableState/loadable_state.dart'; import '../../../infrastructure/loadableState/view/loadable_state_consumer.dart'; import '../../../infrastructure/utilityWidgets/bloc_module.dart'; @@ -32,7 +31,7 @@ class MarianumMessageListView extends StatelessWidget { subtitle: Text('vom ${message.date}'), trailing: const Icon(Icons.arrow_right), onTap: () { - Navigator.push(context, MaterialPageRoute(builder: (context) => MessageView(basePath: state.messageList.base, message: message as GetMessagesResponseObject))); + Navigator.push(context, MaterialPageRoute(builder: (context) => MessageView(basePath: state.messageList.base, message: message))); }, ); } diff --git a/lib/view/pages/more/message/messageView.dart b/lib/state/app/modules/marianumMessage/view/marianum_message_view.dart similarity index 91% rename from lib/view/pages/more/message/messageView.dart rename to lib/state/app/modules/marianumMessage/view/marianum_message_view.dart index 791a2ed..ae8fd36 100644 --- a/lib/view/pages/more/message/messageView.dart +++ b/lib/state/app/modules/marianumMessage/view/marianum_message_view.dart @@ -2,12 +2,12 @@ import 'package:flutter/material.dart'; import 'package:syncfusion_flutter_pdfviewer/pdfviewer.dart'; import 'package:url_launcher/url_launcher.dart'; -import '../../../../api/mhsl/message/getMessages/getMessagesResponse.dart'; -import '../../../../widget/confirmDialog.dart'; +import '../bloc/marianum_message_state.dart'; +import '../../../../../widget/confirmDialog.dart'; class MessageView extends StatefulWidget { final String basePath; - final GetMessagesResponseObject message; + final MarianumMessage message; const MessageView({super.key, required this.basePath, required this.message}); @override diff --git a/lib/view/pages/more/message/message.dart b/lib/view/pages/more/message/message.dart deleted file mode 100644 index d9be17f..0000000 --- a/lib/view/pages/more/message/message.dart +++ /dev/null @@ -1,59 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; - -import '../../../../model/message/messageProps.dart'; -import '../../../../widget/loadingSpinner.dart'; -import 'messageView.dart'; - - -class Message extends StatefulWidget { - const Message({super.key}); - - @override - State createState() => _MessageState(); -} - -class _MessageState extends State { - @override - void initState() { - WidgetsBinding.instance.addPostFrameCallback((timeStamp) { - Provider.of(context, listen: false).run(); - }); - super.initState(); - } - - @override - Widget build(BuildContext context) => Scaffold( - appBar: AppBar( - title: const Text('Marianum Message'), - ), - body: Consumer(builder: (context, value, child) { - if(value.primaryLoading()) return const LoadingSpinner(); - - return RefreshIndicator( - child: ListView.builder( - itemCount: value.getMessagesResponse.messages.length, - itemBuilder: (context, index) { - var message = value.getMessagesResponse.messages.toList()[index]; - return ListTile( - leading: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [Icon(Icons.newspaper)], - ), - title: Text(message.name, overflow: TextOverflow.ellipsis), - subtitle: Text('vom ${message.date}'), - trailing: const Icon(Icons.arrow_right), - onTap: () { - Navigator.push(context, MaterialPageRoute(builder: (context) => MessageView(basePath: value.getMessagesResponse.base, message: message))); - }, - ); - } - ), - onRefresh: () { - Provider.of(context, listen: false).run(renew: true); - return Future.delayed(const Duration(seconds: 3)); - }, - ); - }), - ); -}