diff --git a/.idea/libraries/Dart_Packages.xml b/.idea/libraries/Dart_Packages.xml
index 5da2980..ad74def 100644
--- a/.idea/libraries/Dart_Packages.xml
+++ b/.idea/libraries/Dart_Packages.xml
@@ -47,7 +47,7 @@
-
+
@@ -131,14 +131,14 @@
-
+
-
+
@@ -152,7 +152,7 @@
-
+
@@ -208,7 +208,7 @@
-
+
@@ -229,7 +229,7 @@
-
+
@@ -257,7 +257,7 @@
-
+
@@ -299,7 +299,7 @@
-
+
@@ -327,35 +327,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -439,7 +411,7 @@
-
+
@@ -488,14 +460,14 @@
-
+
-
+
@@ -530,14 +502,14 @@
-
+
-
+
@@ -555,31 +527,10 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -635,7 +586,7 @@
-
+
@@ -656,7 +607,7 @@
-
+
@@ -698,7 +649,7 @@
-
+
@@ -754,7 +705,7 @@
-
+
@@ -768,7 +719,7 @@
-
+
@@ -880,7 +831,7 @@
-
+
@@ -1020,63 +971,63 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -1104,7 +1055,7 @@
-
+
@@ -1125,7 +1076,7 @@
-
+
@@ -1139,7 +1090,7 @@
-
+
@@ -1174,7 +1125,7 @@
-
+
@@ -1259,15 +1210,15 @@
-
-
+
+
-
+
@@ -1279,10 +1230,10 @@
-
-
+
+
-
+
@@ -1290,14 +1241,14 @@
-
+
-
+
-
+
@@ -1306,11 +1257,7 @@
-
-
-
-
-
+
@@ -1319,25 +1266,22 @@
-
+
-
-
+
+
-
-
+
+
-
-
-
-
+
@@ -1345,10 +1289,10 @@
-
+
-
+
@@ -1361,9 +1305,9 @@
-
+
-
+
@@ -1379,7 +1323,7 @@
-
+
@@ -1398,29 +1342,29 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
diff --git a/.idea/libraries/Flutter_Plugins.xml b/.idea/libraries/Flutter_Plugins.xml
index e9465cf..e0b5f46 100644
--- a/.idea/libraries/Flutter_Plugins.xml
+++ b/.idea/libraries/Flutter_Plugins.xml
@@ -20,23 +20,17 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/view/pages/timetable/appointmentDetails.dart b/lib/view/pages/timetable/appointmentDetails.dart
index e76a1f6..fd37dd7 100644
--- a/lib/view/pages/timetable/appointmentDetails.dart
+++ b/lib/view/pages/timetable/appointmentDetails.dart
@@ -22,8 +22,20 @@ class AppointmentDetails {
GetTimetableResponseObject timetableData = appointment.id as GetTimetableResponseObject;
//GetTimetableResponseObject timetableData = webuntisData.getTimetableResponse.result.firstWhere((element) => element.id == timetableObject.id);
- GetSubjectsResponseObject subject = webuntisData.getSubjectsResponse.result.firstWhere((subject) => subject.id == timetableData.su[0]['id']);
- GetRoomsResponseObject room = webuntisData.getRoomsResponse.result.firstWhere((room) => room.id == timetableData.ro[0]['id']);
+ GetSubjectsResponseObject subject;
+ GetRoomsResponseObject room;
+
+ try {
+ subject = webuntisData.getSubjectsResponse.result.firstWhere((subject) => subject.id == timetableData.su[0]['id']);
+ } catch(e) {
+ subject = GetSubjectsResponseObject(0, "?", "Lesefehler", "?", true);
+ }
+
+ try {
+ room = webuntisData.getRoomsResponse.result.firstWhere((room) => room.id == timetableData.ro[0]['id']);
+ } catch(e) {
+ room = GetRoomsResponseObject(0, "?", "Lesefehler", true, "?");
+ }
showModalBottomSheet(context: context, builder: (context) => Column(
children: [
diff --git a/lib/view/pages/timetable/timetable.dart b/lib/view/pages/timetable/timetable.dart
index 9fa7e08..58053be 100644
--- a/lib/view/pages/timetable/timetable.dart
+++ b/lib/view/pages/timetable/timetable.dart
@@ -200,14 +200,14 @@ class _TimetableState extends State {
notes: element.activityType,
color: _getEventColor(element.code, startTime, endTime),
);
- } on Error catch(e) {
- log(e.toString());
+ } catch(e) {
return Appointment(
+ id: element,
startTime: _parseWebuntisTimestamp(element.date, element.startTime),
endTime: _parseWebuntisTimestamp(element.date, element.endTime),
- subject: "ERROR",
+ subject: "Fehler",
notes: element.info,
- location: 'LOCATION',
+ location: 'Lesefehler',
color: Theme.of(context).primaryColor,
startTimeZone: '',
endTimeZone: '',
diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc
index 7299b5c..f6f23bf 100644
--- a/linux/flutter/generated_plugin_registrant.cc
+++ b/linux/flutter/generated_plugin_registrant.cc
@@ -6,13 +6,9 @@
#include "generated_plugin_registrant.h"
-#include
#include
void fl_register_plugins(FlPluginRegistry* registry) {
- g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
- fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
- file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake
index 786ff5c..f16b4c3 100644
--- a/linux/flutter/generated_plugins.cmake
+++ b/linux/flutter/generated_plugins.cmake
@@ -3,7 +3,6 @@
#
list(APPEND FLUTTER_PLUGIN_LIST
- file_selector_linux
url_launcher_linux
)
diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift
index 9d5f78f..7026e66 100644
--- a/macos/Flutter/GeneratedPluginRegistrant.swift
+++ b/macos/Flutter/GeneratedPluginRegistrant.swift
@@ -6,7 +6,6 @@ import FlutterMacOS
import Foundation
import device_info_plus
-import file_selector_macos
import package_info
import path_provider_foundation
import shared_preferences_foundation
@@ -16,7 +15,6 @@ import url_launcher_macos
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
- FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin"))
FLTPackageInfoPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc
index 779f0ee..9871f6b 100644
--- a/windows/flutter/generated_plugin_registrant.cc
+++ b/windows/flutter/generated_plugin_registrant.cc
@@ -6,13 +6,10 @@
#include "generated_plugin_registrant.h"
-#include
#include
#include
void RegisterPlugins(flutter::PluginRegistry* registry) {
- FileSelectorWindowsRegisterWithRegistrar(
- registry->GetRegistrarForPlugin("FileSelectorWindows"));
SyncfusionPdfviewerWindowsPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("SyncfusionPdfviewerWindowsPlugin"));
UrlLauncherWindowsRegisterWithRegistrar(
diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake
index 3757972..2487723 100644
--- a/windows/flutter/generated_plugins.cmake
+++ b/windows/flutter/generated_plugins.cmake
@@ -3,7 +3,6 @@
#
list(APPEND FLUTTER_PLUGIN_LIST
- file_selector_windows
syncfusion_pdfviewer_windows
url_launcher_windows
)