diff --git a/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionCard.vue b/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionCard.vue index 7948763a43e9005faa8db85a55721789a5574e8f..7f9d9eeaca3460294984a9a1dae2cb1e4596ee15 100644 --- a/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionCard.vue +++ b/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionCard.vue @@ -256,7 +256,7 @@ export default { cached[index].id = cached[index].oldId; cached[index].oldId = null; } else { - this.$emit("delete"); + this.$emit("delete", cached[index].datetimeStart); } } return cached; @@ -317,7 +317,6 @@ export default { this.comment = null; this.cancelled = null; } else if (!this.substitution.id.startsWith("DUMMY")) { - // FIXME: this makes deleted substitutions disappear temporarily – which is easy to resolve in case they still have an oldId but probably requires a refetch of the respective day when existing substitutions that were fetched are deleted to regain the dummy ID. this.delete([this.substitution]); } }, diff --git a/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionOverview.vue b/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionOverview.vue index 1adc330d7548daf51aebeef075c99d3f83809a49..16a36deafc4250ce5780cfd99353aa46cc490658 100644 --- a/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionOverview.vue +++ b/aleksis/apps/chronos/frontend/components/substitutions/SubstitutionOverview.vue @@ -11,6 +11,8 @@ import { gqlGroups, gqlTeachers, } from "../amendLesson.graphql"; + +import { DateTime } from "luxon"; </script> <template> @@ -95,6 +97,7 @@ import { :is-create="false" :gql-patch-mutation="gqlPatchMutation" :gql-delete-mutation="gqlDeleteMutation" + @delete="handleDelete" /> </template> @@ -155,6 +158,9 @@ export default { }); this.$refs.iterator.resetDate(); }, + handleDelete(datetime) { + this.$refs.iterator.refetchDay(DateTime.fromISO(datetime).toISODate()); + }, }, computed: { gqlQueryArgs() {