From 0face6f98f699dada8967cd71f7fa30746824e5c Mon Sep 17 00:00:00 2001 From: Michael Bauer <michael-bauer@posteo.de> Date: Fri, 11 Oct 2024 14:16:23 +0200 Subject: [PATCH] Implement time-field --- .../frontend/components/Substitutions.vue | 16 ++++++++++++++++ aleksis/apps/chronos/schema/__init__.py | 8 ++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/aleksis/apps/chronos/frontend/components/Substitutions.vue b/aleksis/apps/chronos/frontend/components/Substitutions.vue index 3a668efa..23c74f20 100644 --- a/aleksis/apps/chronos/frontend/components/Substitutions.vue +++ b/aleksis/apps/chronos/frontend/components/Substitutions.vue @@ -23,6 +23,22 @@ import CRUDList from "aleksis.core/components/generic/CRUDList.vue"; v-for="g in oldGroups" > {{ g.shortName }} </span> </template> + <template #time="{ item: { startSlot, endSlot, startTime, endTime } }"> + <span v-if="startSlot && endSlot && startSlot === endSlot"> + {{ startSlot }}. + </span> + <span v-else-if="startSlot && endSlot"> + {{ startSlot }}.–{{ endSlot }}. + </span> + <span v-else-if="startTime && endTime"> + {{ $d(new Date(startTime), "shortTime") }} + – + {{ $d(new Date(endTime), "shortTime")}} + </span> + <span v-else> + TODO 18n all day + </span> + </template> </c-r-u-d-list> </template> diff --git a/aleksis/apps/chronos/schema/__init__.py b/aleksis/apps/chronos/schema/__init__.py index a71ba824..2bda915e 100644 --- a/aleksis/apps/chronos/schema/__init__.py +++ b/aleksis/apps/chronos/schema/__init__.py @@ -132,8 +132,8 @@ class SubstitutionType(graphene.ObjectType): new_groups = graphene.List(GroupType) start_slot = graphene.Int() end_slot = graphene.Int() - start_time = graphene.Time() - end_time = graphene.Time() + start_time = graphene.DateTime() + end_time = graphene.DateTime() old_teachers = graphene.List(PersonType) new_teachers = graphene.List(PersonType) old_subject = graphene.String() @@ -163,10 +163,10 @@ class SubstitutionType(graphene.ObjectType): return root['REFERENCE_OBJECT'].slot_number_end def resolve_start_time(root, info): - return root['DTSTART'].dt.time() + return root['DTSTART'].dt def resolve_end_time(root, info): - return root['DTEND'].dt.time() + return root['DTEND'].dt def resolve_old_teachers(root,info): le = root['REFERENCE_OBJECT'] -- GitLab