| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186 |
- import {$roleUtils} from '~/services/rights/roleUtils'
- import {AbilitiesType, accessState, baseAccessState, baseOrganizationState} from "~/types/interfaces";
- import * as _ from "lodash";
- import {GENDER} from "~/types/enums";
- export const state = () => ({
- bearer: null,
- id: null,
- switchId: null,
- name: null,
- givenName: null,
- gender: null,
- avatarId: null,
- activityYear: null,
- roles: [],
- abilities: [],
- isAdmin: false,
- isAdministratifManager: false,
- isPedagogicManager: false,
- isFinancialManager: false,
- isCaMember: false,
- isStudent: false,
- isTeacher: false,
- isMember: false,
- isOther: false,
- hasLateralMenu: false,
- hasConfigurationMenu: false,
- hasAccessesMenu: false,
- hasFamilyMenu: false,
- multiAccesses: [],
- familyAccesses: [],
- originalAccess: null,
- })
- export const mutations = {
- setBearer(state:accessState, bearer:string){
- state.bearer = bearer
- },
- setId(state:accessState, id:number){
- state.id = id
- },
- setSwitchId(state:accessState, switchId:number){
- state.switchId = switchId
- },
- setName(state:accessState, name:string){
- state.name = name
- },
- setGivenName(state:accessState, givenName:string){
- state.givenName = givenName
- },
- setGender(state:accessState, gender:GENDER){
- state.gender = gender
- },
- setAvatarId(state:accessState, avatarId:number){
- state.avatarId = avatarId
- },
- setActivityYear(state:accessState, activityYear:number){
- state.activityYear = activityYear
- },
- setRoles(state:accessState, roles:Array<string>){
- state.roles = roles
- },
- setAbilities(state:accessState, abilities:Array<AbilitiesType>){
- 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
- },
- addMultiAccess(state:accessState, access:baseOrganizationState) {
- state.multiAccesses.push(access)
- },
- addFamilyAccess(state:accessState, access:baseAccessState) {
- state.familyAccesses.push(access)
- },
- setOriginalAccess(state:accessState, access:baseAccessState) {
- state.originalAccess = access
- }
- }
- export const actions = {
- setProfile(context:any, profile:any){
- let roles_to_array:Array<string> = Object.values(profile.roles)
- context.commit('setName', profile.name)
- context.commit('setGivenName', profile.givenName)
- context.commit('setGender', profile.gender)
- context.commit('setAvatarId', profile.avatarId)
- context.commit('setActivityYear', profile.activityYear)
- 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))
- context.commit('setIsAdminAccess', profile.isAdminAccess)
- //Time to set Multi Accesses
- context.dispatch('setMultiAccesses', profile.multiAccesses)
- //Time to set Family Accesses
- context.dispatch('setFamilyAccesses', profile.familyAccesses)
- //Time to add the original Access (switch User case)
- context.dispatch('setOriginalAccess', profile.originalAccess)
- //Time to set Oganization Profile
- context.dispatch('profile/organization/setProfile', profile.organization, {root:true})
- },
- setMultiAccesses(context:any, accesses:any){
- _.each(accesses, organization => {
- const o:baseOrganizationState = {
- id: organization.id,
- name: organization.name,
- }
- context.commit('addMultiAccess', o)
- });
- },
- setFamilyAccesses(context:any, accesses:any){
- _.each(accesses, access => {
- const a:baseAccessState = {
- id: access.id,
- name: access.name,
- givenName: access.givenName,
- gender: access.gender,
- avatarId: access.avatarId,
- }
- context.commit('addFamilyAccess', a)
- });
- },
- setOriginalAccess(context:any, access: any) {
- if(access){
- const originalAccess:baseAccessState = {
- id:access.id,
- name:access.name,
- givenName:access.givenName,
- gender:access.gender,
- avatarId:access.avatarId
- }
- context.commit('setOriginalAccess', originalAccess)
- }
- }
- }
|