intranet.vue 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <template>
  2. <LayoutContainer>
  3. <h3>{{ $t("parameters_intranet_page")}}</h3>
  4. <UiLoadingPanel v-if="pending" />
  5. <UiForm
  6. v-else
  7. v-model="parameters"
  8. >
  9. <v-row>
  10. <v-col cols="12">
  11. <h3>{{ $t('teachers')}}</h3>
  12. <UiInputCheckbox
  13. v-model="parameters.createCourse"
  14. field="createCourse"
  15. label="allow_teachers_to_create_courses"
  16. />
  17. <UiInputCheckbox
  18. v-model="parameters.consultTeacherListing"
  19. field="consultTeacherListing"
  20. label="allow_teachers_to_consult_colleagues_informations"
  21. />
  22. <UiInputCheckbox
  23. v-model="parameters.consultPedagogicResult"
  24. field="showAdherentList"
  25. label="allow_students_to_consult_their_pedagogical_followup"
  26. />
  27. <UiInputCheckbox
  28. v-model="parameters.generateAttendanceReport"
  29. field="generateAttendanceReport"
  30. label="allow_teachers_to_generate_attendance_reports"
  31. />
  32. <h3>{{ $t('pupils-members')}}</h3>
  33. <UiInputCheckbox
  34. v-model="parameters.administrationCc"
  35. field="administrationCc"
  36. label="send_teachers_mail_reports_copy_to_administration"
  37. />
  38. <UiInputCheckbox
  39. v-model="parameters.allowMembersToChangeGivenNameAndName"
  40. field="allowMembersToChangeGivenNameAndName"
  41. label="allow_members_to_change_their_names_and_firstnames"
  42. />
  43. </v-col>
  44. </v-row>
  45. </UiForm>
  46. </LayoutContainer>
  47. </template>
  48. <script setup lang="ts">
  49. import type { AsyncData } from '#app'
  50. import Parameters from '~/models/Organization/Parameters'
  51. import { useEntityFetch } from '~/composables/data/useEntityFetch'
  52. import { useOrganizationProfileStore } from '~/stores/organizationProfile'
  53. definePageMeta({
  54. name: 'parameters_intranet_page',
  55. })
  56. const { fetch } = useEntityFetch()
  57. const organizationProfile = useOrganizationProfileStore()
  58. if (organizationProfile.parametersId === null) {
  59. throw new Error('Missing organization parameters id')
  60. }
  61. const { data: parameters, pending } = fetch(
  62. Parameters,
  63. organizationProfile.parametersId,
  64. ) as AsyncData<Parameters, Parameters | true>
  65. </script>
  66. <style scoped lang="scss"></style>