Refactor slightly edit_plan

This commit is contained in:
Brandon Presley 2023-11-30 13:01:42 +13:00
parent 19f9dd9b3b
commit fbffc0cf4a
1 changed files with 8 additions and 7 deletions

View File

@ -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<EditPlanPage> {
late PlansCompanion plan;
List<String?> names = [];
List<bool>? daySelections;
List<bool>? exerciseSelections;
@ -41,8 +41,6 @@ class _EditPlanPageState extends State<EditPlanPage> {
names.map((name) => exercises.contains(name)).toList();
});
});
plan = widget.plan;
}
@override
@ -113,14 +111,17 @@ class _EditPlanPageState extends State<EditPlanPage> {
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);
},