fix(IstruttoriaQueue): toggle manager view non compariva mai per bug store
Due bug correlati risolti:
1. userRole era sempre null. Il codice usava storeGet('getUser') che non esiste
nel selectors (sono solo getToken, getRole, getPermissions). Sostituito con
storeGet('getRole') che ritorna userData.role.roleType.
Effetto: canUseManagerView e sempre false, toggle manager mai visibile,
il capo istruttore vede solo 'Nessuna pratica in coda'.
2. managerMode partiva a false anche per manager e superadmin. Ora default
true per ROLE_INSTRUCTOR_MANAGER e ROLE_SUPER_ADMIN: partono in vista
'tutte le pratiche' con possibilita riassegnare.
Rimosso anche import useMemo non piu usato.
Segnalazione Carlo: 'qualcosa non quadra nel profilo del capoistruttore'.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import React, { useEffect, useState, useRef, useMemo } from 'react';
|
||||
import React, { useEffect, useState, useRef } from 'react';
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
|
||||
@@ -32,17 +32,22 @@ const IstruttoriaQueue = () => {
|
||||
const [loading, setLoading] = useState(true);
|
||||
|
||||
// v2 manager view
|
||||
const [managerMode, setManagerMode] = useState(false); // toggle UI
|
||||
// Default: manager/superadmin partono in vista 'tutte le pratiche' (managerMode=true).
|
||||
// Pre-instructor vedono solo la coda attiva (managerMode=false).
|
||||
const [managerMode, setManagerMode] = useState(
|
||||
storeGet('getRole') === 'ROLE_INSTRUCTOR_MANAGER' ||
|
||||
storeGet('getRole') === 'ROLE_SUPER_ADMIN'
|
||||
); // toggle UI
|
||||
const [managerItems, setManagerItems] = useState([]);
|
||||
const [instructors, setInstructors] = useState([]);
|
||||
const [reassignDialog, setReassignDialog] = useState({ visible: false, practice: null, newInstructorId: null, reason: '' });
|
||||
const [reassigning, setReassigning] = useState(false);
|
||||
|
||||
// Controllo ruolo utente per mostrare toggle manager
|
||||
const userRole = useMemo(() => {
|
||||
const user = storeGet('getUser');
|
||||
return user?.authorities?.[0] || user?.role || null;
|
||||
}, []);
|
||||
// Controllo ruolo utente per mostrare toggle manager.
|
||||
// storeGet('getRole') ritorna userData.role.roleType (es. ROLE_INSTRUCTOR_MANAGER).
|
||||
// Fix: il codice precedente usava storeGet('getUser') che non esiste nel selectors,
|
||||
// quindi canUseManagerView era sempre false e il toggle non compariva mai.
|
||||
const userRole = storeGet('getRole');
|
||||
const canUseManagerView = userRole === 'ROLE_INSTRUCTOR_MANAGER' || userRole === 'ROLE_SUPER_ADMIN';
|
||||
|
||||
const loadQueue = () => {
|
||||
|
||||
Reference in New Issue
Block a user