diff --git a/aleksis/apps/chronos/frontend/components/Substitutions.vue b/aleksis/apps/chronos/frontend/components/Substitutions.vue index 833a49bf78773604d5db8e7d1ff66ac5fae81112..550f3876262471e3ccb23933f662259e8b64f925 100644 --- a/aleksis/apps/chronos/frontend/components/Substitutions.vue +++ b/aleksis/apps/chronos/frontend/components/Substitutions.vue @@ -1,6 +1,7 @@ <script setup> import CRUDList from "aleksis.core/components/generic/CRUDList.vue"; import PrimaryActionButton from "aleksis.core/components/generic/buttons/PrimaryActionButton.vue"; +import DateSelectFooter from "aleksis.core/components/generic/DateSelectFooter.vue"; </script> <template> @@ -129,6 +130,15 @@ import PrimaryActionButton from "aleksis.core/components/generic/buttons/Primary </v-chip> {{ notes }} </template> + <template #footer> + <!-- TODO: Skip over unneeded days; eg. weekends. --> + <date-select-footer + :value="date" + @input="gotoDate" + @prev="gotoDate(DateTime.fromISO(date).minus({ days: 1 }).toISODate())" + @next="gotoDate(DateTime.fromISO(date).plus({ days: 1 }).toISODate())" + /> + </template> </c-r-u-d-list> </template> @@ -186,6 +196,14 @@ export default { itemColor(item) { return item.cancelled ? "green-text" : ""; }, + gotoDate(date) { + this.$router.push({ + name: "chronos.listSubstitutionsForDate", + params: { + date: date + }, + }); + }, }, }; </script>