File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -683,8 +683,11 @@ class SemesterSelectionButtonState extends State<SemesterSelectionButton> {
683683 }
684684 SettingsProvider .getInstance ().semesterStartDates =
685685 semesterBundle.startDates;
686- SettingsProvider .getInstance ().thisSemesterStartDate =
687- semesterBundle.startDates.parseStartDate (chosenSemester);
686+ semesterBundle.startDates
687+ .parseStartDate (chosenSemester)
688+ ? .apply (
689+ (sd) => SettingsProvider .getInstance ().thisSemesterStartDate = sd,
690+ );
688691 }
689692
690693 @override
Original file line number Diff line number Diff line change @@ -179,7 +179,11 @@ class SettingsProvider with ChangeNotifier {
179179 }
180180
181181 set timetableSemester (String ? value) {
182- preferences! .setString (KEY_TIMETABLE_SEMESTER , value! );
182+ if (value != null ) {
183+ preferences! .setString (KEY_TIMETABLE_SEMESTER , value);
184+ } else {
185+ preferences! .remove (KEY_TIMETABLE_SEMESTER );
186+ }
183187 notifyListeners ();
184188 }
185189
@@ -356,7 +360,11 @@ class SettingsProvider with ChangeNotifier {
356360 }
357361
358362 set thisSemesterStartDate (String ? value) {
359- preferences! .setString (KEY_THIS_SEMESTER_START_DATE , value! );
363+ if (value != null ) {
364+ preferences! .setString (KEY_THIS_SEMESTER_START_DATE , value);
365+ } else {
366+ preferences! .remove (KEY_THIS_SEMESTER_START_DATE );
367+ }
360368 notifyListeners ();
361369 }
362370
@@ -369,7 +377,11 @@ class SettingsProvider with ChangeNotifier {
369377 }
370378
371379 set semesterStartDates (SemesterStartDates ? value) {
372- preferences! .setString (KEY_SEMESTER_START_DATES , jsonEncode (value! ));
380+ if (value != null ) {
381+ preferences! .setString (KEY_SEMESTER_START_DATES , jsonEncode (value));
382+ } else {
383+ preferences! .remove (KEY_SEMESTER_START_DATES );
384+ }
373385 notifyListeners ();
374386 }
375387
Original file line number Diff line number Diff line change @@ -29,9 +29,6 @@ import 'package:flutter/widgets.dart';
2929import 'neo_login_tool.dart' ;
3030
3131class EduServiceRepository extends BaseRepositoryWithDio {
32- static const String COURSE_TABLE_URL =
33- 'https://fdjwgl.fudan.edu.cn/student/for-std/course-table' ;
34-
3532 static String getSemesterCourseTableUrl (String semesterId) =>
3633 'https://fdjwgl.fudan.edu.cn/student/for-std/course-table/semester/$semesterId /print-data' ;
3734
You can’t perform that action at this time.
0 commit comments