import {$roleUtils} from '~/services/rights/roleUtils' import {AbilitiesType, accessState} from "~/types/types"; export const state = () => ({ bearer: null, name: null, givenName: null, accessId: null, roles: [], abilities: [], isAdmin: false, isAdministratifManager: false, isPedagogicManager: false, isFinancialManager: false, isCaMember: false, isStudent: false, isTeacher: false, isMember: false, isOther: false, hasLateralMenu: true, hasConfigurationMenu: true, hasAccessesMenu: true, hasFamilyMenu: true }) export const mutations = { setBearer(state:accessState, bearer:string){ state.bearer = bearer }, setAccessId(state:accessState, accessId:number){ state.accessId = accessId }, setName(state:accessState, name:string){ state.name = name }, setGivenName(state:accessState, givenName:string){ state.givenName = givenName }, setRoles(state:accessState, roles:Array){ state.roles = roles }, setAbilities(state:accessState, abilities:Array){ state.abilities = abilities }, setIsAdminAccess(state:accessState, isAdminAccess:boolean){ state.isAdminAccess = isAdminAccess }, setIsAdmin(state:accessState, isRole:boolean){ state.isAdmin = isRole }, setIsAdministratifManager(state:accessState, isRole:boolean){ state.isAdministratifManager = isRole }, setIsPedagogicManager(state:accessState, isRole:boolean){ state.isPedagogicManager = isRole }, setIsFinancialManager(state:accessState, isRole:boolean){ state.isFinancialManager = isRole }, setIsCaMember(state:accessState, isRole:boolean){ state.isCaMember = isRole }, setIsStudent(state:accessState, isRole:boolean){ state.isStudent = isRole }, setIsTeacher(state:accessState, isRole:boolean){ state.isTeacher = isRole }, setIsMember(state:accessState, isRole:boolean){ state.isMember = isRole }, setIsOther(state:accessState, isRole:boolean){ state.isOther = isRole }, setHasLateralMenu(state:accessState, hasLateralMenu:boolean){ state.hasLateralMenu = hasLateralMenu }, setHasConfigurationMenu(state:accessState, hasConfigurationMenu:boolean){ state.hasConfigurationMenu = hasConfigurationMenu }, setHasAccessesMenu(state:accessState, hasAccessesMenu:boolean){ state.hasAccessesMenu = hasAccessesMenu }, setHasFamilyMenu(state:accessState, hasFamilyMenu:boolean){ state.hasFamilyMenu = hasFamilyMenu } } export const actions = { setProfile(context:any, profile:any){ let roles_to_array:Array = Object.values(profile.roles) context.commit('setName', profile.name) context.commit('setGivenName', profile.givenName) context.commit('setIsAdminAccess', profile.isAdminAccess) context.commit('setIsAdmin', $roleUtils.isA('ADMIN', roles_to_array)) context.commit('setIsAdministratifManager', $roleUtils.isA('ADMINISTRATIF_MANAGER', roles_to_array)) context.commit('setIsPedagogicManager', $roleUtils.isA('PEDAGOGICS_MANAGER', roles_to_array)) context.commit('setIsFinancialManager', $roleUtils.isA('FINANCIAL_MANAGER', roles_to_array)) context.commit('setIsCaMember', $roleUtils.isA('CA', roles_to_array)) context.commit('setIsStudent', $roleUtils.isA('STUDENT', roles_to_array)) context.commit('setIsTeacher', $roleUtils.isA('TEACHER', roles_to_array)) context.commit('setIsMember', $roleUtils.isA('MEMBER', roles_to_array)) context.commit('setIsOther', $roleUtils.isA('OTHER', roles_to_array)) context.commit('setRoles', $roleUtils.filterFunctionRoles(roles_to_array)) //Time to set Oganization Profile context.dispatch('profile/organization/setProfile', profile.organization, {root:true}) }, }