intranet.vue 2.2 KB

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