intranet.vue 2.3 KB

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