general_parameters.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <template>
  2. <LayoutContainer>
  3. <UiLoadingPanel v-if="pending" />
  4. <UiForm
  5. v-else
  6. :model="Parameters"
  7. :entity="parameters"
  8. action-position="bottom"
  9. >
  10. <v-row>
  11. <v-col cols="12">
  12. <UiInputDatePicker
  13. v-if="organizationProfile.isSchool"
  14. v-model="parameters.financialDate"
  15. field="financialDate"
  16. label="start_date_of_financial_season"
  17. position="left"
  18. class="my-2"
  19. />
  20. <UiInputDatePicker
  21. v-if="organizationProfile.isSchool"
  22. v-model="parameters.startCourseDate"
  23. field="startCourseDate"
  24. label="start_date_of_courses"
  25. position="left"
  26. class="my-2"
  27. />
  28. <UiInputCheckbox
  29. v-model="parameters.showAdherentList"
  30. field="showAdherentList"
  31. label="show_adherents_list_and_their_coordinates"
  32. />
  33. <UiInputAutocompleteWithEnum
  34. v-model="parameters.timezone"
  35. enum-name="timezone"
  36. field="timezone"
  37. variant="underlined"
  38. />
  39. <UiInputDatePicker
  40. v-if="organizationProfile.isSchool"
  41. v-model="parameters.musicalDate"
  42. field="musicalDate"
  43. label="start_date_of_activity_season"
  44. position="left"
  45. class="my-2"
  46. />
  47. <UiInputDatePicker
  48. v-if="organizationProfile.isSchool"
  49. v-model="parameters.endCourseDate"
  50. field="endCourseDate"
  51. label="end_date_of_courses"
  52. position="left"
  53. class="my-2"
  54. />
  55. <UiInputCheckbox
  56. v-if="
  57. organizationProfile.isSchool && organizationProfile.isAssociation
  58. "
  59. v-model="parameters.studentsAreAdherents"
  60. field="studentsAreAdherents"
  61. label="students_are_also_association_members"
  62. />
  63. <div
  64. v-if="organizationProfile.isCMFCentralService"
  65. class="d-flex flex-column"
  66. >
  67. <span class="mb-1 v-label" style="font-size: 12px"
  68. >{{ $t('qrCode') }}
  69. </span>
  70. <UiInputImage
  71. v-model="parameters.qrCode"
  72. field="qrCode"
  73. label="licenceQrCode"
  74. :width="120"
  75. />
  76. </div>
  77. </v-col>
  78. </v-row>
  79. </UiForm>
  80. </LayoutContainer>
  81. </template>
  82. <script setup lang="ts">
  83. import type { AsyncData } from '#app'
  84. import Parameters from '~/models/Organization/Parameters'
  85. import { useEntityFetch } from '~/composables/data/useEntityFetch'
  86. import { useOrganizationProfileStore } from '~/stores/organizationProfile'
  87. const { fetch } = useEntityFetch()
  88. const organizationProfile = useOrganizationProfileStore()
  89. if (organizationProfile.parametersId === null) {
  90. throw new Error('Missing organization parameters id')
  91. }
  92. const { data: parameters, pending } = fetch(
  93. Parameters,
  94. organizationProfile.parametersId,
  95. ) as AsyncData<Parameters, Parameters | true>
  96. </script>
  97. <style scoped lang="scss"></style>