intranet.vue 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <template>
  2. <LayoutContainer>
  3. <h3 class="my-8">{{ $t("parameters_intranet_page")}}</h3>
  4. <v-card class="parameters-page-card">
  5. <UiLoadingPanel v-if="pending" />
  6. <UiForm
  7. v-else
  8. v-model="parameters"
  9. >
  10. <v-row>
  11. <v-col cols="12">
  12. <h3 class="mb-4">{{ $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 class="mt-3 mb-4">{{ $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. </v-card>
  48. </LayoutContainer>
  49. </template>
  50. <script setup lang="ts">
  51. import type { AsyncData } from '#app'
  52. import Parameters from '~/models/Organization/Parameters'
  53. import { useEntityFetch } from '~/composables/data/useEntityFetch'
  54. import { useOrganizationProfileStore } from '~/stores/organizationProfile'
  55. definePageMeta({
  56. name: 'parameters_intranet_page',
  57. })
  58. const { fetch } = useEntityFetch()
  59. const organizationProfile = useOrganizationProfileStore()
  60. if (organizationProfile.parametersId === null) {
  61. throw new Error('Missing organization parameters id')
  62. }
  63. const { data: parameters, pending } = fetch(
  64. Parameters,
  65. organizationProfile.parametersId,
  66. ) as AsyncData<Parameters, Parameters | true>
  67. </script>
  68. <style scoped lang="scss"></style>