access.ts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. import {$roleUtils} from '~/services/rights/roleUtils'
  2. import {AbilitiesType, accessState} from "~/types/types";
  3. export const state = () => ({
  4. bearer: null,
  5. name: null,
  6. givenName: null,
  7. accessId: null,
  8. roles: [],
  9. abilities: [],
  10. isAdmin: false,
  11. isAdministratifManager: false,
  12. isPedagogicManager: false,
  13. isFinancialManager: false,
  14. isCaMember: false,
  15. isStudent: false,
  16. isTeacher: false,
  17. isMember: false,
  18. isOther: false,
  19. hasLateralMenu: true,
  20. hasConfigurationMenu: true,
  21. hasAccessesMenu: true,
  22. hasFamilyMenu: true
  23. })
  24. export const mutations = {
  25. setBearer(state:accessState, bearer:string){
  26. state.bearer = bearer
  27. },
  28. setAccessId(state:accessState, accessId:number){
  29. state.accessId = accessId
  30. },
  31. setName(state:accessState, name:string){
  32. state.name = name
  33. },
  34. setGivenName(state:accessState, givenName:string){
  35. state.givenName = givenName
  36. },
  37. setRoles(state:accessState, roles:Array<string>){
  38. state.roles = roles
  39. },
  40. setAbilities(state:accessState, abilities:Array<AbilitiesType>){
  41. state.abilities = abilities
  42. },
  43. setIsAdminAccess(state:accessState, isAdminAccess:boolean){
  44. state.isAdminAccess = isAdminAccess
  45. },
  46. setIsAdmin(state:accessState, isRole:boolean){
  47. state.isAdmin = isRole
  48. },
  49. setIsAdministratifManager(state:accessState, isRole:boolean){
  50. state.isAdministratifManager = isRole
  51. },
  52. setIsPedagogicManager(state:accessState, isRole:boolean){
  53. state.isPedagogicManager = isRole
  54. },
  55. setIsFinancialManager(state:accessState, isRole:boolean){
  56. state.isFinancialManager = isRole
  57. },
  58. setIsCaMember(state:accessState, isRole:boolean){
  59. state.isCaMember = isRole
  60. },
  61. setIsStudent(state:accessState, isRole:boolean){
  62. state.isStudent = isRole
  63. },
  64. setIsTeacher(state:accessState, isRole:boolean){
  65. state.isTeacher = isRole
  66. },
  67. setIsMember(state:accessState, isRole:boolean){
  68. state.isMember = isRole
  69. },
  70. setIsOther(state:accessState, isRole:boolean){
  71. state.isOther = isRole
  72. },
  73. setHasLateralMenu(state:accessState, hasLateralMenu:boolean){
  74. state.hasLateralMenu = hasLateralMenu
  75. },
  76. setHasConfigurationMenu(state:accessState, hasConfigurationMenu:boolean){
  77. state.hasConfigurationMenu = hasConfigurationMenu
  78. },
  79. setHasAccessesMenu(state:accessState, hasAccessesMenu:boolean){
  80. state.hasAccessesMenu = hasAccessesMenu
  81. },
  82. setHasFamilyMenu(state:accessState, hasFamilyMenu:boolean){
  83. state.hasFamilyMenu = hasFamilyMenu
  84. }
  85. }
  86. export const actions = {
  87. setProfile(context:any, profile:any){
  88. let roles_to_array:Array<string> = Object.values(profile.roles)
  89. context.commit('setName', profile.name)
  90. context.commit('setGivenName', profile.givenName)
  91. context.commit('setIsAdminAccess', profile.isAdminAccess)
  92. context.commit('setIsAdmin', $roleUtils.isA('ADMIN', roles_to_array))
  93. context.commit('setIsAdministratifManager', $roleUtils.isA('ADMINISTRATIF_MANAGER', roles_to_array))
  94. context.commit('setIsPedagogicManager', $roleUtils.isA('PEDAGOGICS_MANAGER', roles_to_array))
  95. context.commit('setIsFinancialManager', $roleUtils.isA('FINANCIAL_MANAGER', roles_to_array))
  96. context.commit('setIsCaMember', $roleUtils.isA('CA', roles_to_array))
  97. context.commit('setIsStudent', $roleUtils.isA('STUDENT', roles_to_array))
  98. context.commit('setIsTeacher', $roleUtils.isA('TEACHER', roles_to_array))
  99. context.commit('setIsMember', $roleUtils.isA('MEMBER', roles_to_array))
  100. context.commit('setIsOther', $roleUtils.isA('OTHER', roles_to_array))
  101. context.commit('setRoles', $roleUtils.filterFunctionRoles(roles_to_array))
  102. //Time to set Oganization Profile
  103. context.dispatch('profile/organization/setProfile', profile.organization, {root:true})
  104. },
  105. }