OnlineRegistration.vue 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <!--
  2. Barre d'alerte sur l'ouverture ou non de l'inscription en ligne
  3. -->
  4. <template>
  5. <UiSystemBar
  6. v-if="show"
  7. :text="$t(message)"
  8. icon="fas fa-id-card"
  9. class="theme-secondary-alt"
  10. />
  11. </template>
  12. <script setup lang="ts">
  13. import {useEntityFetch} from "~/composables/data/useEntityFetch";
  14. import {useAccessProfileStore} from "~/stores/accessProfile";
  15. import RegistrationAvailability from "~/models/OnlineRegistration/RegistrationAvailability";
  16. import {ComputedRef} from "@vue/reactivity";
  17. const { fetch } = useEntityFetch()
  18. const accessProfile = useAccessProfileStore()
  19. const { data: registrationAvailability, pending } = fetch(RegistrationAvailability, accessProfile.id ?? 0)
  20. const show: ComputedRef<boolean> = computed(() => {
  21. return !pending && (registrationAvailability.value as RegistrationAvailability).available
  22. })
  23. const message: ComputedRef<string> = computed(() => {
  24. return (registrationAvailability.value as RegistrationAvailability).message
  25. })
  26. </script>
  27. <style scoped lang="scss">
  28. </style>