Browse Source

finalize dateRangeTiming behavior

Olivier Massot 2 năm trước cách đây
mục cha
commit
d8c025d46e

+ 8 - 8
components/Layout/SubHeader/DataTimingRange.vue

@@ -46,7 +46,7 @@ const accessProfileStore = useAccessProfileStore()
 const { em } = useEntityManager()
 
 const start = accessProfileStore.historical.dateStart
-const end = accessProfileStore.historical.dateStart
+const end = accessProfileStore.historical.dateEnd
 
 const datesRange: Ref<Array<Date> | null> = ref((start && end) ? [new Date(start), new Date(end)] : null)
 
@@ -57,14 +57,14 @@ const updateDateTimeRange = async (dates: Array<Date>): Promise<any> => {
 
   datesRange.value = dates
 
-  if (datesRange.value === null || datesRange.value[0] === null || datesRange.value[1] === null) {
-    return
+  if (datesRange.value !== null && datesRange.value[0] !== null && datesRange.value[1] !== null) {
+    accessProfileStore.setHistoricalRange(
+        DateUtils.formatIsoShortDate(datesRange.value[0]),
+        DateUtils.formatIsoShortDate(datesRange.value[1])
+    )
+  } else {
+    accessProfileStore.setHistorical(false, true, false)
   }
-
-  accessProfileStore.setHistoricalRange(
-      DateUtils.formatIsoShortDate(datesRange.value[0]),
-      DateUtils.formatIsoShortDate(datesRange.value[1])
-  )
   setDirty(false)
 
   await em.patch(

+ 14 - 5
components/Layout/Subheader.vue

@@ -23,8 +23,16 @@ Contient entre autres le breadcrumb, les commandes de changement d'année et les
         <LayoutSubHeaderActivityYear v-if="smAndUp && !showDateTimeRange" class="activity-year" />
 
         <div v-if="hasMenuOrIsTeacher" class="d-flex flex-row">
-          <LayoutSubHeaderDataTiming v-if="smAndUp && !showDateTimeRange" class="data-timing ml-2" />
-          <LayoutSubHeaderDataTimingRange v-if="smAndUp" class="data-timing-range ml-n1" @showDateTimeRange="showDateTimeRange=$event" />
+          <LayoutSubHeaderDataTiming
+              v-if="smAndUp && !showDateTimeRange"
+              class="data-timing ml-2"
+          />
+
+          <LayoutSubHeaderDataTimingRange
+              v-if="smAndUp"
+              class="data-timing-range ml-n1"
+              @showDateTimeRange="showDateTimeRange=$event"
+          />
           <LayoutSubHeaderPersonnalizedList class="personalized-list ml-2 d-flex align-center" />
         </div>
       </v-card>
@@ -33,7 +41,6 @@ Contient entre autres le breadcrumb, les commandes de changement d'année et les
 </template>
 
 <script setup lang="ts">
-
     import {useAccessProfileStore} from "~/stores/accessProfile";
     import {computed, ComputedRef, ref, Ref} from "@vue/reactivity";
     import {useMenu} from "~/composables/layout/useMenu";
@@ -47,8 +54,10 @@ Contient entre autres le breadcrumb, les commandes de changement d'année et les
         () => hasMenu('Main') || (accessProfile.isTeacher ?? false)
     )
 
-    const showDateTimeRange: Ref<boolean> = ref(false)
-
+    const showDateTimeRange: Ref<boolean> = ref(
+        accessProfile.historical.dateStart !== null &&
+        accessProfile.historical.dateEnd !== null
+    )
 </script>
 
 <style scoped lang="scss">