From fbffc0cf4ae0befea57c35db2a200fcd06792b4a Mon Sep 17 00:00:00 2001 From: Brandon Presley Date: Thu, 30 Nov 2023 13:01:42 +1300 Subject: [PATCH] Refactor slightly edit_plan --- lib/edit_plan.dart | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/edit_plan.dart b/lib/edit_plan.dart index 71f6f58..0207b5e 100644 --- a/lib/edit_plan.dart +++ b/lib/edit_plan.dart @@ -3,6 +3,7 @@ import 'package:flutter/material.dart' as material; import 'package:fmassive/constants.dart'; import 'package:fmassive/database.dart'; import 'package:fmassive/main.dart'; +import 'package:fmassive/start_plan.dart'; import 'package:moor_flutter/moor_flutter.dart'; class EditPlanPage extends StatefulWidget { @@ -15,7 +16,6 @@ class EditPlanPage extends StatefulWidget { } class _EditPlanPageState extends State { - late PlansCompanion plan; List names = []; List? daySelections; List? exerciseSelections; @@ -41,8 +41,6 @@ class _EditPlanPageState extends State { names.map((name) => exercises.contains(name)).toList(); }); }); - - plan = widget.plan; } @override @@ -113,14 +111,17 @@ class _EditPlanPageState extends State { if (exerciseSelections![i]) exercises.add(names[i]); } - final newPlan = plan.copyWith( + var newPlan = widget.plan.copyWith( days: Value(days.join(',')), exercises: Value(exercises.join(','))); - if (plan.id.present) + if (widget.plan.id.present) await db.update(db.plans).replace(newPlan); - else - await db.into(db.plans).insert(newPlan); + else { + final id = await db.into(db.plans).insert(newPlan); + newPlan = newPlan.copyWith(id: Value(id)); + } + if (!mounted) return; Navigator.pop(context); },